跳至主要內容
数据仓库分层:从 ODS 到 ADS 的完整链路

数据仓库分层:从 ODS 到 ADS 的完整链路

前言

如果你做过数据开发,一定听过"数据仓库分层"这个词。ODS、DWD、DWS、ADS——这四个缩写几乎出现在每一份数据架构文档里。但你真的理解每一层该放什么、不该放什么吗?

本文将从零开始,带你彻底理解数据仓库分层的设计思想,并附上实战案例,帮助你搭建企业级的数据分层架构。


一、数据仓库为什么要分层

1.1 一个没有分层的反面案例

假设你接到一个需求:"给业务方出一张用户交易日报"。你写了如下 SQL:

-- 直接从业务库的订单表关联用户表,加上一堆 CASE WHEN
SELECT
    u.id,
    u.name,
    o.amount,
    CASE WHEN o.status = 1 THEN '已支付'
         WHEN o.status = 2 THEN '已退款'
         WHEN o.status = 0 THEN '待支付'
         ELSE '未知'
    END AS status_desc,
    DATE(o.created_at) AS order_date
FROM orders o
JOIN users u ON o.user_id = u.id
WHERE o.created_at >= '2026-06-01'

郑天祺大约 24 分钟数据治理ODSDWDDWSADS