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

来源:互联网 发布:js prototype 阮一峰 编辑:程序博客网 时间:2024/04/30 11:32

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

 

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))


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


变成宽表如下




0 0
原创粉丝点击