【发布时间】:2015-08-07 08:31:23
【问题描述】:
我正在努力理解在日期维度表中具有自然键的概念。
我总是看到在维度表中创建了一个随机代理键。但是我最近读到,在日期维度中使用自然键,例如 20150806 用于 Aug-06-2015 效果更好,并且在查找和反向查找时具有可观的性能提升
与自然代理键 int 相比时的事实表。
我不明白它会如何提高性能。即使我们将这个花哨的键用于日期维度,我们仍然需要在事实和维度之间使用join。
如果有人对此有任何见解,请介意分享知识。如果你能跟进一个例子,我将不胜感激。
【问题讨论】:
-
它可以很容易地按日期对大事实表进行分区。这将提高性能。也可以避免 ETL 期间的代理键值查找
标签: sql-server data-modeling dimension fact primary-key-design