数仓建模—分层建设理论
简单点儿,直接ODS+DM就可以了,将所有数据同步过来,然后直接开发些应用层的报表,这是最简单的了;当DM层的内容多了以后,就会发现有很多重复的逻辑,分散在不同的任务中,一旦变更就会牵一发而动全身,为了解决这个问题,就会再拆分一个公共层出来,变成3层架构,整个过程有点类似代码重构,就是在实践中不断的进行抽象、提取公共部分。
数仓的建模或者分层,其实都是为了更好的去组织、管理、维护数据,所以当你站在更高的维度去看的话,所有的划分都是为了更好的管理。小到JVM 内存区域的划分,JVM 中堆空间的划分(年轻代、老年代、方法区等),然后是软件结构的设计,例如微服务,大到国家的省市区的划分,无一例外的都是为了更好的组织管理
所以数仓分层是数据仓库设计中十分重要的一个环节,优秀的分层设计能够让整个数据体系更容易理解和使用
其实数据仓库的发展大致经历了这样的三个过程:
- 简单报表阶段:这个阶段,系统的主要目标是解决一些日常的工作中业务人员需要的报表,以及生成一些简单的能够帮助领导进行决策所需要的汇总数据。大部分表现形式为数据库和前端报表工具。
- 数据集市阶段:这个阶段,主要是根据