大家好,我是云祁,好久不见~
今天来和大家聊聊数仓常见的一些建模方法和具体的实例演示,一起来看看吧。
一、为什么需要数据建模?
在开始今天的话题之前,我们不妨思考下,到底为什么需要进行数据建模?
随着从IT时代到DT时代的跨越,数据开始出现爆发式的增长,这当中产生的价值也是不言而喻。如何将这些数据进行有序、有结构地分类组织存储,是我们所有数据从业者都要面临的一个挑战。
如果把数据看作图书馆里的书,我们希望看到它们在书架上分门别类地放置,而不是乱糟糟的堆砌在一起。
大数据的数仓建模正是通过建模的方法,更好的组织、存储数据,以便在性能、成本、效率和数据质量之间找到最佳平衡点,一般我们会从以下面四点考虑:
- 性能:能够快速查询所需的数据,减少数据I/O的吞吐。
- 成本:减少不必要的数据冗余,实现计算结果的复用,降低大数据系统中的存储成本和计算成本。
- 效率:改善用使用数据的体验,提高使用效率。
- 质量:改善数据统计口径的不一致性,减少数据计算错误的可能性,提供高质量的、一致的数据访问平台。
因此,毋庸置疑,大数据系统、数据平台都需要数据模型方法来帮助更好的组织和存储数据,数据建模的工作,也正是围绕上述四个指标取得最佳的平衡而努力。
二、从 OLTP 和 OLAP 系统的区别看模型方法论的选择
OLTP系统通常面向的主要数据操作是随机读写,主要采用3NF的实体关系模型存储数据,从而在事务处理中解决数据的冗余和一致性问题。
OLAP系