← Back to Latest Posts

Transformation-Based Data Lineage in Data Warehouses

Problem 1: Path-Sharing Problem

Data warehouses commonly consolidate multiple source tables into shared harmonizing tables before producing downstream datasets. While this architecture simplifies data integration, it introduces an important limitation for attribute-level data lineage.

When multiple input tables are merged into a common harmonizing table, traditional lineage tools often lose the ability to distinguish which source actually contributed to a particular downstream attribute. As a result, they report every possible upstream path rather than the true transformation path.

Example

Consider the following architecture.

Input Tables A and B feeding a Harmonizing Table, which feeds Consumption Tables X and Y
A shared harmonizing table creates multiple apparent lineage paths.

When tracing an attribute in Consumption Table X, most lineage tools report both possible paths:

Input Table A → Harmonizing Table → Consumption Table X
Input Table B → Harmonizing Table → Consumption Table X

However, if the attribute actually originates only from Input Table A, the correct lineage is:

Input Table A → Harmonizing Table → Consumption Table X

The additional path through Input Table B is a false dependency introduced solely because both inputs share the same harmonizing table. Consequently, the reported lineage becomes broader than the actual data flow.

I refer to this as the Path-Sharing Problem in Data Lineage.

This limitation affects impact analysis, root cause analysis, regulatory compliance, and confidence in lineage systems, particularly in large enterprise data warehouses.

Problem 2: Mapping Tables

In enterprise data warehouses, source systems often use different values to represent the same business concept. During the ETL process, these source-specific values are translated into standardized values using mapping tables before being loaded into the harmonized data model.

For example, different source systems may represent the customer type of an individual customer as Personal, Household, or Private. Although these values differ, they all represent the same business concept and are mapped to the harmonized value Individual.

This mapping ensures consistent reporting and analytics across source systems.

Diagram illustrating the mapping table problem in data lineage
Off-the-shelf lineage stops at the mapping table, while correct lineage continues to the real source.

The Problem

Off-the-shelf attribute-level lineage tools often stop tracing when they encounter a mapping table. As a result, the reported lineage ends at:

Mapping Table → Harmonized Table

However, the mapping table only translates source-specific values into harmonized values. It is not the true origin of the data.

The correct lineage should bypass the mapping table as a lineage endpoint and continue to the original source attribute:

Source Table → Harmonized Table

The mapping step should still be recognized as a transformation rule, while the source table remains the true origin of the attribute.

Treating mapping tables as the origin of data obscures the true source of business information and produces incomplete lineage. Accurate lineage should distinguish between value transformations and the actual origin of the data.