目前支流的数据仓库分层大多为四层,也有五层的架构,这里介绍根本的四层架构。 别离为数据贴源层(ods)、数据仓库明细层(dw)、多维明细层(dws)和数据集市层(dm)。

  上面是架构图:

  数据分层的目标是:缩小反复计算,防止烟囱式开发,节俭计算资源,靠上档次,越对利用敌对,也对用户敌对,心愿大部分(80%以上)的需要,都用DWS,DW的表来反对就行,所以ODS层数据不能被DM层工作援用,须要抽取数据到DW,或者DWS。

  DWS汇总层应优先调用DW明细层。在调用可累加类指标计算时,DWS汇总层尽量优先调用曾经产出的粗粒度汇总层,以防止大量汇总都间接从海量的明细数据层计算。

  DM层优先调用DWS,视状况小局部能够调用DW,禁止间接调用ODS数据,避免出现适度的ODS层援用、不合理的数据复制以及子集合冗余
DM层工作的深度不宜过大(倡议不超过10层)。

总的来说,数据分层的目标如下:

  • 清晰数据结构:让每个数据层都有本人的作用和职责,在应用和保护的时候可能更不便和了解
  • 简单问题简化:将一个简单的工作拆解成多个步骤来分步骤实现,每个层只解决特定的问题
  • 对立数据口径:通过数据分层,提供对立的数据进口,对立输入口径
  • 缩小反复开发:标准数据分层,开发通用的中间层,能够极大地缩小反复计算的工作

数据贴源层(ods):用来贮存原始数据,同步的脚本和数据的表,要和原始的表有肯定的分割,用于不便数据治理,数据溯源等。个别,同步的脚本,和ods的表要体现源数据库表的特色,个别表名和字段名,字段格局,都和原始表保持一致,同步的模式包含增量同步和全量同步。

数据仓库明细层(dw):这一层寄存的是统一的、精确的、洁净的数据,即对源零碎数据进行了荡涤(去除了杂质)后的数据。一层一般来说是依照维度建模抽取的明细数据。通常是星形或雪花构造的数据。

多维明细层(dws):这一层寄存的是DW层的,一些通用的汇总数据。个别是某个主题的某个维度的汇总数据,用于提供后续的业务查问,OLAP剖析,数据散发等。一般来说,该层的数据表会绝对较少,一张表会涵盖比拟多的业务内容,因为其字段较多,因而个别也会称该层的表为宽表。

数据集市层(dm):该层次要是提供给数据产品和数据分析应用的数据,这层就是依据需要来抽取数据了。

一般来说,数据分层之后,还须要对开发数据的工作,进行标准,比方字段格局,字段名称拼写,主题划分等,不然单纯分层,是不足以建设好一个对开发敌对,不便运维,不便取数的数仓的,这个分层就是一个货物仓库外面各个房间的划分,然而外面货物须要怎么放,放在哪个房间那个地位,我想要某个数据应该怎么找,这个就须要一整套数据开发标准,以及对应的数据地图,数据血缘关系零碎的反对了。

总的来说,数据层是数仓的骨头支架,然而肌肉,心脏等这些器官,对建设一个好的数仓,也很要害。

须要数据仓库材料能够点击这个支付数据仓库(13)大数据数仓经典最值得浏览书籍举荐

参考文章:数据仓库(6)数仓分层设计数仓分层设计")