SSAS中的聚合方式设定:
SSAS一个Cube中的一个度量的聚合方式设置方法:
也就是说,Cube中的聚合方式是针对度量来指定的。
问题:
针对一种特殊的需求,要求先按照时间做平均聚合运算,再根据空间做求和运算。
其实这种说法字面上看起来本身就很矛盾,所以得套到一个具体的场景中。
比如:我有一个数据仓库统计某几个小区的某一时间粒度(这里定义成季度)的住户数量,里面的数据格式大致如下:
2011年1季度,1100,A小区
2011年2季度,1000,A小区
2011年3季度,1100,A小区
2011年4季度,1000,A小区
2011年1季度,1200,B小区
2011年2季度,1200,B小区
2011年3季度,1100,B小区
2011年4季度,1100,B小区
先从时间这个角度来分析数据,A小区在2011年的住户数,很明显应该是取平均值(当然也有取第四季度的值的统计方法,这里只考虑平均值的统计方法),应该是1050,B小区的就应该是1150。
然后再从空间的角度来分析数据,所有小区(这里假定只有A和B)的在2011年的住户数,应该是1050+1150=2200。很明显这是一个汇总算法。
这就是典型的先根据时间做平均运算,再根据空间做汇总运算,而且这里很明显,SSAS默认的聚合方式的指定是无法实现这种统计需求的。
解决方法:
通过计算公式,或者新建命名成员。
首先,建立测试表。
然后,根据这个DW结构建立测试Cube。
其中指标的聚合方式按照默认的Sum.
其中时间维度有如下的层次结构:
建立命名成员,表达式关键的部分是那个求叶级节点总和,从而求平均数的公式。
处理浏览
如图:纵向的时间聚合运算是用的平均值运算,而横向的区域聚合运算用的是求和运算。
需要注意的地方:
要留意维度中的null成员。默认是带null成员的,所以需要手动把null处理掉,否则会导致函数算出的数值不准确,因为Count出的数把null也算上了所以分母会加1。
总结:
统计的需求总是很莫名其妙甚至看上去不合逻辑,但实际联系需求却又很合理。就算任何一家BI产品提供商恐怕也很难顾及到所有的需求,不过都会给我们留下变通解决的接口或者方法。
分享到:
相关推荐
ssis,ssrs,ssas-6年使用笔记近期整理成册,适合新-初级BI技术和数据分析人员。全实战经验记录从技术选型到如何搭建企业数据平台bi。内容见目录: 开发方案选择 九大数据仓库方案特点 数据仓库方案选择 开发环境...
Microsoft SQL Server 2008 Analysis Services Step by Step.pdf
无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分...
无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分...
无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一部分...
无论是商业智能(BI)编程新手还是经验丰富的老手,都可从《SQL Server 2008商业智能完美解决方案》中获益。 目录 -------------------------------------------------------------------------------- 第一...
在SSAS(SQL Server Analysis Services)中构建Cube和编写MDX
SSAS(Sql Server Analysis Service)在许多不需要实时而具有海量或需要足够灵活的分析模型中,SSAS比传统的sql有很大的优势,比如性能和用户可定制性。性能上的优势体现在mdx 语句对比大数据量sql聚合函数上;而可...
BI SSAS 通过配置表动态权限控制实例项目 来源:http://www.cxfeel.cn/blog/article/95.htm
SSAS-Analysis Services.rar
在分析服务(Analysis Services)出现后的若干年里,已跃居商业智能(BI)联机事务处理(OLAP)市场的前列。Analysis Services 2008提供了一个高性能、低成本、易实现的联机事务处理(OLAP)引擎,内置更多的企业分析方法、...
两种SSAS测试方法在销售信息数据挖掘建模中的应用.pdf
解决ssas部署时总报错误 1 元数据管理器中存在错误。 “时间 ~MC”多维数据集所引用的 ID 为“时间”、名称为“时间”的维度不存在。 元数据管理器中存在错误。 从文件“\\?\C:\Program Files\Microsoft SQL ...
SSAS 多维模型的最佳实践 维度设计 CUBE设计 聚合设计 分区设计
附件是介绍如何在Excel2007中使用SSAS这个OLAP。
文档列出了本次考核所涉及到的五部分内容(SQL管理及T-SQL、SSIS及SSAS、网络及硬件、Oracle及DB2,其他)的知识点和考查点,以及为了学习这些知识需要阅读的参考资料清单。 2、“02 参考资料内容”文件夹——包含...
Microsoft SSAS project code
微软SSAS培训,sqlserver2005商业智能平台
SSAS使用手册包括OLAP,SSAS相关介绍,概念说明,UML统一维度模型的建立、及创建SSAS项目、父子维度、分区、聚合等函数的使用
VS2005 SSAS多维分析VS2005 SSAS多维分析