多维分析的本质计算是什么?能作什么又不能作什么?

多维分析主要面向业务用户提供数据查询分析服务,因为业务人员不懂 SQL,也没法完成多表关联(有意义的查询常常是基于多表的),因此在多维分析建模阶段须要将多表转换成单表,也就是 CUBE。这样用户就能够很方便地经过基于一个结果集(CUBE)进行拖拽查询,从不一样的角度(维度)观察数据(测度)。ide

在多维分析中主要的计算就是按照某一个或一些维度汇总测度,如按地区汇总销售额,按年和产品汇总销量等。从运算角度来看,多维分析的本质计算就是:函数

基于一个表的分组汇总指针

若是用 SQL 来表达,多维分析的本质就是:blog

SELECT D,…, SUM(M), … FROM C WHERE D’=d’ AND … GROUP BY D,…产品

即对数据立方体按某些维度分组汇总某些测度。其中 C 是数据立方体,D,…是选出维度,M,…是聚合测度,聚合函数也能够不是 SUM。D’是切片维度,切块时条件为 D IN (d,…),WHERE 中还能够增长针对某些测度的条件,通常也就是选出某个区间内的值。it

针对一个结果集(CUBE),多维分析能够进行切片 / 切块、旋转、钻取 / 上卷等操做。class

1. 切片
切片是指针对 CUBE,选择维中固定值进行分析,好比固定时间维度分析地区和产品的销量状况。
imagepng可视化

2. 旋转
旋转也称行列变换,是指维度从行到列或者从列到行,旋转是为了知足用户观察数据的不一样习惯。
imagepng搜索

3. 钻取
钻取是从粗粒度到细粒度观察数据的过程,好比咱们发现某个汇总值出现异常,就能够经过钻取查看明细数据,找到异常缘由。钻取能够从汇总到明细,从上级到下级…
imagepngim

从多维分析的本质及其操做来看,多维分析只能完成简单的分组汇总、过滤计算,这在实际业务中还远远不够。常见的固定报表业务,一些报表很难经过简单的分组聚合来实现,常常要编写上千行的 SQL 或存储过程,并且固定报表的表格样式可能很复杂,这些都是多维分析没法实现的。

这种报表数据处理逻辑复杂,每一个格子可能对应不一样的数据来源,计算逻辑也不同,在样式方面则会出现表头混乱,大格套小格,动态区域和静态区域混合的状况。
imagepng

这里列举了复杂报表的特色: 传说中的中国复杂报表都长什么样?有什么特色? 这些类型的报表都没法经过多维分析拖拽出来。

事实上,固定报表和自助报表(多维分析)面向的需求场景很不同,而在 BI 系统中每每会包含三部份内容,固定报表、多维分析和可视化,其中可视化能够由前两部分实现,但固定报表和多维分析每每是不可或缺的,两者相互配合,优点互补。认清了多维分析的能量圈,才能在 BI 系统建设中有的放矢,避免踩坑。

对多维分析和 BI 技术感兴趣的同窗还能够搜索“乾学院”,上面有整套的免费“商业智能”技术课程。

相关文章
相关标签/搜索