数仓建模

维度建模的基本概念

维度建模是专门用于分析性数据库、数据仓库、数据集市的建模方法。与传统的关系性建模方法相比它增加了“维度表”与“事实表”两个概念。

维度表

表示对分析主题所属类型的描述。如:上周天我在天猫花费了200元购买了一副蓝牙耳机,那么以购买主题进行分析,我们可以提取出三个维度:时间维度(上周天)、地点维度(天猫)、商品维度(蓝牙耳机)。通常来说维度表比较固定,数据量比较少。

事实表

表示对分析主题的度量。如:上面那个例子中200元就是一个事实信息。事实表中不久包含了度量信息(实表的度量通常为数值类型),还包含了与各维度表相关联的外键,后面可以通过join的方式与维度表关联。通常事实表中的数据量会不断增加,表规模迅速增大。

维度建模的三种模式

星型模式

星型模式是最常见的建模方式,它是由一个事实表与一组维表组成,它具有如下几个特点:

维表只与事实表关联,维表之间没有关联

事实表中会存放维表的主键

以事实表为核心,维表围绕核心成星型形状

雪花模式

雪花模式是对星型模式的扩展,每个维表可以继续向外连接多个子维表。雪花模型相当于把星型模型中的大维表拆分为多个小维表,满足了数据库设计规范。雪花模型在实际数仓建模中运用比较少,因为这种设计模式会增加开发的查询难度。

星座模式

星座模式也是星型模式的扩展,星座模式中允许存在多个事实表,同时一个维表表可能会被多个事实表引用。在业务发展的后期,绝大部分维度建模都采用星座模式。

对比三种维表建模方式

雪花模式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值