Data-Warehouse
維度表中的日期是否應該使用dimDate?
假設我的 dimDate 有一個代理鍵。維度表(不是事實表)中的所有日期列都應該儲存日期維度的代理鍵嗎?還是只是簡單的約會?
比如維度表dimCustomer中,可能有生日、入職日期、畢業日期……等。
我將通過將日期值和 SK 都儲存回日期維度來對此進行建模。這就是為什麼儲存該實際狀態值可以讓您獲得毫秒級別的精度,並且當有人想確切地看到某事發生的時間時會很有用。但是對於聚合,如果您擔心兩個值不同步,則 SK 可以是計算列
Customer ID 1 Name John Smith BirthdateValue 2018-07-04 04:20:69.007 BirthdateSK 20180704
根據需要為其他日期重複該模式。
您應該使用代理 INT 密鑰,但將其設為智能密鑰。智能鑰匙是個壞主意,除非在這種情況下
我的意思是:
SUN_DATE
date_key the_date 20181208 2018-12-08 ...
這使您可以使用快速 int 鍵,使用者也可以將其辨識為日期。並且還允許在日期維度中使用您需要的“不適用”日期行