Each Metadata Repository contains a discoveries folder (See Understand the Project Metadata Repository content).
In this folder, there is one subfolder for each Source System.
In each Source System folder, the corresponding Discovery YAML files are stored.
Each file contains all the metadata for a Discovery.
Discovery file details
After the discovery is created, the file should look like the following:
id: 6adc0785-993a-4e39-9984-4bd1fd3f2351
name: mssql_adw_production_output.json
timestamp: 'XXXX-05-22T09:38:24.9555608+00:00'
sourceSystem:
type: Microsoft SQL Server
sourceObjects:
- name: Product
fullyQualifiedName: AdventureWorks2017.Production.Product
objectType: {}
terms:
- name: ProductID
sourceDataType:
name: INTEGER
isNullable: false
dataType:
name: int
isIdentity: false
isBusinessKey: true
isForeignKey: false
- name: Name
sourceDataType:
name: NVARCHAR
length: 50
isNullable: false
dataType:
name: NVARCHAR
length: 50
isIdentity: false
isBusinessKey: false
isForeignKey: false
....
The Source data type is the data type from the Source technology used.
The Target data type is the data type depending on the Target technology of the Generator.
The Generator Configuration sets the mapping between a Source data type ("INTEGER" in this example) and a Target data type ("int" in this example).
The different nodes contain:
Node name | Node description | Node value example |
id | Discovery's internal ID (GUID format) | 6adc0785-993a-4e39-9984-4bd1fd3f2351 |
name | Name of the file used to create the Discovery | mssql_adw_production_output.json |
timestamp | Date and Time of the Discovery creation | This is the project used to document Data Vault modeling. |
sourceSystem > type | Source Technology of the Source System | Microsoft SQL Server |
sourceObjects | List of objects in the Discovery | - |
sourceObjects > name | Name of an Object in the Discovery | Product |
sourceObjects > fullyQualifiedName | Complete name of an Object in the Discovery. For a database, databaseName.schemaName.tbaleName. |
AdventureWorks2017.Production.Produc t |
sourceObjects > terms | List of terms in the Object | - |
sourceObjects > terms > name | Name of a Term | ProductID |
sourceObjects > terms > sourceDataType | Description of the Source data type for the Term | - |
sourceObjects > terms > sourceDataType > name | Name of the Source data type | INTEGER |
sourceObjects > terms > sourceDataType > length | Length of the Source data type (if relevant) | - |
sourceObjects > terms > sourceDataType > isNullable | Property is nullable for the Source data type | false |
sourceObjects > terms > dataType | Description of the Target data type for the Term | - |
sourceObjects > terms > dataType > name | Name of the Target data type | int |
sourceObjects > terms > dataType > length | Length of the Target data type (if relevant) | - |
sourceObjects > terms > isIdentity | True if the Term is an identity | false |
sourceObjects > terms > isBusinessKey | True if the Term is a Business Key. This will be true if the Source Term is a primary key. | true |
sourceObjects > terms > isForeignKey |
True if the Term is a foreign key |
false |