Our experience and inquiries about Orthanc

Hello.

We have been testing Orthanc as a complete Pacs solution for our institution. At the moment, we have two instances of Orthanc running on a Postgres server and storing the studies in a Windows file system. We also have a replica of the database, in case the main one has a fault. We have to analyze having a replica of the File system, to have fault tolerance in all the services of the solution. This environment at the moment works correctly, taking studies of more than 40 teams of different modalities. The volume that is generated daily is quite high, without having at the moment problems to consult. But if we still have some things to analyze the way to obtain solutions.

  • Our file systems have a current capacity of 28TB. But eventually between 1 and 2 years, we will have it completely occupied. We could add storage and expand the volume in order to continue storing studies, but this would increase the complexity and risk of falling that volume. When analyzing that there is only one storage point in the json configuration file, we can not have studies in two different storages. In other systems, there is the possibility of adding different storages and cade studio stored in the Pacs, has an associated storage id, which allows you to go climbing in storage over time.
    We thought about using Postgres, which would allow us to scale in storage, but we prefer to save the studies at the File System level. Any recommendation or comment for this point is welcome.

  • While one expects all studies to take patient data from a worklist, sometimes this does not happen, or even the data in the patient’s system is not correct. In this situation we need to be able to modify some data, such as patient data, Accession number, etc. Is there any method to perform this task, via Api rest, Lua script or other means? I have not found it at the moment.

-We are facing the need to be able to save the impression that is currently generated during the study, in a server pacs, and then print on demand. I know there’s nothing about Orthanc at the moment. If anyone could recommend me a way to achieve this goal, I would appreciate it. We print both on paper, and on plates (I do not know the exact translation to English).
For the rest, we are very satisfied with the solution. Today we have a Pacs server, with automatic load balancing and fault tolerance, that we can not have with a commercial solution of several thousand dollars. We are in the process of learning the concept of the Lua scripts, to continue strengthening our solution.

  • We are analyzing visualizers, which allow printing and recording to CD. We are analyzing commercial and / or open source solutions. I am interested in any comments and recommendations that you can give us.

Quiero felicitar al equipo que ha desarrollado y mantenido esta solución. Esperamos en un futuro poder realizar nuestro aporte a la misma.

Dear Diego,

Thanks you very much for your testimonial!

I will only give a short answer, so that other members of the Orthanc community can react.

1- Regarding expanding the storage area while not using PostgreSQL, you could consider taking advantage of a distributed file system (such as Lustre):
https://en.wikipedia.org/wiki/Clustered_file_system#Distributed_file_systems

Thanks to the Orthanc SDK, it is also be possible to create “storage area plugins” that would enable Orthanc to store its DICOM files in a distributed object store (such as Ceph):
https://en.wikipedia.org/wiki/Distributed_data_store

Obviously, contributions are welcome to provide inputs about Lustre, Ceph, and other technologies.

2- Modification of studies/series/instances can be done with the REST API:
http://book.orthanc-server.com/users/anonymization.html

A split/merge feature is currently under active development by Osimis thanks to a great industrial sponsor.

3- Orthanc does not support printing through DICOM normalized operations:

https://www.medicalconnections.co.uk/kb/Basic-DICOM-Operations

However, you can send DICOM studies to any DICOM-enabled CD/DVD burner. Such burners can be configured like any DICOM modality.

The Osimis Web viewer can also be used to print images directly from the Web browser:
https://groups.google.com/d/msg/orthanc-users/PVftOhJaGzE/b2o9rWiwAQAJ

4- You can find some information about open-source viewers in the Orthanc Book:
http://book.orthanc-server.com/faq/viewers.html

HTH,
Sébastien-

Hi just for your information,
I made a Java app capable to send cd/DVD burning request to Epson and Primera disc producer robot.
The tool is based on orthanc.

See here https://github.com/salimkanoun/Orthanc_Tools/blob/master/Orthanc_Tools_Documentation.pdf

https://github.com/salimkanoun/Orthanc_Tools

Hi Diego

My proposal to your storage problem is that it generates several servers with Orthanc and distributes the information load of the medical equipment among them, in this way the storage capacity needed per server is lower and it would have more security with the information. In the reading stations you can install visualization programs such as RADIANT that allow to locate the same information in all the servers in the network and that you configure in the search option, this option makes it easier to have several smaller servers instead of a large server .

About the possibility of modifying the information stored in the servers, there is a contribution of Mr. Salim Kanoun that is excellent and very effective to make changes in the information stored in the servers with Orthanc, it is called ORTHANC TOOL and I commented that it works wonderfully.

I had a problem similar to yours (although I do not have 28tb of information) and the solution was to install 2 servers with Orthanc, distributed the sending of information of the medical equipment between the 2 servers (using as criteria the type of study that each equipment does ) and on the workstations install the RADIANT viewer to search for the same information between the 2 servers. This solution worked faster than when I had a single big server.

Being smaller the servers are cheaper, more secure because they have fewer hard drives installed and I can optimize the search from the station. In a server I store tomographies and in other studies of Rx, if I need to look for a study of Rx I do not have to look for the study between the tomographies that are heavy studies with a lot of information, but if necessary I can look for the same patient in the 2 servers and bring me information of both servers.

William

Hi Sébastien.

Thanks for Your answer.

I’m trying to avoid use a distributed file system. With this approeach, thw file System will be growing in complexity and in some years I will have several fisical volumes, all joined to a single logical disk, merging disks with 4 or 5 years ols with new ones. For that reason I think should be better to have a mark in each study ponting to a specific storage. I think this logic is part of the core of Orthanc, so I think I will be unable to make a plugging to accomplish that. Also woth Postgres I will have the same growing scenario. We are growing about 20TB of file use per year…

About the modification of the patient data. I will try using the Rest Api option. I have some examples to see how I can merge or split two patients ?

Regards, Diego

Hi Salim.

I will try this week Your solution.

I can split/merge two patients with this software ?

Thanks for the help.
Regards, Diego.

Hi William.

I’ve tried Radian.
It’s a very good alternative to see studies, but we need to have the option to print images and burn the stody to a CD, and we can not do that with Radiant software.

I will take a closer look to the option to have more smaller servers, working as containers of images.
But we use the web visualizer in some scenarios and I think we have the chance to see in the same viewer, studies from different Orthanc servers.
Sometimes we need to compare studies from the same patient, from different dates

We are trying also another desktop viewer, ClearCanvas Workstation. We have a chance to print and burnd studies, but I do not know if we have the chance to see studies from different servers, all together.

Thanks to take You time to give some help to me.

Regards, Diego

I’m also having issues to see tomosynthesis studies from some desktop viewers, like Efilm. With Orthanc explorer we cann see that studies, but it takes a long time to load the series. We can see without any problem in Radiant or ClearCanvas.

Hello,

1- If you wish to avoid a distributed filesystem (Lustre/Ceph/…), consider implementing a custom storage area plugin:
http://book.orthanc-server.com/developers/creating-plugins.html

Check out the “OrthancPluginRegisterStorageArea()” function in the Orthanc plugin SDK:
http://sdk.orthanc-server.com/

This plugin could distribute the files over several filesystems by implementing an extendible hashing function that takes the Orthanc-generated UUID as input:
https://en.wikipedia.org/wiki/Extendible_hashing

2- Forthcoming split/merge feature is documented in the Orthanc Book:
http://book.orthanc-server.com/users/anonymization.html#split-merge-of-dicom-studies

To take advantage of this feature that will be part of Orthanc 1.4.3, you’ll currently have to use the Orthanc mainline.

HTH,
Sébastien-

I’m also having issues to see tomosynthesis studies from some desktop viewers, like Efilm. With Orthanc explorer we cann see that studies, but it takes a long time to load the series. We can see without any problem in Radiant or ClearCanvas.

Please share sample DICOM images (possibly anonymized), so that people can investigate this performance issue.

Hi Diego

The clear canvas workstation allows you to visualize in the same screen a study of several server PACS if you previously configured them in the software (the software documentation says so):

“” When you have searched multiple servers, there are a couple of things to note:

Give me a few days to prepare some of those studies.

Regards

Diego

Hi William

I’ll check that option in ClearCanvas.
It could be a solution to my storage problems.

I will continue having this problem using the Orthanc web browser.
I think I can not, on the same screen, access studies from different servers, since it requires that the study be on the local server.

Eventually, I could request to use the ClearCanvas for a study analysis of different servers and leave the web browser, to visualize individual studies.

Thanks for Your Help

Diego

Hi Diego

When I started using Orthanc I had the same thing as you, a big server and the stations checked using the web browser. As I increased the information of the medical teams, I increased the capacity of the server but the searches became slower with the web browser. At that point I implemented another server and divided the data flow of the medical equipment between the two servers, that improved the delay in the search with the web browser but it was difficult to get all the studies of the same patient, I presented the case in that a patient had information on both servers, there came to the rescue the Radiant (in his case the clear canvas).

At this moment I am considering preparing another server to store the images of the ultrasound equipment that I currently have on the same Rx server. At the end I will have installed 3 smaller servers, one with the images of the tomographs, another with the images of Rx and the new one with the images of the ultrasound equipment. As the servers are of lower capacity I can invest in SSD disks that are very fast and safe, and since I do not need as much capacity in each server, the investment is lower.

Hopefully my experience will help you with your problem, it has worked for me and most importantly, the client is happy jajajajaja.

Regards

William