–
来,我们直接对照这张流程图用大白话讲解:
-
OLTP层
用来存放原始数据的数据库,不同的数据可能来自于不同的数据库。比如CRM系统的数据来自于oracle数据库,ERP系统的数据来自于mysql数据库。这一层的数据可能是包含不同格式,各种各样的“脏数据”。比如说CRM系统的数据中,性别是用0,1来区分男女,而ERP系统的性别是用M,F来区分。
为了数据质量过关,数据好用,我们就需要对这些数据进行清洗,清洗就要进入到下一层ETL层。
-
ETL层
这一层主要的工作是对数据库中的数据进行提取、转换,然后装载到我们的ODS层。 -
ODS层
这一层是对数据进行存储的地方,也可以称为数据缓冲层。因为这一层的数据不会做过多的分析操作,其数据结构基本上是和OLTP层的数据结构保持一致,可以理解为是从OLTP层copy了一份数据过来。区别在于,比如说OLTP层来自不同数据库的数据中可能性别的表达形式不一致,经过ETL层之后,就会把性别的数据统一起来,统一用0,1表示或者M,F表示。
-
EDW层
当我们把脏数据问题全部清洗完毕后,数据就会录入到EDW层。我们常说数据仓库是面向主题、集成、相对稳定、反映历史变化的数据集合。这句话怎么理解呢?
我们一个一个词拆开来看:
面向主题的: