A Logical Unit (LU) is a blueprint that holds definitions and instructions for creating and maintaining the data of a business entity, such as a customer.
Fabric uses the System DB as the default Logical Unit storage layer, where each business entity instance is saved as a MicroDB in an entity table (and in an entity_chunks table for big LUs).
The sections below describe the additional LU storage types supported by Fabric and the configuration settings associated with each storage type.
The location of a Logical Unit's permanent storage depends on the LU Schema's Storage setting. The following storage types are supported:
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE in the [fabricdb] section of the config.ini file.To display an LU's storage type, use the Fabric LIST command.
Click for more information about the LIST command.
Optimistic locking is supported for all storage types except GCS. If needed, it can be enabled by setting:
VALIDATE_REMOTE_VERSION=true
Changing the LU storage from the default System DB to another storage type does not eliminate Fabric's requirement for a persistent System DB.
Click for more information about Fabric System Database.
Starting with Fabric 8.0, it is possible to store business entities on PostgreSQL when the use case is primarily querying data across entities. For further reading, click here.
The default storage type for MicroDB instances is configured using MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE in the [fabricdb] section of config.ini.
The default configuration is:
[fabricdb]
## Defines the default storage for Micro Databases (can be changed for individual schemas from Studio). Storage can be:
## SYSTEM_DB/S3/AZURE_BLOB_STORE/GCS/NFS/NONE (requires restart)
#MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=SYSTEM_DB
When the property is not explicitly set, SYSTEM_DB is used.
The default storage type can be overridden for an individual LU Schema by changing its Storage property in Studio.
SYSTEM_DB is the default MicroDB storage type.
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=SYSTEM_DB
MicroDB instances are persisted in the Fabric System DB.
No additional LU storage configuration is required when SYSTEM_DB is used.
To use AWS S3 as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=S3
The S3 storage connection is configured in the [s3_storage] section of config.ini.
For example:
[s3_storage]
...
The S3 storage configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
To use Azure Blob Storage as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=AZURE_BLOB_STORE
The Azure Blob Storage connection is configured in the [azure_blob_storage] section of config.ini.
For example:
[azure_blob_storage]
...
The Azure Blob Storage configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
To use Google Cloud Storage as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=GCS
The Google Cloud Storage connection is configured in the [gcs_storage] section of config.ini.
For example:
[gcs_storage]
...
The GCS configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
NFS can be used as shared persistent storage for MicroDB instances.
To use NFS as the default MicroDB storage, set MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE to NFS:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=NFS
Unlike the other storage types, the NFS storage path is defined using the MDB_DEFAULT_STORAGE_PATH property.
The default is set to
${FABRIC_HOME}/storage
The NFS filesystem must be mounted and accessible to the Fabric nodes that use the NFS-backed LU storage.
NONE disables persistent MicroDB storage.
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=NONE
When NONE is configured, an LU instance retrieved from its source systems is not persisted in the configured LU storage after the GET operation.
A Logical Unit (LU) is a blueprint that holds definitions and instructions for creating and maintaining the data of a business entity, such as a customer.
Fabric uses the System DB as the default Logical Unit storage layer, where each business entity instance is saved as a MicroDB in an entity table (and in an entity_chunks table for big LUs).
The sections below describe the additional LU storage types supported by Fabric and the configuration settings associated with each storage type.
The location of a Logical Unit's permanent storage depends on the LU Schema's Storage setting. The following storage types are supported:
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE in the [fabricdb] section of the config.ini file.To display an LU's storage type, use the Fabric LIST command.
Click for more information about the LIST command.
Optimistic locking is supported for all storage types except GCS. If needed, it can be enabled by setting:
VALIDATE_REMOTE_VERSION=true
Changing the LU storage from the default System DB to another storage type does not eliminate Fabric's requirement for a persistent System DB.
Click for more information about Fabric System Database.
Starting with Fabric 8.0, it is possible to store business entities on PostgreSQL when the use case is primarily querying data across entities. For further reading, click here.
The default storage type for MicroDB instances is configured using MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE in the [fabricdb] section of config.ini.
The default configuration is:
[fabricdb]
## Defines the default storage for Micro Databases (can be changed for individual schemas from Studio). Storage can be:
## SYSTEM_DB/S3/AZURE_BLOB_STORE/GCS/NFS/NONE (requires restart)
#MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=SYSTEM_DB
When the property is not explicitly set, SYSTEM_DB is used.
The default storage type can be overridden for an individual LU Schema by changing its Storage property in Studio.
SYSTEM_DB is the default MicroDB storage type.
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=SYSTEM_DB
MicroDB instances are persisted in the Fabric System DB.
No additional LU storage configuration is required when SYSTEM_DB is used.
To use AWS S3 as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=S3
The S3 storage connection is configured in the [s3_storage] section of config.ini.
For example:
[s3_storage]
...
The S3 storage configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
To use Azure Blob Storage as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=AZURE_BLOB_STORE
The Azure Blob Storage connection is configured in the [azure_blob_storage] section of config.ini.
For example:
[azure_blob_storage]
...
The Azure Blob Storage configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
To use Google Cloud Storage as the default MicroDB storage:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=GCS
The Google Cloud Storage connection is configured in the [gcs_storage] section of config.ini.
For example:
[gcs_storage]
...
The GCS configuration defines the storage location and connection properties used by Fabric to persist MicroDB instances.
NFS can be used as shared persistent storage for MicroDB instances.
To use NFS as the default MicroDB storage, set MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE to NFS:
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=NFS
Unlike the other storage types, the NFS storage path is defined using the MDB_DEFAULT_STORAGE_PATH property.
The default is set to
${FABRIC_HOME}/storage
The NFS filesystem must be mounted and accessible to the Fabric nodes that use the NFS-backed LU storage.
NONE disables persistent MicroDB storage.
[fabricdb]
MDB_DEFAULT_SCHEMA_CACHE_STORAGE_TYPE=NONE
When NONE is configured, an LU instance retrieved from its source systems is not persisted in the configured LU storage after the GET operation.