-1
我一直在研究我的第一個數據倉庫設計,並且遇到了一個我無法找到答案的問題。使用父行ID設計事實表
我的事實表中的每一行都需要標識「父」記錄的RowID。就我而言,每次發貨事件都會導致後續事件屬於該行。如果產品重新發貨,那麼以下產品屬於新的行等等。
但是,由於各種原因,並非每個產品都有運送歷史記錄都是可能的。因此使這些行爲空。
我的事實表中的每一行都有一個唯一的ID,所以我可以引用它,但我應該在哪裏存儲這種關係?我是否將可空列添加到ParentRowId的事實表中?我是否創建了一個定義關係的非事實性事實表?
我傾向於第一種選擇,但不確定在這種情況下什麼是「正確的」。如果在SQL Server 2012上有所不同,每年要查看大約3mil的行。
每年有3米行,看起來性能和存儲不是您的擔憂。 – usr
@usr因爲它可能,我仍然想要了解正確的方式 – ElPresidente
我不明白你的例子。你的事實表是什麼?這是一個貨物?這是貨件歷史記錄?在任何情況下,事實表中的空鍵都不是「正確的」。 – momobo