1.5 KiB
1.5 KiB
审计记录:删除 DWD 层 dwd_settlement_head_ex.settle_list 冗余列
溯源
- 日期:2026-02-14(Asia/Shanghai)
- Prompt-ID:P20260214-040000
- Prompt 原文:文件保存触发(database/migrations/20260214_drop_dwd_settle_list.sql)— 删除 DWD 层 settle_list 列的迁移脚本
直接原因
settle_list JSONB 列存储结算明细 JSON,与 ODS 层 payload 中的 settleList 对象完全重复。ODS 层 settlelist 列已在同日迁移中删除,DWD 层该列同步清理。DWD 加载映射已移除对该列的写入。
Changed
| 文件/对象 | 变更类型 | 说明 |
|---|---|---|
database/migrations/20260214_drop_dwd_settle_list.sql |
新增 | 迁移脚本:DROP COLUMN settle_list |
billiards_dwd.dwd_settlement_head_ex |
DDL | 删除 settle_list JSONB 列(31→30 列) |
tasks/dwd/dwd_load_task.py |
已修改 | FACT_MAPPINGS 中 dwd_settlement_head_ex 的 settle_list 映射已移除 |
docs/bd_manual/DWD/20260214_drop_dwd_settle_list.md |
新增 | BD 手册 DWD 层变更记录 |
Risk / Verify
- 风险:若 DWD 加载映射未移除
settle_list,装载时将报列不存在错误 → 已确认映射已移除 - 风险:若有下游查询直接引用
dwd_settlement_head_ex.settle_list,将报错 → DWS 层不消费该列 - 验证:
information_schema.columns确认settle_list列不存在 - 验证:DWD 表列数 = 30
- 验证:ODS
payload->'settleList'仍可按需提取 - 回滚:
ALTER TABLE ... ADD COLUMN settle_list JSONB+ 从 ODS payload 回填