Slowly Changing Dimensions – Type Three Models
Type Three – Leverage Previous and Current Value Fields
Type three models are defined by adding one or more columns to the dimension table, so that the new (or current or active) and old (or historical or inactive) value of an field are stored. In addition, multiple previous values can be stored within the table depending on how many previous columns are included in the the dimension table.
Type three modeling is a middle state between complete history loss of type one models and the numerous additional records of type two models. Moreover, type three models only provide only a limited view of history as only a predefined number previous value of any attribute can be retained, rather than a complete history. This modeling technique is fairly useful when changes to the dimension table are made on a regular schedule, such as annually, and when archival copies of the database are stored offline for historical and audit purposes. Type three modeling is not so useful when changes are more frequent and unpredictable. Multiple previous value fields could be added to the record to provide a longer historical trail, but it may be a challenge to design the table with the optimum number of previous fields. For the most part, type three modeling makes most sense to be implemented only when only there are a limited number of previous values that need to be retained.
Suppose that a vendor changes his phone number to 858-555-6555 from 202-555-8639 because the phone company has added a new area code. Utilizing a type three model, the vendor dimension table will contain both a current phone and previous phone field. Initially the vendor record contains a null value for the previous phone number and a value of 202-555-6555 for the current phone number.
- In order to process this update using the previous and current fields, the vendor dimension table is updated:
- – The previous phone field is updated to 202-555-6555, which is now the vendor’s last previous phone number.
- – The current phone field is updated to 858-555-8639, which is now the vendor’s current number.
- – The effective date is updated to the date of the change.
Leave a Reply
Want to join the discussion?Feel free to contribute!