立方体测量粒度随时间变化

时间:2014-05-07 15:54:48

标签: date ssas olap-cube granularity

我的IT经理要求我构建一个SSAS环境,其中相同的数据以不同的粒度存储,具体取决于它的年龄。

例如,我们有一个点系统,由工程师完成的项目数量和类型决定。我们希望以一周的粒度存储和处理这些数据,以获得上个月赚取的积分,上个季度赚取的积分为一个月,过去三年赚取的积分为一个季度。这样做的想法是,这将减少处理多维数据集所涉及的工作量。

这甚至可以在一个立方体内吗?我的研究表明它似乎并非如此。我们IT部门的负责人说,在他以前的公司,他们能够按照这些方式做一些事情,但这可能是对幕后发生的事情的误解,因为他并不过分技术性。这是我们公司为生产而建造的第一个立方体,我们之前都没有做过,但我对这个年轻职业发展的主题感兴趣,并且正在带头。我的想法是,如果在单个多维数据集中不可能,那么维护多个多维数据集实际上会为我们的开发人员带来更多工作,同时也为服务器带来更多工作。更不用说用户的额外复杂性了。

那么,是否可以在一个立方体内?如果没有,用多个立方体实现它会有什么好处,或者我们应该忘记它(不是我想回来的答案,但它是什么)?我们目前运行2008R2但很快升级到2014年,这方面的多维和表格模型有什么区别吗?

2 个答案:

答案 0 :(得分:1)

我认为这是可能的 - 您是否考虑过SSAS表格? http://www.daxpatterns.com/handling-different-granularities/

-Regards MikeB

答案 1 :(得分:0)

你可以按照以下几点做点什么:

假设年度 - 季度 - 月 - 周的时间层次结构(并且忽略了将周数汇总为几个月的确切规则的略微不相关的问题),您可以按如下方式设置时间层次结构:

    week       month   quarter  year
(2012)      (2012)     (2012)   2012
(Q1/2013)   (Q1/2013)  Q1/2013  2013
(Q2/2013)   (Q2/2013)  Q2/2013  2013
(Q3/2013)   (Q3/2013)  Q3/2013  2013
(Q4/2013)   (Q4/2013)  Q4/2013  2013
(Jan 2014)  Jan 2014   Q1/2014  2014
(Feb 2014)  Feb 2014   Q1/2014  2014
(Mar 2014)  Mar 2014   Q1/2014  2014
(Apr 2014)  Apr 2014   Q2/2014  2014
w18/2014    May 2014   Q2/2014  2014
w19/2014    May 2014   Q2/2014  2014
w20/2014    May 2014   Q2/2014  2014

我。即你只需要建立不像列名称那么详细的人工周,月和季度成员(我在括号中使用了它们匹配的句点的名称来表示。

但是,我不会认为多维数据集很大,这确实应该成为一个问题(我无法想象你会有数亿的开发人员)。因此,我建议保持一个共同的粒度,例如: G。 "周",因为这大大提高了可用性。如果您遇到处理时间问题,我认为它们不是由于包含开发人员数据的多维数据集的大小。