Parcourir la source

fix(raw/trd): 2026 重分桶 DISTRIBUTE BY 改用分区列名 dt

Spark 2.4 的 DISTRIBUTE BY 按 SELECT 投影后输出列解析,ods_dt 已 AS dt,
故按 ADR-15 约定写 DISTRIBUTE BY dt。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
tianyu.chu il y a 2 semaines
Parent
commit
9cfb35f378

+ 2 - 2
manual/backfill/20260715_ods_trd_card_group_order_info_2026rebucket.sql

@@ -5,7 +5,7 @@
 --       按 ods_dt = COALESCE(update_time,create_time) 的日动态分区写入 ods(等价按天 backfill 的批量版)
 -- 状态:[待执行]
 -- 备注:动态分区 INSERT OVERWRITE 只覆盖 SELECT 出现的 ods_dt(2026 各日),不动 2026 前历史分区;
---       DISTRIBUTE BY ods_dt 防每分区小文件(ADR-15);
+--       DISTRIBUTE BY dt(=投影后的 ods_dt)防每分区小文件(ADR-15);
 --       不做日常 ODS 的 (id,ods_dt) 去重——那是为 raw 48h 双源 union 的同日重叠去重,
 --       dump 是 PG 单次快照、一单一行、无同日重复,去重是空操作,故省。
 --       中间态按决策丢弃:每单只落当前最终态到其最后变更日分区(一单一行,多版本不进 ods)。
@@ -117,4 +117,4 @@ FROM (
     FROM raw.tmp_trd_card_group_order_info
     WHERE dt = '20260716'
 ) t
-DISTRIBUTE BY ods_dt;
+DISTRIBUTE BY dt;