数据仓库——数据建模

数据仓库——数据建模

  • 数据建模指的是对现实世界各类数据的抽象组织,确定数据库需管辖的范围、数据的组织形式等直至转化成现实的数据库。
  • 将经过系统分析后抽象出来的概念模型转化为物理模型
    • 性能:良好的模型能帮我们快速查询需要的数据,减少数据的IO吞吐
    • 成本:减少数据冗余、计算结果复用、从而降低存储和计算成本
    • 效率:改善用户使用数据的体验,提高使用数据的效率
    • 改善统计口径的不一致性,减少数据计算错误的可能性

ER建模

  • 数据仓库之父Bill Inmon推崇ER建模
  • Bill Inmon希望达到的“single version of the truth”。
  • 从全企业的高度设计一个3NF模型的方法,用实体加关系描述的数据模型描述企业业务架构,站在企业角度面向主题的抽象,而不是针对某个具体业务流程的实体对象关系抽象。
  • 简而言之,第一范式就是无重复的列。
  • 简而言之,第二范式就是非主属性完全依赖于主关键字。
  • 简而言之,第三范式就是属性不依赖于其它非主属性。
  • 优缺点
    • 优点:规范性较好,冗余小,数据集成和数据一致性方面得到重视
    • 缺点:需要全面了解企业业务、数据和关系;实施周期非常长,成本昂贵;对建模人员的能力要求也非常高,容易烂尾。

维度建模

  • 数据仓库大师Ralph Kimball 倡导维度建模
  • 《The DataWarehouse Toolkit-The Complete Guide to Dimensona Modeling》,中文名《数据仓库工具箱》
  • 维度建模以分析决策的需求构建模型,因此它重点解决用户如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能,更直接面向业务。
  • 维度建模中有一些比较重要的概念:
    • 事实表
      • 发生在现实世界中的操作型事件,其所产生的可度量数值,存储在事实表中。从最低的粒度级别来看,事实表行对应一个度量事件,反之亦然。
    • 维度表
      • 每个维度表都包含单一的主键列。维度表的主键可以作为与之关联的任何事实表的外键,当然,维度表行的描述环境应与事实表行完全对应。维度表通常比较宽,是扁平型非规范表,包含大量的低粒度的文本属性。
    • 度量值
      • 度量值是对一次行为的度量
    • 优缺点
      • 优点:技术要求不高,快速上手,敏捷迭代,快速交付;更快速完成分析需求,较好的大规模复杂查询的响应性能
      • 缺点:维度表的冗余会较多,视野狭窄

对比分析

  • ER建模是面向应用,遵循第三范式,以消除数据冗余为目标的设计技术。
  • 维度建模是面向分析,为了提高查询性能可以增加数据冗余,反规范化的设计技术。
属性维度模型关系模型
数据总量
可读性容易
表个数
查询速度
冗余度
对实时表的情况增加宽度字段比较少,冗余低
扩展性
实施难度低,周期短高,周期长
适用场景快速变化行业、战术性投入、直接面向客户成熟行业、战略性投入、不直接面向客户
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱慕。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值