Kylin概念理解

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

Cube包含两个基本概念:维度和度量

维度(Dimension):维度提供了分类描述,表示一类分析角度,用户通过维度分析度量数据。比如三个维度:时间、产品、地域

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

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

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

给定一个数据模型,我们可以对其上的所有维度进行组合,对于N个维度来说,组合的所有可能是2^N种。对于每一种维度组合,将度量做聚合运算,然后将运算的结果保存为一个物化视图,成为cuboid,。所有维度组合的cuboid作为一个整体,称为cube。即:一个cube就是许多按维度聚合的物化视图的集合。

 

星形模型

Kylin概念理解_第1张图片

星形模式是一种多维的数据关系,它由一个事实表(Fact Table)和一组维表(Dimension Table)组成。每个维表都有一个维作为主键,所有这些维的主键组合成事实表的主键。事实表的非主键属性称为事实(Fact),它们一般都是数值或其他可以进行计算的数据;而维大都是文字、时间等类型的数据,按这种方式组织好数据我们就可以按照不同的维(事实表主键的部分或全部)来对这些事实数据进行求和(summary)、求平均(average)、计数(count)、百分比(percent)的聚集计算,甚至可以做20~80分析。这样就可以从不同的角度数字来分析业务主题的情况。

星形模型:所有维度表连接到事实表上的时候,整个图就像一个星星,故称之为星型模型。星型架构是一种非正规化的结构,多维数据集的每一个维度都直接与事实表相连,不存在渐变维度,所以数据有一定冗余。因为有冗余,所以很多统计不需要做外部的关联查询,因此一般情况下效率比雪花模型高。

  雪花模型:当有多个维度表没有直接连接到事实表上,而是通过其他维度表连接到事实表上时,其图形就像雪花,故称雪花模型。雪花模型的优点是减少了数据冗余,所以一般情况下查询需要关联其他表。在冗余可接受的前提下使用星型模型。

星型模型和雪花模型的区别在于:维度表是直接连接到事实表还是其他维度表。

 

你可能感兴趣的:(Kylin概念理解)