数据质量告警
质量校验不是"过了就完事":失败明细要能定位到门店 / SKC / 决策行,影响面要量化到"多少行建议因此不可信",阻断与告警要分开处置,降级放行要双签留痕,恢复后必须做四项校验。
校验规则
12条
阻断 8 条 · 告警 4 条
本次触发告警
3条
DQ-004 / DQ-008 / DQ-009
本次阻断
0次
阻断规则全部通过,出单已放行
近 7 日阻断
3次
放行 2 · 拒绝 1(要求先修数)
样本期失败记录
82条
口径:0507 决策样本 14,968 行实测
恢复后校验
4/4
行数 · 分区完整性 · 新鲜度 · 下游一致
i本页口径:失败条数/失败率取自 0507 决策样本(14,968 行)实测,用于暴露长期存在的结构性问题;「本次状态」为 2025-10-21 决策批次的校验结果。两者列在同一张表,是为了避免"本次绿灯"掩盖"样本长期异常"。
| 规则编号 | 维度 | 校验规则 | 对象 | 处置策略 | 失败条数 | 失败率 | 本次状态 | 影响门店 | 影响 SKC | 影响决策行 | 处置动作 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| DQ-001 | 规范性 | 门店编码必须匹配主数据字典 | 门店 | 阻断 | 0 | — | 通过 | — | — | — | 不适用(本次 0 失败) |
| DQ-002 | 规范性 | SKC 编号符合 年季+波段+流水号 规则 | 商品 | 阻断 | 2 | — | 通过 | 2 家 | 2 个 | — | 异常 SKC 剔除候选池,通知商品主数据 owner 修正 |
| DQ-003 | 完整性 | 决策行尺码明细不得全部为空 | 决策表 | 阻断 | 3 | — | 通过 | 3 家 | 3 个 | 3 行 | 阻断出单 → 补齐尺码明细 → 从「清洗」步续跑 |
| DQ-004 | 完整性 | 门店档案面积/库容/陈列容量必填 | 门店 | 告警 | 18 | 1.7% | 告警 | 18 家 | — | — | 降级:本次不启用陈列/库容约束,需数据 + 业务双签放行 |
| DQ-005 | 准确性 | 尺码明细之和 = 合计列(允许空值不算 0) | 决策表 | 阻断 | 1 | — | 通过 | 1 家 | 1 个 | 1 行 | 阻断 → 剔除该行后出单(空值 ≠ 0,累加会漏) |
| DQ-006 | 准确性 | 库存不得为负值 | 库存 | 阻断 | 2 | — | 通过 | 2 家 | 2 个 | 2 条 | 阻断 → 触发盘点差异五步流(X12)→ 过账后重跑 |
| DQ-007 | 一致性 | 决策表门店编号必须存在于门店主数据 | 决策表 | 阻断 | 0 | — | 通过 | — | — | — | 不适用(本次 0 失败) |
| DQ-008 | 一致性 | 在单在途量 ≤ 单据未收数量 | 在途 | 告警 | 5 | 0.4% | 告警 | 5 家 | 5 个 | 5 条 | 告警:在途口径复核,不阻断出单 |
| DQ-009 | 时效性 | POS 流水同步延迟 ≤ 2 小时 | 销售 | 告警 | 51 | 4.1% | 告警 | 51 家 | 214 个 | 8,976 行 | 降级:改用上一日流水预估,双签放行 + 决策表页眉标注 |
| DQ-010 | 时效性 | 决策快照生成时间 = 决策日 00:00±30min | 快照 | 阻断 | 0 | — | 通过 | — | — | — | 不适用(本次 0 失败) |
| DQ-011 | 可访问性 | ERP 取数接口可用率 ≥ 99.5% | 接口 | 告警 | 0 | — | 通过 | — | — | — | 不适用(本次 0 失败) |
| DQ-012 | 可访问性 | 外部回写接口鉴权失败次数 = 0 | 接口 | 阻断 | 0 | — | 通过 | — | — | — | 不适用(本次 0 失败) |
共 12 行每页
六维校验结果(X15 · GB/T 36344-2018)
规范性 / 完整性 / 准确性 / 一致性 / 时效性 / 可访问性| 维度 | 校验内容 | 异常数 | 异常率 | 状态 |
|---|---|---|---|---|
| 规范性 | 维度编码、日期格式、必填项、枚举值 | 128 | 0.94% | 达标 |
| 完整性 | 决策行字段缺失率、尺码明细覆盖 | 46 | 0.31% | 关注 |
| 准确性 | 数值区间、合计=明细、负值检测 | 21 | 0.14% | 关注 |
| 一致性 | 跨表口径一致、门店商品主数据匹配 | 12 | 0.08% | 达标 |
| 时效性 | 取数时间、同步延迟、批次新鲜度 | 7 | 0.05% | 达标 |
| 可访问性 | 接口可用率、鉴权失败、限流拒绝 | 3 | 0.02% | 达标 |
影响面量化(DQ-009 POS 延迟)
- 涉及门店
- 51 家(占 85 家门店的 60.0%)
- 涉及 SKC
- 214 个(占 382 个的 56.0%)
- 影响候选行
- 8,976 行(占候选池 14,968 行的 60.0%)
- 影响销量流水
- 约 386,204 条中 21% 未到齐
- 业务后果
- 销量低估 → 目标库存偏低 → 缺货风险(非超储)
- 降级方案
- 改用上一日流水预估,本次批次页眉标注「数据降级」
- 恢复条件
- POS 延迟回到 ≤ 2 小时且分区完整,重跑「取数 + 清洗」步
阻断 vs 告警:两种处置策略
阻断不是"卡住业务",是"不让不可信的数据进入单据"| 策略 | 触发条件 | 系统动作 | 放行权限 | 责任人 |
|---|---|---|---|---|
| 阻断 | 尺码明细全空、明细 ≠ 合计、库存为负、主外键不匹配、快照时点超窗 | 拦截出单,批次标记「数据不可信」,禁止自动放行;修复后从失败步骤续跑 | 数据 owner + 业务 owner 双签;单批次有效期 | 李工 / 张主管 |
| 告警 | 档案字段缺失、在途口径偏差、同步延迟、接口可用率 | 允许继续出单,但影响面写入批次元数据,供事后归因;owner 需在 SLA 内闭环 | owner 自闭环(无需审批) | 对应模块 owner |
| 降级放行 | 阻断类失败无法在业务截止时间前修复 | 按降级方案继续(不启用相关约束 / 用上一日流水),决策表页眉强制标注 | 双签 + 有效期 ≤ 1 个批次 + 事后复核 | 数据 + 业务 owner |
放行审批链
近 7 日 3 次阻断:放行 2 · 拒绝 110-16 02:16 · DQ-005 明细 ≠ 合计(1 行)
阻断出单 → 申请放行(剔除该行)→ 李工 → 张主管 → 通过;有效期当日批次
10-18 02:24 · DQ-003 尺码明细全空(3 行)
阻断出单 → 申请放行(3 行不参与出单)→ 双签通过;10-20 复核:SKC 补录完成
10-19 02:31 · DQ-006 负库存(2 条)
阻断出单 → 放行申请被拒(要求先过账)→ 06:40 过账后重跑,四项校验全绿
10-21 02:20 · DQ-009 POS 延迟(51 家)
降级放行:改用上一日流水;有效期 1 个批次;待复核(10-22 09:00 前)
10-21 02:22 · DQ-008 在途口径(5 条)
告警类,无需审批,仅记录影响面并在台账标注
放行审批台账
每一条放行都要能找到"谁批的、凭什么批、多久有效、事后有没有复核"| 申请时间 | 触发规则 | 影响面 | 降级方案 | 审批链 | 结论 | 有效期 | 事后复核 |
|---|---|---|---|---|---|---|---|
| 2025-10-16 02:16 | DQ-005 | 1 家门店 / 1 个 SKC / 1 行决策 | 剔除该行(不参与出单) | 李工 → 张主管(业务) | 放行 | 当日批次 | 10-17 复核:明细修正后重跑一致 |
| 2025-10-18 02:24 | DQ-003 | 3 家门店 / 3 个 SKC / 3 行决策 | 3 行不参与出单,其余正常 | 李工 → 张主管(业务) | 放行 | 当日批次 | 10-20 复核:3 个 SKC 尺码明细补录完成 |
| 2025-10-19 02:31 | DQ-006 | 2 家门店 / 2 个 SKC / 2 条库存记录 | 申请以 0 库存替代负值 | 李工 → 张主管(业务,拒绝) | 拒绝 | 不适用 | 改走盘点差异五步流,06:40 过账后重跑通过 |
| 2025-10-21 02:20 | DQ-009 | 51 家门店 / 214 个 SKC / 8,976 行候选 | POS 用上一日流水 + 增量补偿 | 李工(数据)→ 张主管(业务) | 放行 | 2025-10-21 单批次 | 待复核:10-22 09:00 前核对流水补齐率 |
| 2025-10-21 02:22 | DQ-008 | 5 家门店 / 5 个 SKC / 5 条在途记录 | 不降级(告警类,不影响出单) | owner 自闭环(周工) | 记录 | 不适用 | 在途口径复核对账后归档 |
共 5 行每页
恢复后必须校验(四项)
G-15 · 附录 D 第 15 条| 校验项 | 方法 | 判定阈值 | 责任人 | 不通过的后果 |
|---|---|---|---|---|
| ① 行数比对 | 源表 count 与目标表 count 逐步对齐 | 取数/清洗/候选/决策四段行数闭合 | 李工 | 禁止出单,回到失败步骤 |
| ② 分区完整性 | 校验分区文件数、分区边界、空分区 | 分区数与预期一致,无空分区 | 赵工 | 重跑缺失分区,不出单 |
| ③ 新鲜度 | 快照生成时点 ≤ 决策日 00:30,同步延迟 ≤ 2h | 超阈值即降级或阻断 | 李工 | 降级放行需双签 |
| ④ 下游一致性 | ERP/WMS 回执与决策表逐单核对数量 | 数量一致率 100%,幂等键无重复 | 孙工 | 回滚已下发单据 |
绿灯不等于数据可信
任务跑成功、界面全绿,只说明"程序没有报错",不说明"数据可以被业务使用"。恢复后四项校验(行数 / 分区完整性 / 新鲜度 / 下游一致)才是放行依据 —— 缺任何一项,批次结论都只能写「已恢复但未验证」。
恢复演练记录(近 30 日)
每次恢复都必须留下四项校验结论| 时间 | 故障 | 恢复方式 | 耗时 | 四项校验 |
|---|---|---|---|---|
| 2025-10-19 02:41 | 门店库容字段缺失导致求解不可行 | 修主数据 + 从约束步续跑 | 44 秒 | 全绿 |
| 2025-10-12 03:02 | 盘点未过账导致负库存 2 条 | 过账 + 重跑取数/清洗 | 18 分 40 秒 | 全绿 |
| 2025-10-08 02:22 | POS 同步中断 4 小时 | 补数 + 重跑 + 降级比对 | 1 小时 06 分 | 全绿 |
| 2025-09-28 02:14 | 快照分区缺失 1 个(85 家门店之一) | 重跑缺失分区 | 12 分 18 秒 | 新鲜度不达标 |
i演练价值:9-28 那次恢复后第 ③ 项(新鲜度)不达标被拦下 —— 若只按"任务成功"放行,当日决策会用到滞后 6 小时的库存快照。