数据模型
概念解释
维度:环境(多个的角度),eg卖家、店铺等
事件:度量,或者解释业务的一个行为
粒度:事件表中的组成单位
数据模型实质上就是对整合的数据进行统一管理(数据仓库)
模型设计
范围:by语句后的字段一般情况都属于维度
选者维度或新建维度
确定主维度表
确定相关为维度表
确定维度属性(尽量丰富,多)
维度一致性的表现形式
如果不同数据域的计算过程使用的维度不一致,就会导致交叉探查 存在问题。
当存在重复的维度,但维度属性或维度属性的值不一致时, 会导致交叉探查无法进行或交叉探查结果错误
- 共享维度
- 一致性上卷(包含关系-父与子)
- 交叉属性
维度整合
- 数据整合
数据——>数据仓库(数据集成的几种方式)
- 主从表关系
- 直接合并
- 不合并
- 维表整合
- 垂直整合、拆分
- 水平整合、拆分
维度设计的两种方案
- 不同分类化为不同的维度
- 维度单一维度,尽量包含所有的属性
维度变化类型
- 缓慢变化维
- 快照维度表
- 极限储存
- 微型维度
特殊维度
- 递归层次
- 行为维度
- 多值维度
- 多值属性
- 杂项维度
模型分层
操作数据层ODS
公共维度模型层CDM
- 明细数据层DWD
- 汇总数据层DWS
应用数据层ADS
基本原则
高内聚低耦合
核心模型与扩展模型分离
公共处理逻辑下沉单一
成本与性能平衡
数据回滚
一致性
命名清晰可理解
事实表设计
度量业务过程事实类型
- 可增加性事实
- 半可加性事实
- 不可加性事实
事实表分类
- 事务事实表(原子事实表)
- 周期快照事实表
- 积累快照事实表
设计方法
- 1、选者业务过程
- 2、声明粒度
- 3、声明维度
- 4、确定事实
Data Vault
ER模型
Anchor模型
如果维度不一致的话,会导致表内容重叠或者查找数据时,根据维度查找造成冲突