BI-CUBE

  • BI-Cube概念
  • 图解
  • 基本概念
  • sql中的cube用法
  • 帆软实现cube用法
  • powerBI实现cube用法



BI-Cube概念

Cube是指全称是多维立方体,就是在不同位置存放数据的立方体,主要是用于支持联机分析应用(OLAP)。
Cube的使用就是在处理数据时,把所需要的数据进行打包,尤其针对要处理的数据很大的时候,比如FineBI的FineCube,可以避免建模,数据处理起来会很快。

图解

在网上找到的一张比较直白的图如下所示

kimball和 innmon 数据仓库模型_BI


上面的的图中,数据有三维:1.产品2.地域3.时间。

从以上图中也可以看出cube的好处就是可以多维度进行数据分析。

cube的好处就是按照设计好的维度,把事实表的数据直接聚合得到结果,然后存放在cube中,需要的时候按照维度去取cube中的数据即可。

如果数据量不大可以不打cube,如果数据量大,进行数据展示经常需要group by,就适合打cube。

不打cube的好处是,可以直接用TSQL查询数据表信息,不需要设计cube,而且查询cube需要使用MDX语言,如果对cube不熟悉,这些都需要花时间去了解。

基本概念

Cube是联机分析的关键。他们是一种多维结构,包含原始事实数据、聚合数据,这些数据聚合允许用户快速进行复杂的查询,Mdx语言就应用它更是如鱼得水。

Cube包含两个基本概念:维度和度量
维度(Dimension):维度提供了分类描述,表示一类分析角度,用户通过维度分析度量数据。比如上图中的三个维度:时间、产品、地域

度量(Measures):度量表示用来聚合分析的数字信息,度量的集合组合成了一个特殊的维度。如数量、销售额等。

级别(Level):一个维度上可以包含的层次结构,表示特定的分类。如上图中地域维度可以包含的级别层次级:国家、省、市;时间维度包含的级别层次包含:年、季度、月、日等。

成员,是最重要的概念之一,一个成员是维度(包括度量)上的项目值。如上图时间维度上”年“级别的成员就包含:2000,2001,2002,2003…月成员包含:1、2、3等。

计算成员,是一种运行通过特殊表示式动态计算的成员。也就形成了度量(Measures)的结果。计算成员不影响现有的Cube数据,它基于cube数据,通过各种数学表达式和各种函数定义,可以创建复杂的表达式。任何动态分析功能,都可以通过计算成员实现,比如实现占比,同期比等等。

kimball和 innmon 数据仓库模型_数据_02

sql中的cube用法


帆软实现cube用法

powerBI实现cube用法