Loading section...
Type 1: Overwrite Old Value
Concepts: dmScdType1
When History Does Not Matter Type 1 simply overwrites the old value with the new one. The customer moved to Seattle? UPDATE the city column. The old value (Portland) is gone forever. This is the right choice for attributes where nobody ever needs the historical value: typo corrections, phone number updates, name changes due to marriage. Type 1 is not lazy modeling. It is the correct choice when historical values have no analytical meaning. Applying Type 2 to a phone number creates dimension rows that nobody will ever query, bloating the table for no benefit. Type 1 is a destructive operation. There is no undo. If you later discover you needed the historical value, it is too late. When in doubt, use Type 2.