| 保留 | 维度外键列 |
|---|---|
| 约束 | 弱约束/校验代替 |
| 保障 | 加载校验 + 巡检 |
sql
sql
SELECT count(1) FROM fact_order f LEFT JOIN dim_user d ON f.user_sk=d.user_sk WHERE d.user_sk IS NULL;不建物理外键不等于不要求完整性:校验链路要建起来。
数仓事实表保留维度外键但通常不建数据库级外键约束(影响加载性能);引用完整性靠 ETL 校验与对账保障。
| 保留 | 维度外键列 |
|---|---|
| 约束 | 弱约束/校验代替 |
| 保障 | 加载校验 + 巡检 |
SELECT count(1) FROM fact_order f LEFT JOIN dim_user d ON f.user_sk=d.user_sk WHERE d.user_sk IS NULL;