首页/数据/数据工程与 ETL 速查/源目标对账校验方法
本包目录(311 条)
管道基础52 条Kafka64 条调度与编排40 条数仓建模52 条数据质量50 条
CDC 与同步53 条

源目标对账校验方法

同步校验常用三层:行数对账(分片统计)、主键集合比对(找缺失与多余)、按主键分桶的校验和/哈希比对。校验要按业务主键口径而非物理行数(软删除、重复行会干扰),大表分桶并行、缩窗比对,差异要能定位到主键范围。

行数与校验和(MySQL 侧示例)

行数与校验和(MySQL 侧示例)
SELECT COUNT(*) AS cnt,
       BIT_XOR(CRC32(CONCAT_WS('#', order_id, CAST(amount AS CHAR), status))) AS sig
FROM dw.orders;
行数粗筛:快速发现明显缺失或翻倍
主键集合LEFT JOIN 找单侧缺失的主键
校验和按主键分桶聚合,定位差异桶
抽样全列全量成本高时,抽样 + 重点表全量组合
校验 SQL 两侧的排序、类型转换与 NULL 处理要一致,否则哈希结果天然不同。

易错点

  • 行数相等就判定一致,漏掉同数不同值(金额被覆盖等)
  • 两侧哈希函数或字段顺序不一致,报告大量假差异

数据来源与参考

  • MySQL 官方文档(CRC32 与聚合函数)
  • 行业数据对账与校验实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌