首页/数据/数仓建模速查/事实表粒度测试方法
维度与事实设计149 条

事实表粒度测试方法

粒度声明后必须用测试验证:主键去重后行数是否相等、同键是否多行、空主键占比;测试 SQL 固化进交付物。

数仓建模速查数据更新于 2026-10-12
测试 1count(*) = count(distinct pk)
测试 2主键空值率
测试 3样本键唯一性抽查

粒度校验

粒度校验
SELECT
  count(1) AS rows_all,
  count(DISTINCT order_id) AS rows_distinct,
  count(1) - count(DISTINCT order_id) AS dup_rows,
  sum(CASE WHEN order_id IS NULL OR order_id = '' THEN 1 ELSE 0 END) AS null_key_rows
FROM dwd_order WHERE dt = '2026-10-12';
粒度测试在上线前与每次重大变更后都要跑,作为验收证据留存。

易错点

  • 只测总量不测唯一键,重复悄悄存在
  • 空主键行不处理,关联时集中落未知成员

数据来源与参考

  • 数仓测试实践:粒度校验
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌