我的IT经理要求我构建一个SSAS环境,其中相同的数据以不同的粒度存储,具体取决于它的年龄。
例如,我们有一个点系统,由工程师完成的项目数量和类型决定。我们希望以一周的粒度存储和处理这些数据,以获得上个月赚取的积分,上个季度赚取的积分为一个月,过去三年赚取的积分为一个季度。这样做的想法是,这将减少处理多维数据集所涉及的工作量。
这甚至可以在一个立方体内吗?我的研究表明它似乎并非如此。我们IT部门的负责人说,在他以前的公司,他们能够按照这些方式做一些事情,但这可能是对幕后发生的事情的误解,因为他并不过分技术性。这是我们公司为生产而建造的第一个立方体,我们之前都没有做过,但我对这个年轻职业发展的主题感兴趣,并且正在带头。我的想法是,如果在单个多维数据集中不可能,那么维护多个多维数据集实际上会为我们的开发人员带来更多工作,同时也为服务器带来更多工作。更不用说用户的额外复杂性了。
那么,是否可以在一个立方体内?如果没有,用多个立方体实现它会有什么好处,或者我们应该忘记它(不是我想回来的答案,但它是什么)?我们目前运行2008R2但很快升级到2014年,这方面的多维和表格模型有什么区别吗?
答案 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。 "周",因为这大大提高了可用性。如果您遇到处理时间问题,我认为它们不是由于包含开发人员数据的多维数据集的大小。