一、数仓建模目的
访问性能:数据快速查询,减少io
数据成本:减少数据冗余,计算结果服用,降低存储和计算成本
使用效率:改善用户应用体验,提高使用数据效率
数据质量:改善数据统计口径的不一致,减少数据计算错误的可能性,提工高质量、一致的数据访问平台
二、数仓建模方法
1、维度建模:按照事实表、维表来构建
星型模型:一个事实表+多个维表
雪花模型:一个或多个维表通过维表连接到事实表
星型模型和雪花模型的区别:
查询性能:在oltp(联机事务处理)星型模型更占优,在olap(联机分析处理)雪花模型更占优
模型复杂度:雪花模型更复杂
层次结构:雪花模型层次清晰
存储:雪花模型不存冗余数据
2、范式建模(三范式建模法)
(1NF) 原子性,数据不可拆分
(2NF) 唯一性,一个表只说明一个事务,所有列依赖于主键
(3NF) 每个非主属性不能依赖于其他关系属性
3、Data Vault模型
4、Anchor模型