[读书笔记]大数据之路-第8章:建模综述

165 阅读2分钟

第8章:大数据领域建模综述

8.1 什么是数据建模

  1. 将数据进行有序有结构的分类组织和存储
  2. 数据模型是从业务,数据存储和使用角度合理存储数据

8.2 数据建模的好处

  1. 提高性能
  2. 降低成本
  3. 提高数据使用效率
  4. 提高数据质量,改善数据统计口径不一致性

8.3 OLTP和OLAP 系统的区别

OLTP 面向的是数据随机读写场景,一般采用3NF的实体关系模型存储数据,一般数据不会冗余,或者有很少的冗余

OLAP 面向的是数据批量读写的场景,不会关注事务的一致性,主要关注数据的整合,以及大数据查询的性能

8.4 常见的数仓建模方法

8.4.1 ER模型

一般是从企业高度设计一个3NF模型,它是站在企业角度面向主题抽象,而不是针对具体的某个业务流程的实体对象关系的抽象

ER模型特点

  1. 需要全面了解业务和数据
  2. 实施周期非常长
  3. 对建模人员能力要求非常高

建模步骤

  • 高层模型(概念模型):高度抽象
  • 中层模型(逻辑模型):在高层模型中细化主题的数据想
  • 底层模型(物理模型):在中层模型基础上考虑物理存储,物理表设计,分区设计等

8.4.2 维度模型

从分析决策的需求出发,关注复杂查询的响应性能,代表模型有:星形模型,雪花模型,星座模型

设计步骤

  1. 选择业务过程
  2. 选择粒度
  3. 识别维表
  4. 选择事实

8.4.3 Data Vault 模型

是 ER 模型的衍生,强调数据的历史性,可追溯性,原子性

8.4.4 Anchor 模型

Anchor 对 Data Vault 模型做了进一步的规范化处理,将模型规范到了6NF ,基本变成了k-v结构化模型。

8.5 阿里巴巴数据模型时间综述

第一阶段

一共只有2层,ods+dss ,没有模型设计

第二阶段

分为4层,采用MPP架构体系,分为ODL(操作数据层)+BDL(基础数据层)+IDL(接口数据层)+ADL(应用数据层)

BDL因采用ER模型导致数据建模效率太低,无法产出

结论:在不太成熟,快速变化的业务面前不太适合用ER建模

第三阶段

Kimball 维度建模为核心的数据模型方式