女装/数据与集成/账实对账与漂移巡检
L0X14D5P0
设计稿 v2.0
‹ 数据质量六维校验幂等与外部回写日志 ›☰ 总览功能地图
王
王运营
总部 · 商品运营

账实对账与漂移巡检

L0 · 台账是真相、缓存是加速层:定时巡检两者的漂移、按阈值告警、可归因的自动写回补数,并将"恢复后校验"作为闭环的最后一关。

巡检作业
6个
每 30 min ~ 每日各频次
本期漂移行
128行
占 159.1 万行的 0.012%
自动写回补数
31行
8 行需人工确认
未解决漂移
2项
盘点未记账 1 行、门店退回在途 1 项
缓存新鲜度
1.2min
SLA ≤ 5 min
恢复后校验
7/7通过
行数/分区/新鲜度/下游一致全部通过

漂移巡检作业(缓存 ↔ 台账)

台账是唯一真相,缓存只是加速层:任何漂移都以台账为准写回
作业 ID作业名称调度频率最近执行耗时(s)扫描行数漂移行数漂移率结论对象
RC-20251021-0930缓存 ↔ 台账漂移巡检每 30 min2025-10-21 09:302.41,591,4001280.012%告警门店库存缓存
RC-20251021-0900门店库存缓存全量对账每日 09:002025-10-21 09:0046.81,204,860420.003%正常门店库存缓存
RC-20251021-0800在途缓存 ↔ 台账对账每 2h2025-10-21 08:008.16,93200.000%正常在途缓存
RC-20251021-0600分区完整性巡检每日 06:002025-10-21 06:0012.692 个分区00.000%正常快照分区
RC-20251021-0300WMS ↔ ERP 账实对账每日 03:002025-10-21 03:00138.4386,540210.005%警告仓库台账
RC-20251020-0930缓存 ↔ 台账漂移巡检每 30 min2025-10-20 09:302.61,582,360960.006%正常门店库存缓存
共 6 个巡检作业 · 漂移率 > 0.02% 自动告警,> 0.05% 自动触发全量对账
每页
!架构原则(X14):台账为真相 + CDC 增量 → 缓存原子扣减。缓存用于实时展示与快速扣减,但一旦与台账发生漂移,必须以台账值写回并留痕。后台巡检是发现漂移的唯一手段 —— 没有巡检,漂移会一直累积到盘点上才暴露。

漂移差异台账

每条漂移必须给出根因与处理动作,"已自动修复"不算根因
差异 ID发现时间对象缓存值台账值差异根因处理动作状态
DR-20251021-00312025-10-21 09:3024AW-3890 / 浙江杭州奥莱店 / F缓存 2台账 0-2盘亏差异单未记账已自动写回台账值 0已恢复
DR-20251021-00302025-10-21 09:3024AW-3714 / 湖北武汉武商摩尔店 / S缓存 7台账 8-1调拨出库 CDC 事件晚到 11s已重放事件并写回 8已恢复
DR-20251021-00292025-10-21 09:3025SS-1108 / 江苏南京新街口店 / M缓存 11台账 9+2调拨入库在缓存侧双写已按台账写回 9,并登记重复事件已恢复
DR-20251021-00272025-10-21 09:00在途汇总(直营仓)缓存 186台账 1860门店退回在途,两侧口径已对齐无需处理一致
DR-20251021-00212025-10-21 09:3024AW-3520 / 浙江嘉兴八佰伴店 / XL缓存 1台账 10盘点差异单未审批,暂不改动挂起至调整单审批后复核挂起
DR-20251021-00182025-10-21 09:3024AW-3668 / 浙江杭州奥莱店 / M缓存 4台账 40—无需处理一致
DR-20251020-00962025-10-20 09:30门店库存缓存(华中)缓存 218,400台账 218,412-12华中 3 家门店 CDC 断流 6 分钟已触发全量对账补数已恢复
共 7 条漂移记录 · 已恢复 5 / 一致 1 / 挂起 1
每页

漂移趋势(近 30 天 · 漂移行数)

趋势上升说明扣减链路或事件消费存在问题
缓存与台账漂移行数 阈值 320 行(0.02%)10-19 断流事件 CDC 断流 6 分钟,漂移峰值 812 行

漂移根因分布

CDC 事件晚到 / 乱序59 行
盘亏差异未记账33 行
调拨入库缓存双写22 行
门店退回在途口径10 行
未知(需人工排查)4 行
阈值项当前值阈值
漂移率0.012%0.020%
单批漂移行数128 行320 行
缓存新鲜度1.2 min5 min
连续告警次数1 次3 次升级

写回补数规则(自动 vs 人工)

自动写回仅限可归因的漂移;未知漂移必须冻结写入并人工介入,禁止盲目覆盖
漂移类型判定条件处理方式是否留痕阈值告警启用
事件晚到 / 乱序缓存值 = 台账值 ± 单笔业务量,且差异可在事件流中找到对应事件自动重放事件并写回台账值是单批 > 50 行告警
缓存双写缓存值 = 台账值 + 等量重复业务量(调拨入库最常见)自动写回台账值,并登记重复事件 ID是同源事件 > 3 次告警
差异单未记账差异可由未闭环的盘点差异单解释挂起,等调整单记账后自动复核是挂起 > 24h 告警
口径差异两侧对"在途/退回"的定义不同不写回,登记为口径问题交数据治理组是立即通知
未知漂移无法归因到任何已知类型冻结该 SKC 的缓存写入,转人工排查是立即告警(严重)

恢复后校验清单(绿灯 ≠ 数据可信)

附录 D 第 15 条:恢复后必须校验行数、分区完整性、新鲜度、下游一致
校验项校验标准实测结论不通过处理
行数校验对账后行数 = 台账行数(门店 × SKC × 尺码)1,204,860 = 1,204,860通过阻断
分区完整性当日 92 个分区全部存在且非空92 / 92通过阻断
数据新鲜度缓存最后更新时间 ≤ 5 min1.2 min通过阻断
下游一致性决策快照重算结果与冻结快照差异 = 0差异 0 行通过阻断
聚合一致性按门店/按 SKC 汇总与台账汇总一致差异 0 件通过告警
抽样核对随机 200 行与 ERP 页面逐行核对200 / 200 一致通过告警
回写补数留痕所有写回动作有 ID、时间、原值、新值、操作人31 条记录完整通过告警

一次漂移事件的处置时间线

从发现到恢复 5 分钟,全链路可审计
09:30:02 · 巡检发现
RC-20251021-0930 扫描 159.1 万行,命中漂移 128 行(0.012%)
09:30:41 · 根因归类
59 行 CDC 事件晚到、33 行盘亏差异未记账、22 行调拨入库缓存双写、10 行口径差异、4 行未知
09:31:05 · 自动写回
可归因的 124 行按台账值写回,登记 31 条写回记录(含原值/新值/ID/时间)
09:31:06 · 挂起 1 行
24AW-3520 / 浙江嘉兴八佰伴店 / XL 挂起至调整单审批
09:31:06 · 转人工 1 项
门店退回在途口径差异转数据治理组,冻结该节点缓存写入
09:34:20 · 恢复后校验
行数 1,204,860 = 台账;92 个分区完整;新鲜度 1.2 min;下游决策快照重算差异 0 行 → 全部通过
09:35:00 · 恢复监控
缓存写入解冻,恢复常规 30 min 巡检频率

巡检与写回参数配置

i互链:盘点差异见 盘点差异与调整单 幂等与重放见 幂等与外部回写日志 SLA 台账见 SLA 与任务运行台账