Prefetch WADO Bulkdata - dcm4che/dcm4chee-arc-light GitHub Wiki

Prefetch WADO Bulkdata

This use case specifies how one can enable pre-fetch of objects' JPEG image data only.

Exporter

Configure an Exporter as described below. Add an exporter descriptor by :

Using Archive UI

  • Go to Configuration page -> Devices tab -> dcm4chee-arc -> Device Extension -> Archive Device Extension -> Child Objects -> Exporter Descriptor (Add)

  • Configure following fields for the Export Descriptor

    • Upto archive version 5.23.1
         Exporter ID : WADO-JPEG
         Queue Name : Export2
         URI : wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]
         Archive Application Entity (AE) title : DCM4CHEE
         Exporter Description : Prefetch WADO JPEG
         Property : Cache-Control=no-cache
         Property : StorageID=wado-jpeg
         Property : KeycloakClientID=wado-export
    
    • Archive version 5.23.2 onwards
         Exporter ID : WADO-JPEG
         Queue Name : Export2
         URI : wado:DCM4CHEE-WADO
         Archive Application Entity (AE) title : DCM4CHEE
         Exporter Description : Prefetch WADO bulkdata
         Property : Cache-Control=no-cache
         Property : StorageID=wado-jpeg
         Property : WadoService=?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]
    

Using LDAP

Create a LDIF file (e.g.)

  • Upto archive version 5.23.1
     dn: dcmExporterID=WADO-JPEG,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     objectClass: dcmExporter
     dcmExporterID: WADO-JPEG
     dcmQueueName: Export2
     dcmURI: wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]&contentType=image/jpeg
     dcmProperty: Cache-Control=no-cache
     dcmProperty: StorageID=wado-jpeg
     dcmProperty: KeycloakClientID=wado-export
     dicomAETitle: DCM4CHEE
     dicomDescription: Prefetch WADO metadata
  • Archive version 5.23.2 onwards
     dn: dcmExporterID=WADO-JPEG,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     objectClass: dcmExporter
     dcmExporterID: WADO-JPEG
     dcmQueueName: Export2
     dcmURI: wado:DCM4CHEE-WADO
     dcmProperty: Cache-Control=no-cache
     dcmProperty: StorageID=wado-jpeg
     dcmProperty: WadoService=?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]&contentType=image/jpeg
     dicomAETitle: DCM4CHEE
     dicomDescription: Prefetch WADO bulkdata

and import it to the LDAP Server by using the ldapmodify command line utility.

One may refer to Exporter Descriptor to understand the description of attributes.

Go to the Control tab on Configuration page in archive UI and reload the configuration.

Note : In the above configurations :

  • Upto archive version 5.23.1
    • Properties KeycloakClientID=wado-export is OPTIONAL. Refer Keycloak Client if the additional functionality provided by this property is required by your application.

    • One may choose to add additional optional properties TLSAllowAnyHostname and TLSDisableTrustManager with values as true or false (eg. Property : TLSAllowAnyHostname=true) if you choose to invoke WADO services over secured http. i.e. URI : wado:https://localhost:8443/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]

    • Brief Overview & Short Description of dcmURI parameters : To identify a DICOM Object, only one UID is required, because any UID is globally unique. However, the standard requires that the UID of the higher levels in the DICOM Information Model are specified (i.e., series and study), in order to support the use of DICOM devices that support only the baseline hierarchical (rather than extended relational) Query/Retrieve model, which requires the Study Instance UID and Series Instance UID to be defined when retrieving an SOP Instance.

      • studyUID - This parameter is REQUIRED. Should be the Study Instance UID.
      • seriesUID - This parameter is REQUIRED. Should be the Series Instance UID.
      • objectUID - This parameter is REQUIRED. Should be the SOP Instance UID.
      • frameNumber - This parameter is OPTIONAL. Specifies that the single frame with that number within a multi-frame image object shall be returned.
      • contentType - This parameter is OPTIONAL. Its value shall contain one or more media types.
    • One may optionally choose to return image heights and widths by using optional query parameters in the URL as

        dcmURI: wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]&rows=64&columns=64&contentType=image/jpeg
      

      wherein :

      • rows : The value shall be expressed as an integer, representing the image height to be returned.
      • columns : The value shall be expressed as an integer, representing the image width to be returned.
  • Archive version 5.23.2 onwards
  • Refer Storage w.r.t. property StorageID=wado-jpeg
  • The HTTP header fields can be defined in dcmProperty.
    • Cache-Control=no-cache indicates that whenever there is change in study, the cache will be invalidated and WADO data should be reloaded again from archive.

Export Rule

Configure an Export Rule as well if this prefetch shall be triggered on receive of studies by the archive. Add an export rule by :

Using Archive UI

  • Go to Configuration page -> Devices tab -> dcm4chee-arc -> Device Extension -> Archive Device Extension -> Child Objects -> Export Rule (Add)

  • Configure following fields for the Export Rule

      Name : Cache WADO JPEG
      Entity : Series
      Exporter ID : WADO-JPEG
      Export Delay : PT1M
    

Using LDAP

Create a LDIF file (e.g.):

     dn: cn=Cache WADO JPEG,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
     objectClass: dcmExportRule
     cn: Cache WADO JPEG
     dcmEntity: Series
     dcmExporterID: WADO-JPEG
     dcmDuration: PT1M

and import it to the LDAP Server by using the ldapmodify command line utility.

One may refer to Export Rule to understand the description of attributes.

Refer ISO-8601 Duration format for more know-how on Durations.

Reasons as to why the pre-fetch of WADO objects' JPEG image data is not done on :

  • STUDY level : When a new Series of the study is received, say after a day (for eg. Structured Reports), then for the whole study the pre-fetch is done again.
  • INSTANCE level : To avoid costly database operations.
⚠️ **GitHub.com Fallback** ⚠️