0

我正在努力理解在日期维度表中具有自然键的概念。

我总是看到在维度表中创建了一个随机代理键。但我最近读到,与自然的自然代理键相比,在日期维度中使用自然键20150806Aug-06-2015效果要好得多,并且在从事实表进行查找和反向查找时具有相当大的性能提升int

我无法理解它将如何带来任何性能提升。join即使我们使用这个花哨的键作为日期维度,我们仍然需要在事实和维度之间。

如果有人对此有任何见解,请介意分享知识。如果你能跟进一个例子,我将不胜感激。

4

1 回答 1

0

没有性能提升——密钥只是日期记录的任意标识符。在商业应用程序中,我通常使用从 2000 年 1 月 1 日开始的日期偏移量作为 smallint。使用较小的整数有一些好处,因为日期键存在于很多记录中,它有助于减少记录大小(因此增加了可缓存记录的数量)。

对日期使用“自然”键值的唯一真正优势是可以使用或浏览该表,而不必加入日期维度表,并且具有一些可见的“词汇”含义。

但它在数据仓库的上下文中根本没有帮助。

于 2015-08-07T00:31:23.263 回答