数据仓库建模(维度建模)-维表设计

本文探讨了数据仓库与数据库的区别,介绍了星型模型、雪花模型和星座模型,重点讨论了维度设计,包括选择维度、确定主维表、相关维表和维度属性。此外,还讲解了维度一致性的重要性和缓慢变化维的处理方法,包括重写、添加维度行和维度列。
摘要由CSDN通过智能技术生成

数据仓库与数据库的区别

数据库:用于日常的事务处理,存储数据量相对较小,对于存储和查询都有相应的优化,但是对于历史数据量很大的情况下就不适用了。
数据仓库:OLAP 用于大数据量的数据分析处理,优化了查询对于写操作并没太大的优化,因此在大数量方面的查询,支持复杂的查询分析,侧重于决策支持。
数据仓库建模方式通常使用维度建模法,建立相应的事实表与维度表。例如星型模型,雪花模型和星座模型。

  • 星型模型
    每一个维表都与都与事实表相关联。数据冗余量较大
  • 雪花模型
    有些维表可能不与事实表直接关联,而是通过其他维表关联到事实表。数据冗余量较小
  • 星座模型
    由多个事实表相组合,维表是公共的。企业中一般都是星座模型

星型模型和雪花模型的区别

星型模型的数据冗余量相对于雪花模型要大,但是在复杂分析的效率上面来讲,星型模型的效率会更高一点,因为在复杂分析时Join的次数可以减少。

维度设计

维度设计的过程其实就是确定维度属性的过程,维度属性的优劣决定了维度使用的方便性。数据仓库的能力与维度属性的广度和深度成正比。

维度设计方法
  • 选择维度或新建维度 在数据仓库中维度必须唯一,只允许有一个维度定义 如商品
  • 确定主维表
  • 确定相关维表 从业务过程出发 确定哪些相关维表与主维表存在关联。
  • 确定维度属性
    以淘宝商品维度为例,从主维表( s_auction_auctions )和类目、SPU 、卖家、店铺等相关维表中
    选择维度属性或生成新的维度属性。<
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值