0
点赞
收藏
分享

微信扫一扫

5.2.2.1、SSAS-维度-父子维度改宽表维度


维度-父子维度改宽表维度

 

1          父子维度

父子维度即自引用表结构,好处是可以建立不固定深度的树形结构,非常的灵活。

 

2          宽表维度

类似日期维度,固定了各个层级,然后通过“层次结构”来建立各个层级间的关系。对于OLAP系统来说,统一的结构具有更强的可读性,可分析性,所以在很多时候我们都会将父子维度转换成宽表

 

3          例,以地区为例,可以分省-市-区-街道、省-市-县-镇-村等等,使用父子表可以很方便的解决这样的数据结构

父子维度表结构如下:

Create table Area(
areaIdint primary key identity(1,1),
areaName varchar(100),
parentAreaId int
)


但是在多维分析中,如果使用父子维度的话,我们无法确定第三级是区还是县,第四级是街道还是镇,这将给分析带来很大的困扰

 

而如果采用宽表的话,我们将会固定各个层级,如省-市-区县-街道镇,有所取舍,目的是利于分析,如下

Create table Area(
areaId int primary key identity(1,1),
pvAkey varchar(50), --省
pvName varchar(100),
ctAkey varchar(50), --市
ctName varchar(100),
ctyAkey varchar(50), --区县
ctyName varchar(100),
townAkey varchar(50), --街道镇
townName varchar(100)
)


转换成宽表后,我们可以建立各种层次结构以便于分析,两种结构如下图

5.2.2.1、SSAS-维度-父子维度改宽表维度_表结构

变成宽表如下

5.2.2.1、SSAS-维度-父子维度改宽表维度_表结构_02



举报

相关推荐

0 条评论