Multiple target objects are generated for a single Model Object that you model.
This target object processing chain applies all defined rules to the source data, producing the final target object.
Target objects processing chain
The complete processing chain is illustrated in the following diagram:
Source
Purpose: Displays the source data according to the modeled dataflow, including dataflow sets and term mappings.
Predecessor(s): Source System
Successor(s): Deduplication, DeleteDetection, Scd, Hashing
The Source view accesses the source object(s) of a model object, which may include Source Systems or other Model Objects.
Deduplication
Purpose: Filters duplicate rows based on the selected deduplication method.
Predecessor(s): Source
Successor(s): Hashing
The Deduplication view is optional: it is created and used only when deduplication is activated.
In addition to the view, a DeduplicationTable and a DeduplicationLoader are also created and used.
See Deduplication Method for more details.
DeleteDetection
Purpose: Filters rows containing deleted business keys.
Predecessor(s): Source
Successor(s): Hashing
The DeleteDetection view is optional: it is created and used only when delete detection is activated.
In addition to the view, a DeleteDetectionTable and a DeleteDetectionLoader target objects are also created and used when the FullSet deduplication method is used.
See Configure a delete detection behavior for more details.
Scd (Slowly Changing Dimensions)
Purpose: Applies the historization type.
Predecessor(s): Source
Successor(s): Hashing
The Scd view is optional: it is created and used when the most up-to-date information must be selected.
This is the case for a Mart Dimension when the source objects are historized (such as a Satellite in a Data Vault modeling, for example).
Hashing
Purpose: Calculate hash values.
Predecessor(s): Source, Deduplication, DeleteDetection, Scd
Successor(s): Lookup, RowCondensing, Delta
The Hashing view generates hash values like Hub_HK, Link_HK, and BG_RowHash.
If a multi-version load behavior is configured, additional HashingTable and HashingLoader target objects are also created and used.
See Configure a multi-version load for more details.
Lookup
Purpose: Resolves relationships with other model objects by applying foreign keys and identifying the surrogate keys.
Predecessor(s): Hashing
Successor(s): Delta
The Lookup view is optional: it is created and used only when relationships have to be resolved.
This applies in cases where a Mart Fact relating to Dimensions containing historized data.
RowCondensing
Purpose: Filters row versions that have no changed data compared to the previous version.
Predecessor(s): Hashing
Successor(s): Delta
The RowCondensing view is optional: it is created and used only when historized sources are configured.
See ValidFrom Source Term for more details.
Result
Purpose: Presents the final stored data that is ready for consumption.
Predecessor(s): Final target object
Successor(s): Delta
The Result view delivers the final data to external consumers, such as upper layers or other systems.
Delta
Purpose: Filters for changes compared to the previously loaded data.
Predecessor(s): Hashing, Lookup, RowCondensing, Result
Successor(s): Loader
The Delta view shows the difference between the source (Hashing, Lookup, and RowCondensing views) and target (Result view) to identify rows that must be loaded to the final target object.
Loader
Purpose: Loads data into storage.
Predecessor(s): Delta
Successor(s): Final target object
The loader inserts the final data into the final target object.
In addition, an IncrementTable and an IncrementSource view target objects are created and used when incremental load behavior is configured.
See Configure an incremental load for more details.
Final target object
Purpose: Stores the persisted or cached data.
Predecessor(s): Loader
Successor(s): Result
The final target object serves as the ultimate storage location where data is inserted.