0

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

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

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

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

4

2 回答 2

1

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

-问候迈克B

于 2014-05-07T16:28:04.080 回答
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

即,您只是构建了人工的周、月和季度成员,这些成员并不像列的名称所暗示的那样详细(我在括号中使用了它们匹配的时期的名称来表示这一点。

但是,我不会假设立方体有那么大,这真的应该是一个问题(我无法想象你会有数亿开发人员)。因此,我建议只保留一个常见的粒度,例如“周”,因为这会大大提高可用性。如果您对处理时间有疑问,我认为这不是因为包含开发人员数据的立方体的大小。

于 2014-05-07T16:33:49.830 回答