数仓项目数仓分层

1、为什么要数仓分层?

(1)数仓分层存在性:

首先需要理解数仓分层的概念并不是客观存在的,它是多数人的主观的臆断;所谓存在即合理,之所以要怎么分层就是很多人一开始就这么分,然后一致使用下来发现也跟预想的一样。于是,就有了数仓的层次概念。

(2)数仓分层的好处:
  • 清晰数据结构:每一个数据分层都有它的作用域和职责,在使用表的时候能更方便地定位和理解

  • 减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算

  • 统一数据口径:通过数据分层,提供统一的数据出口,统一对外输出的数据口径

  • 复杂问题简单化:将复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解。当数据出现问题之后,不用修复所有的数据,只需要从有问题的步骤开始修复。

  • 屏蔽原始数据的异常:不必改一次业务就需要重新接入数据。

2、数仓层级分类

  1. ODS层(Operational Data Source 操作数据源):这一层的数据绝大部分都是直接从业务数据通过增量或者全量拉过来的,数据基本和业务库是一致的。考虑到以后数据追溯的问题,这一层测数据最好不要做任何过多的数据清洗,清洗过程一般放在DWD层例如:电商行业中的每天的订单详情表、APP页面的点击、曝光、埋点数据详情表;
  2. DWD层(Data Warehouse Detail 数据明细层):该层一般保持和ODS层一样的数据粒度,对ODS层中的数据进行脱敏、剔脏等动作,一般不影响数据结构,仅仅对数据的条数产生影响;例如:剔除用户信息表中性别不应该出现除男女以外的数据【只是举个例子,对于性别这种表单,一般采取的选择的形式,不会让用户自行发挥】
  3. DWM层(Data Warehouse middle 数据中间层):根据DWD中的数据进行简单的聚合处理形成的中间层数据,这部分数据一般具备初步的统计意义和常用属性;例如:用户各品类的购买金额、累积消费额等等;
  4. DWS层(Data Warehouse Service 数据服务层):该层也称为主题层,也就是我们常说的宽表。该层的数据已经具备分类主题,且对应的表的数量相对较少。例如:按照业务区分商品主题、供应链主题、用户主题、流量主题等等;
  5. ADS层(Application Data Service 数据应用层):该层的数据就是根据数据报表的需求,用了做报表展示、公司周报、月报、季报和年报等等;常用的BI工具有:PowerB、FineBI、Tableau、Oracle Apex等;
Logo

永洪科技,致力于打造全球领先的数据技术厂商,具备从数据应用方案咨询、BI、AIGC智能分析、数字孪生、数据资产、数据治理、数据实施的端到端大数据价值服务能力。

更多推荐