目录

  • 1. OLTP、OLAP、HTAP
  • 2. 数据仓库的特点
  • 3. 数据仓库分层
  • 4. 事实表和维度表
  • 5. 星型模型和雪花模型


1. OLTP、OLAP、HTAP

  1. OLTP:联机事务处理,特点是事务操作频繁、数据量小,基于ER模型。比如ERP系统、CRM系统、电商系统
  • 三范式:第一范式:每一列都具有不可分割的原子性;第二范式:实体的唯一性,每个列都和主键相关,消除数据冗余;第三范式:列和列之间不存在传递依赖
  • ER模型:实体关系模型
  1. OLAP:联机分析处理,特点是没有事务性操作,主要用于查询数据进行分析,为决策提供帮助,数据量大。比如数据仓库

2. 数据仓库的特点

  1. 面向主题的:根据分析需求对数据进行组织,划分成多个主题,如用户、商品主题
  2. 数据集成的:针对主题,将多个分散的数据源进行集成
  3. 非易失的:数据仓库的数据主要应用是查询分析,一般很少更新和删除数据
  4. 时变的:每天都会有新的数据进来,一般保留5~10年的数据

3. 数据仓库分层

将一个复杂的数据处理分解成多个小的步骤来处理,不同的层完成不同的工作,使数据处理的架构更加清晰,出现问题更容易被发现,同时减少了重复的数据开发工作,使数据查询效率和速度变快

  1. ODS源数据层
    源数据层,数据储存在不同的数据源,数据格式也不同。一般是业务数据库、日志文件、埋点数据。采用范式建模。同步到该层可以采用ETL工具Nifi等
  2. DWD数仓明细层
    对ODS层的数据进行ETL,对缺失值、重复值、异常值进行处理,并对不同数据源的数据进行格式处理,以一致的格式保存在DWD层,数据粒度和ODS一样。采用范式建模
    有时为了提高明细数据的易用性,会将维度表的数据放到事实表中
  3. DWM数仓中间层
    对多个维度进行数据聚合,产生中间表数据。有时可以省略该层。采用维度建模
  4. DWS数仓服务层
    针对某个主题,聚合形成大宽表数据。数据来源为DWD和DWM层。采用维度建模
  5. ADS数据应用层
    根据具体的需求构建数据,是高度汇总的数据,针对于特定场景,如报表展示、数据分析和挖掘。采用维度建模

4. 事实表和维度表

  1. 事实表
    一个数据仓库根据不同的主题可以形成多个事实表。事实表包含多个key,与维度表进行join关联,事实表同时包含多个数值类型的计算字段。事实表的数据量会越来越多
  2. 维度表
    维度表是对特定实体的各种属性进行描述,如商品维度表、用户维度表。维度表数据量往往较少,变化也少

5. 星型模型和雪花模型

  1. 星型模型

以事实表为中心,所有的维度表直接与事实表关联,维度表和维度表没有连接

数据仓库模式 知乎 数据仓库最基本的模式_OLAP

  1. 雪花模型

以事实表为中心,有的维度表直接与事实表关联,有的维度表和维度表连接。相对于星型模型更规范,但join的表多,OLAP的性能更差,一般数据仓库中用的少

数据仓库模式 知乎 数据仓库最基本的模式_星型模型_02