1. 星型模式

星形模式(Star Schema)是最常用的维度建模方式。

星型模式是以事实表为中心,所有的维度表直接连接在事实表上,像星星一样。

星形模式的维度建模由一个事实表和一组维表成,

且具有以下特点:

a. 维表只和事实表关联,维表之间没有关联;

b. 每个维表主键为单列,且该主键放置在事实表中,作为两边连接的外键;

c. 以事实表为核心,维表围绕核心呈星形分布;

数据仓库 星型结构 数据仓库星座模型_建模

 

 

2. 雪花模式

雪花模式(Snowflake Schema)是对星形模式的扩展。

雪花模式的维度表可以拥有其他维度表的,虽然这种模型相比星型更规范一些,但是由于这种模型不太容易理解,维护成本比较高,而且性能方面需要关联多层维表,性能也比星型模型要低。所以一般不是很常用。

数据仓库 星型结构 数据仓库星座模型_表关联_02

 

 

3.星座模式

星座模式是星型模式延伸而来,星型模式是基于一张事实表的,而星座模式是基于多张事实表的,而且共享维度信息。

前面介绍的两种维度建模方法都是多维表对应单事实表,但在很多时候维度空间内的事实表不止一个,而一个维表也可能被多个事实表用到。

在业务发展后期,绝大部分维度建模都采用的是星座模式。

 

数据仓库 星型结构 数据仓库星座模型_数据仓库 星型结构_03