ADS 层是什么
ADS(应用数据层)直接面向消费方:报表、看板、接口、数据导出。它把上游的 DWS 或 DWD 组装成一张张结果表,指标口径、过滤条件、排序规则都在这一层写清楚。判断标准是「谁在用这张表」——有明确消费方的结果集才放 ADS,通用的中间汇总应留在 DWS,否则同一口径会被复制到多张表里,改一次要改一圈。
基本信息
| 面向对象 | 报表、看板、接口、数据导出 |
|---|---|
| 组织方式 | 一表一需求或一类需求 |
| 内容 | 最终指标值加维度与时间 |
| 质量要求 | 每张表可追溯到口径文档 |
| 更新方式 | 按 dt 分区覆盖写 |
| 上游来源 | DWS 汇总表为主,必要时下探 DWD |
看板结果表
看板结果表
INSERT OVERWRITE TABLE ads_order_overview_1d PARTITION (dt='2026-10-11')
SELECT '2026-10-11' AS stat_date,
SUM(order_cnt) AS order_cnt,
SUM(pay_amt) AS pay_amt,
COUNT(DISTINCT user_id) AS buyer_cnt
FROM dws_trade_user_1d WHERE dt='2026-10-11';典型使用场景
- 经营看板:日订单、支付金额、买家数这类每天刷新一次的指标表
- 接口取数:App 首页或运营后台按接口返回的指标结果
- 数据导出:供业务方下载的明细或汇总清单
- 权限隔离:接口只暴露结果表,不直接查底层明细
- 多渠道口径对齐:同一指标给不同渠道时保持同一张表加筛选维度
分层职责对照
| 层 | 职责 | 常见问题 |
|---|---|---|
| DWS | 通用汇总,可被多个下游复用 | 粒度过细导致收益低 |
| ADS | 面向具体消费场景的结果 | 口径被复制成多份 |
| 接口层 | 对结果做字段裁剪与脱敏 | 直接暴露明细带来风险 |
| 口径文档 | 指标定义与计算逻辑 | 缺文档时无人能核对 |
ADS 表常被下游代码直接引用,改字段等于接口变更:新增而不是改名,废弃字段先双写一段再下线。
ADS 表的价值在于「口径写死在一处」:如果同一指标在两张 ADS 表里各算一遍,早晚会出现两个数,最后没人敢确认哪个是对的。
结果表的时间口径要写进字段注释:统计日、数据截止时刻、是否含退款,这三件事不写清楚,下游一定会按自己的理解使用。