一、数仓建模的目标
访问性能:能够快速查询所需的数据,减少数据I/O。
数据成本:减少不必要的数据冗余,实现计算结果数据复用,降低大数据系统中的存储成本和计算成本。
使用效率:改善用户应用体验,提高使用数据的效率。
数据质量:改善数据统计口径的不一致性,减少数据计算错误的可能性,提供高质量的、一致的数据访问平台。
所以,大数据的数仓建模需要通过建模的方法更好的组织、存储数据,以便在性能、成本、效率和数据质量之间找到最佳平衡点。
二、关系模式范式
关系型数据库设计时,遵照一定的规范要求,目的在于降低数据的冗余性和数据的一致性,目前业界范式有:
第一范式(1NF):
域都是原子性的,即数据库表的每一列都是不可分割的原子数据项。
例如下面这张表:
ID 商品 商家ID 用户ID
1 4件毛衣 B0001 U00001
“商品”字段就不是原子性的,可以分割成“4件”和“毛衣”。
第二范式(2NF):
在1NF的基础上,实体的属性完全依赖于主关键字,不能存在仅依赖主关键字一部分的属性,也就是不存在局部依赖。
例如下面这张表:
学生ID 所属系&nbs

本文介绍了数仓建模的目标,包括访问性能、数据成本、使用效率和数据质量的平衡。接着讲解了关系模式范式,如1NF、2NF和3NF,强调了范式在降低冗余和保证一致性中的作用。文章着重讨论了ER实体关系模型和维度建模,包括各自的特点、应用场景和优缺点。ER模型适合OLTP系统,而维度建模适用于分析场景,如星型和雪花模型。最后,文章提到了数据库及数据仓库模型设计的三个步骤:概念模型、逻辑模型和物理模型,以及常用的数据模型工具如ERwin和PowerDesigner。
订阅专栏 解锁全文
1262

被折叠的 条评论
为什么被折叠?



