BI 多维分析中,什么是 cube?什么是维度测度?

假设某企业累积了如下表格所示的销售数据:

imagepng

表格中的每一行存储了某个时间段内某种产品在某地区的销售情况。

在对这样的表数据进行分析时,不同的企业角色都会基于自己感兴趣的业务角度提出相关的问题,比如:

销售经理关心各个地区的销售额,希望找出月销售增长率在平均水平之下的地区;

产品经理需要了解近期内不同产品的销售额对比,便于做后期的产品研发;

总经理想要了解最近半年的产品销售总额,便于调整企业后期的运营······

这些问题中的业务角度,比如地区、产品、时间就是维度,“销售额”就是测度。

在专业术语中,可以这样理解 BI 多维分析中的几个核心概念:

cube


把上图二维表的地区、日期、产品、销售额数据转化为三维立方体格式:

imagepng

这个数据立方体就是一个典型的 cube,它的每一个坐标轴都代表一个业务角度(时间、地区、产品),坐标轴上的坐标值则表示了某个业务角度的一个确定的值(如:天津、1 月份、电脑),不同坐标轴坐标值的交叉点则表示一个具体的销售额。

cube 可以理解成是一个多维数据集,在多维分析中使用者需要基于一个结果集进行拖拽分析,这个结果集就 cube 了,多维分析针对 cube 进行查询、切片、钻取等操作。

维度


维度是人们观察数据的角度。比如“哪种产品销量最好?”主要关注的是产品维度, “哪些地区连续六个月销售额环比增长?”则同时关注了地区和日期两个维度。

数据立方体中,维度可以被抽象理解成一个坐标轴。比如在上面的 cube 中有三个维度:地区、时间、产品,分别对应三维空间的一个坐标轴。维度成员就可以被抽象理解成坐标轴上的坐标值,比如“1 月”、“2 月”这两个维度成员同属于时间维度,它们各自表示了时间维度下一个具体的时间段。

imagepng

维度存在不同的级别,也就是维度成员所描述业务角度的细节程度,可以理解为通过维度成员观察数据的粒度。例如日期维度中 2011 年、1 月这两个成员,分别属于年份、月份两个不同的级别,显而易见,年份级别的维度成员描述数据的粒度较为宽泛,月份级别则较为细致。

测度


测度是决策者所关心的具有实际意义的数值,比如销售额。

在一个数据立方体中,从每个维度上都选取一个确定的维度成员,这些维度成员组合所确定的一个点就是测度值。

imagepng

比如,在这个 cube 中,日期维度:1 月、地区维度:天津、产品维度:电脑就确定了一个最细粒度的数据方块,这个小数据方块就是销售额 5320 这个测度值,它表示“天津地区 1 月电脑产品的销售额是 5320”。

在了解了多维分析的核心概念之后,我们来看一下在多维分析操作页面是什么样的对应关系。

操作演示


安装润乾报表后,启动自带 demo 应用

1、 访问分析界面

URL:http://localhost:6868/demo/raqsoft/guide/jsp/olap.jsp

imagepng

2、 选择数据集,并拖拽生成分析报表

imagepng

这里采用预先准备的 Excel 数据文件。

imagepng

这里的 excel 文件数据集就可以理解为是多维数据集(cube);

在多维分析页面中,签单月、地区是维度,销售额是测度。

使用者可以在多维分析页面操作维度、测度,实现数据统计分析需求。比如统计某个地区下的销售累计:

imagepng

某个地区某月销售额与全年销售额的占比:

imagepng

按签单年、月、日查询产品销售额,并逐级汇总,分析不同时间粒度下的数据:

imagepng