【发布时间】:2013-11-07 11:56:31
【问题描述】:
我在设计时间维度时处于两难境地,我不确定是否应该在时间维度中包含毫秒或为毫秒粒度创建维度。
我可以看到在时间维度内包含毫秒粒度的优点和缺点。
优点:
- 直接在维度键上执行计算(日期和时间维度是唯一允许在其中包含任何智能的数据仓库)。事实表的目的是衡量响应时间。
缺点:
- 时间维度变大,我可能会失去查询性能。
其他重要信息:
- 营销人员告诉我,每月预计会有 5000 万个事实(我们知道它们是怎样的,我应该准备好更多)
- 事实将以非累加方式汇总,即:我想要服务质量度量:平均(半累加)、中位数、百分位数。
- 每个事实都有 12 个时间检查点。
【问题讨论】:
-
我会包含毫秒粒度,并使用聚合表来改进较慢时间维度上的查询。
-
一年有300亿毫秒。如果您不分开,您将拥有一个很大的维度(可能与事实表中的行一样多)
-
@momobo 我认为有点明显我的问题是在时间维度中包含毫秒颗粒,而不是在日期维度中包含毫秒......
-
@GilbertLeBlanc 我在考虑进行天聚合,问题开始时事实不是相加的,聚合几乎不能用于进一步的聚合。
-
在不了解您的事实表的情况下,我无法提出更多建议。我知道您的服务质量衡量标准不可汇总,但可能可以预先计算一天或其他时间衡量标准。
标签: data-warehouse dimensional-modeling