数据异动排查
场景描述
某天早上,运营同学发现昨日 GMV 环比下降了 15%,需要你尽快分析原因并给出结论。
五步排查法
第一步:确认异动
- 口径确认:GMV 的计算口径是否与历史一致?是否有口径变更?
- 数据质量:上游数据是否完整?是否有延迟、丢数?
- 基线选取:环比 vs 同比——如果是周末效应,应该看周同比而非日环比
-- 确认 GMV 趋势
SELECT dt, SUM(amount) AS gmv
FROM order_fact
WHERE dt BETWEEN DATE_SUB(CURRENT_DATE, 14) AND CURRENT_DATE
GROUP BY dt
ORDER BY dt;
第二步:维度拆解
沿核心维度逐层下钻,找到异动的主要贡献来源:
| 拆解维度 | 示例 |
|---|---|
| 渠道 | App / H5 / 小程序 |
| 地区 | 华东 / 华南 / 华北 |
| 品类 | 服装 / 3C / 食品 |
| 用户类型 | 新客 / 老客 |
| 设备 | iOS / Android |
-- 按渠道拆解 GMV
SELECT dt, channel,
SUM(amount) AS gmv,
LAG(SUM(amount)) OVER (PARTITION BY channel ORDER BY dt) AS prev_gmv
FROM order_fact
WHERE dt IN (CURRENT_DATE - 1, CURRENT_DATE - 2)
GROUP BY dt, channel;
贡献度分析
使用贡献度公式定量判断哪个维度造成了最大影响:
如果 App 渠道贡献了 80% 的下降,就重点分析 App 渠道。
第三步:根因定位
GMV = 流量 × 转化率 × 客单价,拆解漏斗各环节:
第四步:验证假设
- 交叉验证:推送到达率数据是否与 UV 下降时间吻合?
- 反事实分析:未受推送影响的渠道(H5)是否正常?
- 历史对比:类似推送故障在历史上的影响幅度?
第五步:输出结论
结论:昨日 GMV 环比下降 15%,主要原因是 App 渠道推送服务在 10:00-18:00 故障,导致 App UV 下降 20%。H5 和小程序渠道正常。建议修复推送服务并补发推送。
常见面试问题
Q1: 面试中遇到"XX 指标下降了 20%,你怎么分析"?
答案:
按照 MECE + 漏斗 思路回答:
- 确认数据:口径、数据质量、基线
- 公式拆解:将指标拆为乘法 / 加法因子
- 维度下钻:找到最大贡献维度
- 根因假设:结合业务背景提出假设
- 验证输出:用数据验证并给结论和建议
Q2: 如何区分"技术原因"和"业务原因"导致的异动?
答案:
| 维度 | 技术原因 | 业务原因 |
|---|---|---|
| 时间特征 | 突然断崖式变化 | 渐进式变化 |
| 影响范围 | 某个渠道 / 地区突然消失 | 全维度均匀下降 |
| 数据质量 | 上游数据缺失 / 延迟 | 数据完整正常 |
| 排查方法 | 查日志、监控告警 | 查业务动作(活动结束、竞品促销) |
Q3: 数据异动分析报告应该包含哪些内容?
答案:
- 概述:什么指标、什么时间、下降/上升多少
- 影响评估:影响的用户量 / 金额
- 根因分析:拆解过程和根因
- 建议:短期止血 + 长期预防
- 附录:详细数据表格