迟到数据的窗口与回刷
上游数据迟到会造成跨天补数:为迟到设定容忍窗口(例如 2 小时),窗口内到达的数据直接重跑当日分区;超出窗口的进入修正批次,并触发受影响日期的局部回刷。关键是提前把「迟到怎么算、算到哪一天」写成口径,而不是每天靠人工判断。
基本信息
| 判定依据 | 业务时间与装载时间不同日 |
|---|---|
| 容忍窗口 | 按业务容忍度设定 |
| 窗口内 | 重跑当日分区 |
| 超窗 | 进入修正批次 |
| 回刷范围 | 只重算受影响日期 |
典型使用场景
- 上游接口偶发延迟:窗口内到达的数据重跑当日,不惊动历史
- 跨月补数:月末数据迟到时按受影响日期局部回刷,不整月重跑
- 权限与结算类数据:口径上倾向回溯调整历史日期,而不是延迟入账
- 统计类报表:口径上倾向按到达日入账,避免历史数字反复变化
- 监控告警:迟到量超过阈值时通知上游,而不是静默重跑
迟到数据判定
迟到数据判定
-- 业务时间属于昨天、但今天才装载的记录,即为迟到数据
SELECT order_id, pay_amt, create_time, etl_load_time
FROM stg_order
WHERE create_time < '2026-10-12 00:00:00' -- 业务上属于前一天
AND etl_load_time >= '2026-10-12 00:00:00'; -- 今天才到达
-- 处置:窗口内归入昨日分区并重跑昨日;超窗则记入修正批次表并登记回刷范围两种口径的差异
| 口径 | 做法 | 表现 |
|---|---|---|
| 回溯调整 | 修正历史业务日期 | 历史数字变化,需通知消费方 |
| 延迟入账 | 按到达日计入 | 历史稳定,当日数据偏高 |
| 混用 | 无统一规则 | 报表反复变动且无法解释 |
迟到处理策略必须写进口径文档:延迟入账还是回溯调整,直接决定报表数字是否会在几天后变化,也是消费方投诉最多的来源。
迟到数据直接按当天入账而不记录修正批次,跨天数据会落在错误日期,日粒度报表的数字会被反复改动,财务对账无法闭合。