数仓 - [02] 数据仓库模型设计

 

 

一、什么是数据模型

模型,指对于某个实际问题或者客观事物、规律进行抽象后的一种形式化表达方式

数据模型,多指在设计和建立数据库时,用于提供数据表示和操作手段的形式架构

企业数据模型,是企业数据特征的抽象,主要用来体现企业的业务规则以及信息

 

二、数据模型的层次

概念模型:定义了重要的业务概念和彼此的关系,由核心实体或其集合,及实体间的业务关系组成。

逻辑模型:对概念数据模型的进一步分解和细化,描述实体、属性、以及实体与实体之间的关系。

物理模型:

  • 描述模型实体的细节,对数据冗余与性能进行平衡。
  • 关注数据库的物理实现,解决细节技术问题。
  • 需要考虑数据类型、长度、索引等因素,需确定数据平台和架构。

 

三、关系模型

关系数据模型的规范化是一种组织数据的技术。

  • 规范化方法对标进行分节,以消除数据冗余,避免异常更新,提高数据完整性
  • 通过实体关系(E-R)描述企业业务和业务规则

 

关系模型 —— 3NF

  • 数据表的每一列都是不可分割的原子数据项,即字段不可再分;(1NF)

“地址”字段可以再分为“省份”、“城市”、“街道”等更细的子字段。

  • 数据表中的每一行都必须可以被唯一地标识,并且除了主键列外,其他列都完全依赖于主键列。(2NF)

“授课老师”列不完全依赖于主键“学号”,而是依赖于“课程名”。

  • 每个非主键字段不能依赖于其他关系中的字段。(3NF)

 

 

 

 

四、维度模型

 

星型模型

(1)特点

  • 表达维度和事实之间单层关系的模型
  • 事实和每个维度之间都是直连关系
  • 不同维度之间没有任何关联

(2)优点

  • 简化查询
  • 简化业务报表逻辑
  • 提升查询性能
  • 快速聚合
  • 便于向立方体提供数据

 

雪花模型

(1)特点

  • 基于星型模型之上拓展来的
  • 一般是对星型模型的维度表进行了范式化,一个维度被规范化成多个关联的表。
  • 一个规范化的维度对应一组具有层次关系的维度表,表达维度和事实之间多层关系。

(2)优点:规范化的维度属性节省存储空间。

 

星座模型

(1)特点:星型模型的延伸,多张事实表,且共享维度表。

 

 

 

 

 

— 要养成终生学习的习惯 —

posted @ 2024-03-26 09:19  HOUHUILIN  阅读(14)  评论(0编辑  收藏  举报