Storage Properties - dcm4che/dcm4chee-arc-light GitHub Wiki
Any storage configured in archive requires certain basic storage specific properties to be configured for it. As storages can be of different types (eg. filesystem, S3), corresponding storage properties configuration is required for each specific storage.
Note : These filesystem storage properties are available only until archive version 5.30.0. Version 5.31.0 onwards, the storage properties are replaced by individual fields on the storage descriptor itself.
This is the most commonly used type of storage system used in archive's default configuration used for storing DICOM objects.
Properties | Default | Possible values | Notes |
---|---|---|---|
pathFormat |
{now,date,yyyy/MM/dd} /{0020000D,hash} /{0020000E,hash} /{00080018,hash}
|
DICOM files stored to current date location grouped per study / series. Hashed values of Study / Series / SOP UIDs used for folders / DICOM objects. |
|
checkMountFile |
NO_MOUNT |
Applicable mainly for NFS / External file systems, wherein the user needs to first create file with specified name (NO_MOUNT ) on the NFS / External file system before the file system is mounted. NO_MOUNT is just a pre-configured value, user may choose to use any other value, but only has to ensure that configured value matches with the file name created on the mount. Used by the archive for each DICOM object storage (write operation) to check if the mount exists before writing out. |
|
fileOpenOption |
CREATE_NEW |
Standard Open Options | Specified default applied in absence of configuration. |
altCreateDirectories |
true |
By default, creates a directory by creating all nonexistent parent directories first. If set to true , creates a new directory by checking for the existence of the file. Optionally, uses list of file attributes to set atomically when creating the new directory. |
|
retryCreateDirectories |
0 |
No. of times the creation of directories is retried. | |
onFileExists |
NOOP FAILURE
|
NOOP : does not store the object to the Storage, but adds a reference to the existing file for the instance in the database. FAILURE : storage fails with FileAlreadyExistsException On no configuration of onFileExists property, creates random 8 hex-digits file name, preserving the previous behavior. Available since 5.29.3 |
Notes for pathFormat Alternatives
File system storage may also be used :
- To store instance metadata used by 3rd party systems for post-processing workflows or .
pathFormat={0020000D}-{0020000E}.json
-
Prefetch WADO objects on an intermediary
cache server to be used by workstations
pathFormat={0020000D}/{0020000E}/{00080018}/{00081160}.jpeg
Storage URI: jclouds:<endpoint>
Replace <endpoint>
above with URL corresponding to your cloud storage settings.
Properties | Configurable Values | Notes |
---|---|---|
identity |
Configure access-key of your S3 storage |
|
credential |
Configure secret-key of your S3 storage |
|
container |
Configure bucket-name of your S3 storage |
|
containerExists |
true false
|
optional, default: false
|
jclouds.trust-all-certs |
true false
|
optional, tested: true
|
jclouds.relax-hostname |
true false
|
optional, tested: true
|
jclouds.strip-expect-header |
true false
|
optional, tested: true
|
streamingUpload |
true false
|
optional, default: false indicates if the cloud storage backend supports streaming and if it shall be used. |
maxPartSize |
default: 5G . If streamingUpload is not supported, maximum object size (Content-Length ) that can be uploaded in single-part / multi-part payload. |
|
synchronizeUpload |
true false
|
optional, default: false Synchronize uploads on S3. |
Storage URI: jclouds:s3:<endpoint>
Replace <endpoint>
above with URL corresponding to your S3 storage settings.
Properties | Configurable Values | Notes |
---|---|---|
identity |
Configure access-key of your S3 storage |
|
credential |
Configure secret-key of your S3 storage |
|
container |
Configure bucket-name of your S3 storage |
|
containerExists |
true false
|
optional, default: false
|
jclouds.trust-all-certs |
true false
|
optional, tested: true
|
jclouds.relax-hostname |
true false
|
optional, tested: true
|
jclouds.s3.virtual-host-buckets |
true false
|
optional, tested: false
|
jclouds.strip-expect-header |
true false
|
optional, tested: true
|
streamingUpload |
true false
|
optional, default: false indicates if the cloud storage backend supports streaming and if it shall be used. |
synchronizeUpload |
true false
|
optional, default: false Synchronize uploads on S3. |
Storage URI: emc-ecs-s3:<endpoint>
Replace <endpoint>
above with URL corresponding to your EMC-ECS S3 storage's settings.
Properties | Configurable Values | Notes |
---|---|---|
identity |
Configure access-key of your EMC-ECS S3 storage |
|
credential |
Configure secret-key of your EMC-ECS S3 storage |
|
container |
Configure bucket-name of your EMC-ECS S3 storage |
|
containerExists |
true false
|
optional, default: false
|
streamingUpload |
true false
|
optional, default: false indicates if the cloud storage backend supports streaming and if it shall be used. |
emc-ecs-s3.URLConnectionClientHandler |
true false
|
optional, default: false
|
Storage URI: jclouds:aws-s3:https://<bucket-name>.s3.<aws-s3-bucket-location>.amazonaws.com
Replace <bucket-name>
and <aws-s3-bucket-location>
in the above URL with values corresponding to your Amazon S3 storage settings.
Properties | Configurable Values | Notes |
---|---|---|
identity |
Configure access-key of your Amazon AWS S3 storage |
|
credential |
Configure secret-key of your Amazon AWS S3 storage |
|
container |
Configure bucket-name of your Amazon AWS S3 storage |
|
containerExists |
true false
|
optional, default: false , tested: true
|
jclouds.s3.virtual-host-buckets |
true false
|
optional, tested: true
|
jclouds.trust-all-certs |
true false
|
optional, tested: true
|
jclouds.relax-hostname |
true false
|
optional, tested: true
|
jclouds.s3.virtual-host-buckets |
true false
|
optional, tested: true
|
jclouds.strip-expect-header |
true false
|
optional, tested: true
|
streamingUpload |
true false
|
optional, default: false indicates if the cloud storage backend supports streaming and if it shall be used. |