Data warehouse 时间维度和毫秒

Data warehouse 时间维度和毫秒,data-warehouse,dimensional-modeling,Data Warehouse,Dimensional Modeling,我在设计时间维度时遇到了一个难题,我不确定是应该在时间维度中包含毫秒,还是应该为毫秒颗粒创建一个维度 我可以看到在时间维度中包含毫秒颗粒的优点和缺点 优点: 直接在维度键上执行计算(日期和时间维度是唯一允许在其中包含任何智能的数据仓库)。事实表的目的是测量响应时间 缺点: 时间维度变得很大,我可能会失去查询性能 需要了解的其他重要信息: 市场营销人员告诉我,每个月要有5000万个事实(我们知道它们是怎样的,我应该为更多的事实做好准备) 事实要以非累加的方式进行汇总,这就是:我想要服务

我在设计时间维度时遇到了一个难题,我不确定是应该在时间维度中包含毫秒,还是应该为毫秒颗粒创建一个维度

我可以看到在时间维度中包含毫秒颗粒的优点和缺点

优点:

  • 直接在维度键上执行计算(日期和时间维度是唯一允许在其中包含任何智能的数据仓库)。事实表的目的是测量响应时间
缺点:

  • 时间维度变得很大,我可能会失去查询性能

需要了解的其他重要信息:

  • 市场营销人员告诉我,每个月要有5000万个事实(我们知道它们是怎样的,我应该为更多的事实做好准备)
  • 事实要以非累加的方式进行汇总,这就是:我想要服务质量度量:平均(半累加)、中位数、百分位数。
    • 每个事实都有12个时间检查点

我认为这种维度数据分离可以减少维度表的大小, 相对的示例是,您可以将dimDate和dimTime分开,尽管您可以将它们放在一起,但如果不能,它将创建一个大的维度表, 现在我认为一个切实可行的解决方案是将DIMMILSECond与dimTime分开,bcs只包含一个字段,您只能将其添加到事实中,而无需创建物理DIMMILSECond,它将是事实表中的退化维度属性(DDA)


注意。

我会加入毫秒粒度,并使用聚合表改进较慢时间维度的查询。一年有300亿毫秒。如果你不分开,你会有一个很大的维度(可能和事实表中的行一样多)@momobo我想这有点明显,我的问题是在时间维度中包含毫秒颗粒,而不是在日期维度中包含毫秒…@GilbertLeBlanc我在考虑日聚合,问题是,事实不是可添加的,聚合很难用于进一步的聚合。如果不了解更多关于事实表的信息,我无法提出更多建议。我知道您的服务质量度量是不可聚合的,但它们可能可以预先计算一天或其他时间度量。