Smile CDR v2023.02.PRE
On this page:
   39.26    ETL Import: Source 39.28    FHIR Bulk Operations   

39.27FHIR Binary Storage

 

The FHIR Binary Storage configuration category includes the following configurable options:

  • Binary Access Operations Enabled

  • Automatically inflate binaries.

  • Binary inflation maximum size (bytes)

  • Blob service S3 access key

  • Blob service Azure account name

  • Blob service Azure client / application ID

  • Blob service Azure access key / client secret (app password) / Account-level SAS token

  • Blob service Azure tenant ID

  • Blob service bucket / container name.

  • Endpoint URL for S3-compatible service

  • Blob Service Region

  • Blob service secret key

  • Filesystem Mode: Base Directory

  • Binary Storage Mode

  • Maximum Size (bytes)

  • Minimum Size (bytes)

39.27.1Property: Binary Access Operations Enabled

 
Property Name Binary Access Operations Enabled
Property Key
Property Type BOOLEAN
Description This setting enables the binary access read/write operations. See Binary Access Operations for more information.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value true
Example Property
module.[MODULE_ID].config.binary_storage.access_operations.enabled = true

39.27.2Property: Automatically inflate binaries.

 
Property Name Automatically inflate binaries.
Property Key
Property Type BOOLEAN
Description If set to true, binaries stored in external binary storage will be fetched and populated into the resource body automatically upon resource access. If set to false, resources will show a binary ID with which you can manually fetch the binary.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value true
Example Property
module.[MODULE_ID].config.binary_storage.auto_inflation.enabled = true

39.27.3Property: Binary inflation maximum size (bytes)

 
Property Name Binary inflation maximum size (bytes)
Property Key
Property Type POSITIVE_INTEGER
Description At most this many bytes will be fetched from external binary storage per request. If your request contains more binary data than this, anything over this threshold will be returned as a binary ID for later fetching.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 10485760
Example Property
module.[MODULE_ID].config.binary_storage.auto_inflation.max_bytes = 10485760

39.27.4Property: Blob service S3 access key

 
Property Name Blob service S3 access key
Property Key
Property Type STRING
Description This setting allows you to set a manual access key. This is optional for AWS, as it uses its own credential chain. This setting is required if you are using MinIO.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.access_key = 

39.27.5Property: Blob service Azure account name

 
Property Name Blob service Azure account name
Property Key
Property Type STRING
Description This setting allows you to set a manual account name for Azure. This setting is required if you are using Azure blob storage.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.azure_account_name = 

39.27.6Property: Blob service Azure client / application ID

 
Property Name Blob service Azure client / application ID
Property Key
Property Type STRING
Description This setting allows to set the identifier that is associated with an application. This is optional and only needed when using Azure Active Directory Token.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.azure_client_id = 

39.27.7Property: Blob service Azure access key / client secret (app password) / Account-level SAS token

 
Property Name Blob service Azure access key / client secret (app password) / Account-level SAS token
Property Key
Property Type PASSWORD
Description This setting allows to set a manual Azure access key, client secret or shared Access Signatures (SAS) token. This is a multipurpose property and the value is depended on the types of authentication - access keys, Azure active directory or account-level SAS token. This setting is required if you are using Azure blob storage.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.azure_secret_key = 

39.27.8Property: Blob service Azure tenant ID

 
Property Name Blob service Azure tenant ID
Property Key
Property Type STRING
Description This setting allows to set the unique identifier of the Azure Active Directory instance. This is optional and only needed when using Azure Active Directory Token.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.azure_tenant_id = 

39.27.9Property: Blob service bucket / container name.

 
Property Name Blob service bucket / container name.
Property Key
Property Type STRING
Description This setting allows you to control which bucket / container objects are stored in on the blob service provider.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value smilecdr-binary-storage
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.bucket = smilecdr-binary-storage

39.27.10Property: Endpoint URL for S3-compatible service

 
Property Name Endpoint URL for S3-compatible service
Property Key
Property Type STRING
Description Overrides the endpoint for an S3-compatible service. This is optional for AWS, but required if you are using MinIO.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.endpoint_url = 

39.27.11Property: Blob Service Region

 
Property Name Blob Service Region
Property Key
Property Type STRING
Description This setting allows you to control which region S3/Minio buckets/objects are stored in.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value us-west-2
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.region = us-west-2

39.27.12Property: Blob service secret key

 
Property Name Blob service secret key
Property Key
Property Type PASSWORD
Description This setting allows to set a manual S3 secret key. This is optional for AWS, as it uses its own credential chain. This setting is required if you are using MinIO.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.blob_service.secret_key = 

39.27.13Property: Filesystem Mode: Base Directory

 
Property Name Filesystem Mode: Base Directory
Property Key
Property Type LOCAL_FILEDIR
Description When operating in FILESYSTEM binary storage mode, this setting provides the base path in which to store large binary objects.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value (no default)
Example Property
module.[MODULE_ID].config.binary_storage.filesystem.directory = 

39.27.14Property: Binary Storage Mode

 
Property Name Binary Storage Mode
Property Key
Property Type ENUM
Values
  • DATABASE
  • DATABASE_BLOB
  • FILESYSTEM
  • AWS_S3
  • MINIO
  • AZURE_BLOB_STORAGE
Description This setting sets a storage mechanism for large binary objects. See Externalized Binary Storage for more information.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value DATABASE
Example Property
module.[MODULE_ID].config.binary_storage.mode = DATABASE

39.27.15Property: Maximum Size (bytes)

 
Property Name Maximum Size (bytes)
Property Key
Property Type POSITIVE_INTEGER
Description This setting provides the maximum size of a binary object to be stored in binary storage. Binaries larger than this cutoff will be rejected and may not be stored.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 104857600
Example Property
module.[MODULE_ID].config.binary_storage.size.max = 104857600

39.27.16Property: Minimum Size (bytes)

 
Property Name Minimum Size (bytes)
Property Key
Property Type NON_NEGATIVE_INTEGER
Description This setting provides the minimum size of a binary object before it is stored in binary storage. Any binaries smaller than this size will still be stored, but may be stored inline within resource bodies as base 64 encoded content.
Applies to Modules
  • FHIR Storage (DSTU2 Relational)
  • FHIR Storage (MongoDB)
  • FHIR Storage (R3 Relational)
  • FHIR Storage (R4 Relational)
Default Value 10000
Example Property
module.[MODULE_ID].config.binary_storage.size.min = 10000
   39.26    ETL Import: Source 39.28    FHIR Bulk Operations