Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 多维数据集度量粒度随时间变化_Date_Ssas_Olap Cube_Granularity - Fatal编程技术网

Date 多维数据集度量粒度随时间变化

Date 多维数据集度量粒度随时间变化,date,ssas,olap-cube,granularity,Date,Ssas,Olap Cube,Granularity,我们的IT经理要求我构建一个SSAS环境,在这个环境中,相同的数据按照不同的粒度存储,具体取决于数据的使用年限 例如,我们有一个由工程师完成的项目数量和类型决定的计分制。对于上个月获得的积分,我们希望以一周的粒度存储和处理这些数据;对于上个季度获得的积分,我们希望以一个月的粒度存储和处理这些数据;对于过去三年获得的积分,我们希望以一个季度的粒度存储和处理这些数据。其想法是,这将减少处理多维数据集所涉及的工作量 这在一个立方体中是可能的吗?我的研究表明,情况似乎并非如此。我们的IT部门负责人表示,

我们的IT经理要求我构建一个SSAS环境,在这个环境中,相同的数据按照不同的粒度存储,具体取决于数据的使用年限

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

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

那么,在一个立方体里有可能吗?如果不是,用多个多维数据集实现它会有什么好处,还是我们应该忘记它(不是我想返回的答案,但它就是它本身)?我们目前运行的是2008R2,但即将升级到2014年,多维模型和表格模型在这方面有什么区别吗?

我认为有可能——您考虑过SSA表格吗?

-问候
MikeB

你可以按照以下思路做一些事情:

假设时间层次结构为年-季度-月-周(忽略定义周如何聚合为月的确切规则这一稍微无关的问题),您可以按如下方式设置时间层次结构:

    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
一,。E您只需构建人工的周、月和季度成员,这些成员的详细程度不如列的名称所示(我在括号中使用了它们匹配的期间的名称来表示这一点)


然而,我不认为多维数据集有那么大,这真的应该成为一个问题(我无法想象你会有数亿开发人员)。因此,我建议只保留一个通用粒度,例如“week”,因为这大大提高了可用性。如果您在处理时间方面遇到问题,我不会认为这是由于包含开发人员数据的多维数据集的大小造成的。

我认为这会起作用。基本上,如果我理解正确,作为更新多维数据集基础数据仓库的一部分,请确保日期维度只有一天的时间r上个月每周,上个季度每个月一天,过去三年每个季度一天。同时,更新与日期维度关联的表中的日期,使所有日期都与该特定日期匹配(如该期间的第一天)。或者只是更新其他日期,而不考虑日期维度本身。结合Mike B.的提示,这应该会产生一些不错的演示。我之前有点说错了,B/c我想存储实际日期,只是将其聚合到更高的级别,但这将作为实际日期仍将存储在其他位置。