A Model Object of type Reference Table can be created in the Silver Layer.
What is a Reference Table
In a Data Vault model, a Reference Table prevents redundant storage of simple reference data that is referenced a lot.
Especially if we don't need historization, we will create a Reference Table instead of a Hub and a Satellite.
Reference tables are referenced from Satellites but always bear physical foreign keys.
Creation steps
There are two possibilities to create a Reference Table Model Object:
- Create a Model Object with the Wizard:
- Recommended possibility
- Use the Wizard Create a Reference Table from a Stage or a Stage Composite that contains the following steps:
- Create Model Object
- Create Dataflow
- Map selected Business Keys
- Map selected Terms: exclude the Business Key(s) = {true}, exclude the Foreign Key(s) = {true}
- Add to View
- Create a Model Object manually:
- Not recommended possibility
- Create a Model Object of type Reference Table in the Silver Layer
- Create a Dataflow Set
- Add a Model Object to the Dataflow Set: Add the Stage Model Object
- Auto-map the Source Terms: Select the auto-map mode and auto-map all the Source Terms in the Source Model Object
Properties
A Reference Table Model Object can be configured through the following Properties:
-
Deduplication Method or Optimization Method (Only for Spark Generator)
- Deduplication Partition or Optimization Method Columns (Only for Spark Generator)
- File format (Only for Spark Generator)
Default Terms
A Reference Table Model Object will include the following Default Terms:
Business Rules
The following Business Rules are checked during the Model Object creation:
- Dataflows amount: min = {1}, max = {null}
- Dataflow Sets amount: min = {1}, max = {null}
- Dataflow Set Model Objects amount: min = {1}, max = {null}
- Relationships amount: min = {null}, max = {0}
- Terms amount: exclude Default Terms = {true}, exclude Business Keys = {false}, exclude Identities = {false}, exclude Foreign Keys = {false}, exclude unmapped Terms = {false}, min = {1}, max = {null}
- Supported Term Data Types: exclude Default Terms = {true}, exclude Business Keys = {false}, exclude Identities = {false}, exclude Foreign Keys = {false}, exclude unmapped Terms = {false}
- Supported Term Data Types: exclude unmapped Terms = {true}, Term name = {IncrementalFilter}
- Supported Implementation Types: supported Implementation Types = {Cached, Virtual}
- Implementation Type Incremental Filter
- Supported Deduplication Methods: supported deduplication Methods = {None, Distinct, Partition}