Răsfoiți Sursa

docs(kb): 92 changelog 工作 3 完整 E2E 收官

hive-import + hdfs-export 两条链路均通过冒烟
老脚本全删;47 单测;插入项(mask / ADR-01/02/03 / kb/94 / CLAUDE.md sync 约定)并行落地

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
tianyu.chu 1 săptămână în urmă
părinte
comite
bbe07f98ae
1 a modificat fișierele cu 1 adăugiri și 0 ștergeri
  1. 1 0
      kb/92-重构进度.md

+ 1 - 0
kb/92-重构进度.md

@@ -198,3 +198,4 @@
 | 2026-04-23 | **kb/93 新增 2 条架构 ADR 草案 + kb/90 §2.6 联动**:(a) kb/93 §3 决策清单从"待补充"填入 ADR-01(按天补数归 DS,DataX 入口不做日期展开)+ ADR-02(分布式分发归 DS worker group,DataX 不重复随机),两条状态 = 草案、等正式拍板转"已采纳"。背景 / 决策 / 后果 / 候选方案 / 反悔条件五段精简写法。(b) kb/90 §2.6 后延 ADR 低优先级"日期范围展开"条追加"可能不做"备注指向 ADR-01;新增"DataX 仅本机执行"条(低优先级)指向 ADR-02。破例:CLAUDE.md 里 kb/93 "暂不改动除非显式要求",本次用户显式要求开口 | — |
 | 2026-04-23 | **DataX 新入口脚本落地(工作 3 批次 4)**:新建 `bin/datax-hive-import-starter.{sh,py}` + `bin/datax-hdfs-export-starter.{sh,py}`。bash 壳 source `bin/common/init.sh` 初始化 env 后 `exec python3` 到主入口;.py 用 argparse 解析老参数平迁集(-ini / -inis / -start-date / -stop-date / -host / -random / -parallel / -skip-datax + import 专有的 -skip-partition / -t),构造 `DataxImport` / `DataxExport` 门面调 `run`。`tests/integration/datax/hive_import/README.md` 冒烟命令切到新入口 `-ini` 语法。老 `datax-{single,multiple,multiple-hive}-job-starter.{sh,py}` + `datax-job-config-generator.py` 暂不删(批次 5 做,等冒烟 2 通过) | — |
 | 2026-04-23 | **工作 3 批次 5 收官:删老 DataX 脚本 + kb 整理(工作 3 整体 ✅)**:新增 `dw_base/datax/cli.py`(`python -m dw_base.datax.cli gen-json` 子命令,内部调 `JobConfigGenerator`)+ 3 条单测;`runner.py` 的 gen 调用从 `bin/datax-job-config-generator.py` 切到 `-m dw_base.datax.cli gen-json`;删 7 个老文件(`bin/datax-{single,multiple,multiple-hive}-job-starter.{sh,py}` + `bin/datax-job-config-generator.py`);顺带清 `dw_base/datax/plugins/plugin.py:4` 死 `import pwd`(Windows 单测 import 阻塞)。联动 kb/90 §2.6 标 ✅(retention 规则保留正文),kb/91 §4.3 老脚本使用说明整段删、保留 §4.4 老分发/日志查证档案给 kb/93 ADR-02 做背景。整套单测 46 条全过。至此工作 3 六批次(批次 0-5)全部完成:术语 memory / §2.6 压缩 → workers 外配 → 冒烟 1 → 脱敏配置化插入 → 工作 3 三聚簇 → 新入口 → 冒烟 2 ✅ → 删老 | — |
+| 2026-04-23 | **工作 3(DataX 改造)完整 E2E 收官**:两条链路端到端验证全部通过。hive-import:PG `public.app_user_cert_info` → Hive `test.raw_usr_app_user_cert_info_inc_d`,62 行数据带 `cert_birthday` `month_trunc` 脱敏生效(源 PG 端 `TO_CHAR` 执行、敏感原值不出业务库)。hdfs-export:Hive raw → PG `test.ads_usr_app_user_cert_info_export`,62 行原样回写、PG 侧 count 一致。新入口 `bin/datax-{hive-import,hdfs-export}-starter.{sh,py}` 接管全部 DataX 调度入口;老 7 脚本已删;`dw_base/datax/` 7 模块(path_utils / worker / partition / runner / batch / entry / cli / mask) + 47 单测。冒烟过程暴露 + 顺手修的 bug:`plugin.py` 死 import pwd、`postgresql_reader` querySql 需 List 格式、`postgresql_writer` writeMode 字段误留(DataX pg writer 不支持)、`runner` PYTHONPATH 注入与远端 cd、`entry` ini 相对路径按 `base_dir` 解析不靠 cwd、`mysql_reader` 残留 import 已删包。插入项并行落地:脱敏配置化(mask 模块 + `[mask]` 声明式 + `kb/90 §2.6` 高优先级标 ✅) + `kb/93` ADR-01/02/03 草案(补数 / 分布式 / 零点漂移) + `kb/94` 新建重构对比文档(首节 DataX 22 项) + `CLAUDE.md` 加 agent commit 后自动 sync 约定。memory 新沉淀 2 条(术语纪律 / 验证前不删) | — |