The conformance trap
Recognize the conformance trap: building one customer dimension per process instead of sharing one.
Concept
conformed-dimensions
The primary modeling idea this problem reinforces.
Requirements
1
Business needs the model must satisfy.
Two teams each built their own customer table (dim_customer_orders and dim_customer_support) with mostly the same attributes. Analysts now get different customer counts depending on which table they join, and cross-process funnels do not reconcile.
Duplicated lookalike dimensions are the most common conformance failure. They drift apart, double-count, and make cross-process metrics impossible to trust.
- Pick the modeling fix that restores one consistent customer identity.
- The answer consolidates to one conformed customer dimension.
- The explanation states that both facts should reference the same dimension.
- Two dimensions with the same meaning are a conformance smell, not a feature.
- The fix points both facts at one dimension through foreign keys.
- Keeping both customer tables and "reconciling" them downstream.
- Merging the dimensions but leaving each fact pointed at its old copy.
- Assuming duplicate dimensions are fine because the attributes look similar.
One conformed customer dimension
Consolidate to a single customer dimension and repoint both the orders and support facts at it through surrogate-key foreign keys. A Kimball conformed dimension.
Optimizes for
- • Consistent customer counts
- • Trustworthy cross-process funnels
- • Single source of customer truth
Trade-offs
- • Requires a migration to repoint existing facts
- • Needs governance so teams do not re-fork the dimension
Try the question first.
The discussion has other people's approaches and solutions. Give it a real attempt before you read them.