DW ODS DWD DWM DWS ADS

notion image
notion image

DW

Data warehouse(可简写为DW或者DWH)数据仓库,是在数据库已经大量存在的情况下,它是一整套包括了etl、调度、建模在内的完整的理论体系
数据仓库的方案建设的目的,是为前端查询和分析作为基础,主要应用于OLAP(on-line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。目前行业比较流行的有:AWS Redshift,Greenplum,Hive等。
数据仓库并不是数据的最终目的地,而是为数据最终的目的地做好准备,这些准备包含:清洗、转义、分类、重组、合并、拆分、统计等

分层的好处

  • 清晰数据结构:让每个数据层都有自己的作用和职责,在使用和维护的时候能够更方便和理解
  • 复杂问题简化:将一个复杂的任务拆解成多个步骤来分步骤完成,每个层只解决特定的问题
  • 统一数据口径:通过数据分层,提供统一的数据出口,统一输出口径
  • 减少重复开发:规范数据分层,开发通用的中间层,可以极大地减少重复计算的工作

ODS|数据运营层

Operation Data Store 数据准备区,也称为贴源层。数据源中的数据,经过抽取、洗净、传输,也就是ETL过程之后进入本层。
CDC MQ 接入后进入本城
职责:存储来自不同源系统的原始数据,保持数据的原始性和完整性。 设计思路:ODS层通常设计为与源系统表结构相似,以便于数据的快速导入和更新。数据在这一层不进行任何业务逻辑处理

DW 数据仓库层

DWD 数据细节层

data warehouse details,DWD
保持和ODS层一样的数据颗粒度;主要是对ODS数据层做一些数据的清洗和规范化的操作,比如去除空数据、脏数据、离群值等。
为了提高数据明细层的易用性,该层通常会才采用一些维度退化方法,将维度退化至事实表中,减少事实表和维表的关联。

DWM 数据中间层

Data Warehouse Middle,DWM;
在DWD层的数据基础上,对数据做一些轻微的聚合操作,生成一些列的中间结果表,提升公共指标的复用性,减少重复加工的工作。
简答来说,对通用的核心维度进行聚合操作,算出相应的统计指标

DWS 数据服务层

Data Warehouse Service,DWS;
DWM上的基础数据,整合汇总成分析某一个主题域的数据服务层,一般是宽表,用于提供后续的业务查询,OLAP分析,数据分发等。
一般来说,该层的数据表会相对较少;一张表会涵盖比较多的业务内容,由于其字段较多,因此一般也会称该层的表为宽表。

DIM | 维度层

(Dimension Table)或维表,有时也称查找表(Lookup Table)
职责:存储维度数据,为DW层的事实表提供上下文信息。 设计思路:维度表包含描述性信息,如时间、地点、产品等,用于对事实表中的数据进行分类和分析。维度表设计应保证数据的一致性和可查询性。

Fact Table | 事实表

事实表是指存储有事实记录的表,比如系统日志、销售记录等。事实表的记录在不断地增长,比如电商的商品订单表,就是类似的情况,所以事实表的体积通常是远大于其他表。

ADS | 数据应用层

 
Application Data Service,ADS;
一般会存放在ES、Redis、PostgreSql等系统中供线上系统使用;也可能存放在hive或者Druid中,供数据分析和数据挖掘使用,比如常用的数据报表就是存在这里的。
职责:提供针对特定应用或业务需求优化的数据视图和聚合数据,支持高效的数据查询。 设计思路:ADS层根据业务需求设计,可以是高度汇总的数据集、数据立方体或特定业务逻辑的数据集合。这一层的数据通常是为了满足特定的报表或分析工具的需求而设计。
Loading...
目录
文章列表
王小扬博客
产品
Think
Git
软件开发
计算机网络
CI
DB
设计
缓存
Docker
Node
操作系统
Java
大前端
Nestjs
其他
PHP