CONFIG_ENTITY_DEFAULTS
CONFIG_ENTITY_DEFAULTS is a configuration package that is used to configure entity types, naming conventions and attributes. These settings affect to new entity creation.
See also:
Latest default configurations available in ADE default configuration (GitHub)
Usage
Open the configuration package from Designer package list.
Click Export package in the Actions tab.
Click Download.
Edit JSON file.
Import edited JSON back to Designer with Import Package.
After a successful import, changes to the configuration package have been applied to Designer only. It is recommended to deploy the same changes to Runtime environments as well.
Contents
Entity type configuration
Entity type configurations are managed inside a JSON array block named entityTypes.
Key | Value type | Example | Description |
---|---|---|---|
entityType | String | STAGE | Entity type name. |
description | String | Staging Entity | Optional. The description of the entity type. |
namePrefix | String | S_ | Optional. The prefix name of the entity. |
nameSuffix | String | _C | Optional. The suffix name of the entity. |
byDefaultAutoManaged | Boolean | false | Whether the entity type is auto-managed by default or not. Supported values are 'true' and 'false'. |
defaultSchema | String | staging | Optional. The default schema of the entity |
defaultZone | String | staging | Optional. The default zone of the entity. |
dvEntity | Boolean | false | Optional. Whether the entity type is data vault or not. Supported values are 'true' and 'false'. |
parentEntityType | String | SAT | In case of byDefaultAutoManaged true, must refer to an existing entity type |
relationshipType | String | CURRENT_VIEW | In case of byDefaultAutoManaged true, must contain CURRENT_VIEW |
defaultPhysicalType | String | TABLE | If byDefaultAutoManaged true, use VIEW, otherwise TABLE |
You can add a new entity type or update the contents of an existing entity type. Note that you cannot rename or delete entity types that are in use i.e. selected for entities or soft-deleted entities.
Example: Entity type configuration
"entityTypes": [
...
{
"entityType": "BUSINESS_SATELLITE",
"description": "Business satellite entity",
"namePrefix": "BSE_",
"nameSuffix": null,
"dvEntity": false,
"byDefaultAutoManaged": false,
"defaultSchema": "bse",
"defaultZone": "BUSINESS",
"parentEntityType": null,
"relationshipType": null,
"defaultPhysicalType": "TABLE"
}
...
]
If an existing entity type needs to be deleted, simply remove it from the set of values before importing the configuration package.
In case of creating current view entity, following conditions are needed:
parentEntityType needs to refer to a defined entity type with few mandatory attribute types set
DV_LOAD_TIME
DV_DRIVING_KEY or DV_HASHKEY or DV_REFERENCING_HASHKEY
byDefaultAutoManaged needs to be set true
relationshipType needs to be CURRENT_VIEW
defaultPhysicalType needs to be VIEW
default attributes should not be defined for current view entity type as they inherit them from the parent entity
load types are mandatory to be defined for the current view entity type
Attribute type configuration
Attribute type configurations are managed inside the JSON array block named attributeTypes.
Key | Value type | Example | Description |
---|---|---|---|
attributeType | String | DV_HASHKEY | The name/type of the attribute. |
superAttributeType | String | null | Optional. The parent name/type of the attribute. |
You can add a new attribute type or update the contents of an existing attribute type.
Example: Attribute type configuration
"attributeTypes": [
. . .
{
"attributeType": "DV_HASHKEY",
"superAttributeType": null
}
. . .
]
If an existing attribute type is needed to be deleted, simply remove it from the set of values before importing the configuration package.
Default attribute configuration
Default attribute configurations are managed inside the JSON array block named defaultAttributes.
Key | Value type | Example | Description |
---|---|---|---|
defaultAttributeId | String | 9 | The unique identifier of the default attribute. |
attributeNameTemplate | String | sdt_sort_order | The template name of the attribute. |
datatype | String | INTEGER8 | The data type of the attribute. |
dataPrecision | Integer | null | Optional. The precision value of the default attribute's data type. |
dataScale | Integer | null | Optional. The scale value of the default attribute's data type. |
charUsed | Boolean | false | Optional. Whether the default attribute uses char or not. Supported values are 'true' and 'false'. |
dataLength | String | null | Optional. The length value of the default attribute's data type. |
charLength | String | null | Optional. The char length value of the default attribute's data type. |
description | String | "Internal Attribute" | Optional. The description of the default attribute. |
compressionType | String | null | Optional. The compression type of the default attribute. |
isNullable | Boolean | true | Optional. Whether the default attribute is nullable or not. Supported values are 'true' and 'false'. |
isPersistent | Boolean | true | Whether the default attribute is persistent or not. Supported values are 'true' and 'false'. |
defaultValue | String | null | Optional. The default value of the default attribute. |
attributeType | String | SDT_SORT_ORDER | Optional. The attribute type of the default attribute. For more information, refer to the Attribute Type Configuration section above. |
You can add a new default attribute or update the contents of an existing default attribute.
Example: Default attribute configuration
"defaultAttributes": [
. . .
{
"defaultAttributeId": "9",
"attributeNameTemplate": "sdt_sort_order",
"datatype": "INTEGER8",
"dataPrecision": null,
"dataScale": null,
"charUsed": false,
"dataLength": null,
"charLength": null,
"description": "Internal Attribute",
"compressionType": null,
"isNullable": true,
"isPersistent": true,
"defaultValue": null,
"attributeType": "SDT_SORT_ORDER"
}
. . .
]
If an existing default attribute needs to be deleted, simply remove it from the set of values before importing the configuration package.
Entity type default attribute configuration
Entity type default attribute configurations are managed inside the JSON array block named, entityTypeDefaultAttributes.
Key | Value type | Example | Description |
---|---|---|---|
entityTypeDefaultAttributeId | String | 1 | The unique identifier of the entity type's default attribute. |
entityType | String | STAGE | The type of entity. |
defaultAttributeId | String | 9 | The identifier of the default attribute. For more information, refer to the Default Attribute Configuration section above. |
position | String | 1 | The ordinal position of the entity type's default attribute. |
transformationType | String | null | Optional. The transformation of the entity type's default attribute. |
You can add a new entity type's default attribute or update the contents of an existing entity type's default attribute.
Example: Entity Type Default Attribute Configuration
"entityTypeDefaultAttributes": [
. . .
{
"entityTypeDefaultAttributeId": "1",
"entityType": "STAGE",
"defaultAttributeId": "9",
"position": "1",
"transformationType": null
}
. . .
]
If an existing entity type's default attribute needs to be deleted, simply remove it from the set of values before importing the configuration package.
Entity type load type configuration
Entity type default load type configurations are managed inside the JSON array block named, entityTypeDefaultLoadTypes.
Key | Valuetype | Example | Information |
---|---|---|---|
defaultLoadTypeId | String | 1 | The unique identifier of the entity type's default load type. |
entityType | String | STAGE | The type of entity. |
entityPhysicalType | String | TABLE | The physical type involved. |
loadType | String | TRANSFORM_PERSIST | The default load type for the entity type and physical type combination. |
You can add a new entity type's default load type or update the contents of an existing entity type's default load type.
Example: Entity Type Load Type Configuration
"entityTypeDefaultLoadTypes":
[
. . .
{
"defaultLoadTypeId": 1,
"entityPhysicalType": "VIEW",
"entityType": "SOURCE",
"loadType": "TRANSFORM_SQL_VIEW"
},
. . .
]
If an existing entity type's default load type needs to be deleted, simply remove it from the set of values before importing the configuration package.
Entity physical option type per entity type per physical type configuration
Entity physical option type per entity type per physical type are managed inside the JSON array block named, physicalOptTypePerEntityTypePerPhysicalTypes.
Key | Value type | Example | Description |
---|---|---|---|
physicalOptType | String | STORAGE.TRANSIENT_TABLE | The physical option type of entity. |
entityType | String | STAGE | The type of entity. |
physicalType | String | TABLE | The physical type of entity. Supported values are 'TABLE', 'VIEW' and 'METADATA_ONLY'. |
value | String | true | The value of the physical option type. |
You can add a new entity physical option type per entity type per physical type or update the contents of an existing entity physical option type per entity type per physical type.
Example: Entity physical option type per entity type per physical type configuration
"physicalOptTypePerEntityTypePerPhysicalTypes": [
. . .
{
"physicalOptType": "STORAGE.TRANSIENT_TABLE",
"entityType": "STAGE",
"physicalType": "TABLE",
"value": "true"
},
{
"physicalOptType": "STORAGE.TRANSIENT_TABLE",
"entityType": "DIM",
"physicalType": "TABLE",
"value": "true"
},
{
"physicalOptType": "STORAGE.TRANSIENT_TABLE",
"entityType": "FACT",
"physicalType": "TABLE",
"value": "true"
},
{
"physicalOptType": "STORAGE.TRANSIENT_TABLE",
"entityType": "FLAT",
"physicalType": "TABLE",
"value": "true"
}
. . .
]
If an existing entity physical option type per entity type per physical type needs to be deleted, simply remove it from the set of values before importing the configuration package.
Key type per entity type per physical type configuration
Key type per entity type per physical type configurations are managed inside the JSON array block named, keyTypePerEntityTypePerPhysicalTypes.
Key | Value type | Example | Description |
---|---|---|---|
keyTypePerEntityTypePerPhysicalTypeId | String | cd90bc37-c1e9-467b-a7a8-15c319862ef3 | The unique identifier of the key type per entity type per physical type. Can be generated with online tools, such as UUID Generator. |
keyType | String | SORT_KEY | The type of key. |
entityType | String | HUB | The type of entity. |
physicalType | String | TABLE | The entity's physical type of the key type. Supported values are 'TABLE', 'VIEW' and 'METADATA_ONLY'. |
indexOptions | String | null | Optional. The index options of the key type. |
You can add a new key type per entity type per physical type or update the contents of an existing key type per entity type per physical type.
Example: Key type per entity type per physical type configuration
"keyTypePerEntityTypePerPhysicalTypes": [
. . .
{
"keyTypePerEntityTypePerPhysicalTypeId": "cd90bc37-c1e9-467b-a7a8-15c319862ef3",
"keyType": "SORT_KEY",
"entityType": "HUB",
"physicalType": "TABLE",
"indexOptions": null
},
{
"keyTypePerEntityTypePerPhysicalTypeId": "08b0fa35-8a82-4b2e-8014-44b1ba4a01ab",
"keyType": "SORT_KEY",
"entityType": "SAT",
"physicalType": "TABLE",
"indexOptions": null
}
. . .
]
If an existing key type per entity type per physical type needs to be deleted, simply remove it from the set of values before importing the configuration package.
Key type attribute per entity type per physical type configuration
Key type attribute per entity type per physical type configurations are managed inside the JSON array block named, keyTypeAttributePerEntityTypePerPhysicalTypes.
Key | Value type | Example | Description |
---|---|---|---|
keyTypeAttributePerEntityTypePerPhysicalTypeId | String | 083ee801-0f29-4f18-98f2-fe66b297b969 | The unique identifier of the key type attribute per entity type per physical type. Can be generated with online tools, such as UUID Generator. |
keyTypePerEntityTypePerPhysicalTypeId | String | 08b0fa35-8a82-4b2e-8014-44b1ba4a01ab | The unique identifier of the key type per entity type per physical type. For more information, refer to the Key Type Per Entity Type Per Physical Type Configuration section above. |
defaultAttributeId | String | 1 | The unique identifier of the default attribute. For more information, refer to the Default Attribute Configuration section above. |
position | Integer | 1 | The position of the key type attribute. |
sortDirection | String | null | Optional. The sort direction of the key type attribute. Supported values are 'ASC and 'DESC'. |
You can add a new key type attribute per entity type per physical type or update the contents of an existing key type attribute per entity type per physical type.
Example: Key type attribute per entity type per physical type configuration
"keyTypeAttributePerEntityTypePerPhysicalTypes": [
. . .
{
"keyTypeAttributePerEntityTypePerPhysicalTypeId": "083ee801-0f29-4f18-98f2-fe66b297b969",
"keyTypePerEntityTypePerPhysicalTypeId": "08b0fa35-8a82-4b2e-8014-44b1ba4a01ab",
"defaultAttributeId": "1",
"position": 1,
"sortDirection": null
},
{
"keyTypeAttributePerEntityTypePerPhysicalTypeId": "edb45ed6-8b33-4346-a235-0bce73b054f7",
"keyTypePerEntityTypePerPhysicalTypeId": "08b0fa35-8a82-4b2e-8014-44b1ba4a01ab",
"defaultAttributeId": "3",
"position": 2,
"sortDirection": null
},
{
"keyTypeAttributePerEntityTypePerPhysicalTypeId": "0617964e-a020-4423-b236-a76e77e13568",
"keyTypePerEntityTypePerPhysicalTypeId": "cd90bc37-c1e9-467b-a7a8-15c319862ef3",
"defaultAttributeId": "5",
"position": 2,
"sortDirection": null
},
{
"keyTypeAttributePerEntityTypePerPhysicalTypeId": "ed3cd98a-9fed-4f49-9996-81789b5dbe83",
"keyTypePerEntityTypePerPhysicalTypeId": "cd90bc37-c1e9-467b-a7a8-15c319862ef3",
"defaultAttributeId": "1",
"position": 1,
"sortDirection": null
}
. . .
]
If an existing key type attribute per entity type per physical type needs to be deleted, simply remove it from the set of values before importing the configuration package.
Examples
Data Vault naming conventions with prefixes
Example naming conventions for basic Data Vault -entities. Naming convention uses prefixes H_, S_ and L_ for Data Vault entities.
"entityTypes": [
{
"entityType": "HUB",
"description": "Hub Entity",
"namePrefix": "H_",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "rdv",
"defaultZone": "RAW"
},
{
"entityType": "SAT",
"description": "Satellite Entity",
"namePrefix": "S_",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "rdv",
"defaultZone": "RAW"
},
{
"entityType": "LINK",
"description": "Link Entity",
"namePrefix": "L_",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "rdv",
"defaultZone": "RAW"
},
]
Data Vault naming conventions with suffixes
Example naming conventions for basic Data Vault -entities. Naming convention uses prefix DV_ and suffixes _H, _S and _L.
"entityTypes": [
{
"entityType": "HUB",
"description": "Hub Entity",
"namePrefix": "DV_",
"nameSuffix": "_H",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "dv",
"defaultZone": "RAW"
},
{
"entityType": "SAT",
"description": "Satellite Entity",
"namePrefix": "DV_",
"nameSuffix": "_S",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "dv",
"defaultZone": "RAW"
},
{
"entityType": "LINK",
"description": "Link Entity",
"namePrefix": "DV_",
"nameSuffix": "_L",
"dvEntity": true,
"byDefaultAutoManaged": false,
"defaultSchema": "dv",
"defaultZone": "RAW"
}
]