Browse Source

refactor: 删除空壳模块 ml/elasticsearch/flink/validation

tianyu.chu 2 weeks ago
parent
commit
9b86d64274

+ 0 - 3
dw_base/elasticsearch/__init__.py

@@ -1,3 +0,0 @@
-#!/usr/bin/env /usr/bin/python3
-# -*- coding:utf-8 -*-
-

+ 0 - 3
dw_base/flink/__init__.py

@@ -1,3 +0,0 @@
-#!/usr/bin/env /usr/bin/python3
-# -*- coding:utf-8 -*-
-

+ 0 - 3
dw_base/ml/__init__.py

@@ -1,3 +0,0 @@
-#!/usr/bin/env /usr/bin/python3
-# -*- coding:utf-8 -*-
-

+ 0 - 3
dw_base/validation/__init__.py

@@ -1,3 +0,0 @@
-#!/usr/bin/env /usr/bin/python3
-# -*- coding:utf-8 -*-
-

+ 2 - 4
kb/90-重构路线.md

@@ -487,13 +487,11 @@ sql = "... WHERE TABLE_SCHEMA='%s' ..." % (database, table_name)
 
 | 模块/文件 | 状态 | 建议 |
 |----------|------|------|
-| `dw_base/validation/__init__.py` | 空文件 | 删除或实现数据质量校验 |
-| `dw_base/ml/a.py` | 空文件 | 删除 |
-| `dw_base/flink/__init__.py` | 空文件 | 删除(除非计划使用 Flink) |
-| `dw_base/elasticsearch/__init__.py` | 空文件 | 删除 |
 | `dw_base/database/mongodb_utils.py` | 约 80% 是注释掉的旧代码 | 清理注释 |
 | `conf/datax/` 下全部内容 | 已废弃的旧配置 | 保留少量样例,其余删除 |
 
+> `dw_base/{validation,ml,flink,elasticsearch}/` 四个空壳模块已于 2026-04-20 删除,详见 `92-重构进度.md`。
+
 ## 六、测试体系搭建(中优先级)
 
 ### 6.1 现状

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

@@ -162,3 +162,4 @@
 | 2026-04-20 | **UDF 提升为顶层模块(重构计划外)**:`dw_base/spark/udf/` → `dw_base/udf/`。动机:UDF 是独立能力域(后续会高频扩展、需本地单测),不应锁死在 `spark/` 子树里。联动:`dw_base/__init__.py:27` 常量、`bin/spark-sql-starter.py` + `bin/excel_to_hive.py` 文件头 SQL 样例注释、`dw_base/udf/common/spark_common_udf.py` 模块 docstring、`kb/00-项目架构.md`(目录树新增 `udf/` 行 + 模块职责表 + Mermaid 节点)、`kb/23-标签体系.md §5` bitmap UDF 注册路径。`bin/spark-sql-starter.py:172-173` 用的是常量自动生效 | — |
 | 2026-04-20 | **修正 §7.1 pyspark 误记**:前期文档把 pyspark 列进强依赖 KEEP 行 + "pyspark 2.4.0 固定" 一句,均与真实的 `requirements.txt` 不符。真实机制:`findspark==2.0.1` 运行时定位 CDH 集群已装 PySpark,版本随集群走,客户端不固定也不入 `requirements.txt`。kb/90 §7.1 表格 KEEP 列去 pyspark + "后续事项"末行改为 findspark 机制说明 | — |
 | 2026-04-20 | **UDF 模块重组(重构计划外)**:独立 `dw_base/spark/udf/` 目录结构为 `common/`(通用 UDF,SparkSQL 入口自动 `ADD FILE` 注册)+ `business/`(业务专用 UDF,SQL 中按需 `ADD FILE` 加载)两类。(a) 6 份源文件(根 `spark_common_udf.py` 24 函数 + `spark_json_array_udf.py` 23 函数 + `spark_mmq_udf.py` 3 函数 + `customs/cts_common.py` + `product/escape_udf.py` + `enterprise/spark_eng_ent_json_array_append_udf.py`)通读 + 去重 + 业务耦合剥离后,合并为单文件 `common/spark_common_udf.py`(500 行 40 函数,分 JSON / Array / String / Numeric-Date-Hash / Cross-type-converters 5 段)。单文件方案而非按类型拆分,理由:跨类型转换函数(`json2str` / `arr2json` / `str2map` 等约 9 个,占 20%+)没有明确归属,强行分只会制造边界争议。(b) 清理 `dw_base/spark/udf/` 下所有老业务 UDF 子目录与根级业务文件共 60 个:整目录删 `contacts/` / `customs/` / `enterprise/` / `product/` / `productApplication/` / `test/`;根目录删 `spark_eng_ent_name_clean.py` / `spark_india_format_phone_udf.py` / `solr_similar_match_udf.py` / `main_test.py` 以及 3 份源 UDF 文件。(c) `dw_base/__init__.py:27` `COMMON_SPARK_UDF_FILE` 常量路径由 `dw_base/spark/udf/spark_common_udf.py` 改为 `dw_base/spark/udf/common/spark_common_udf.py`(`bin/spark-sql-starter.py:172-173` 两处 usage 靠常量传递自动生效)。(d) 删除老 `dingtalk_*` / `mg2es` 级联清理中没赶上的 UDF 业务耦合文件在此批统一清零。`business/` 目录暂为骨架,后续真正出现新业务 UDF 时按需补 | — |
+| 2026-04-20 | **删除空壳模块 `ml/` / `elasticsearch/` / `flink/` / `validation/`(反转 2026-04-20 早先"暂留"记录)**:4 个目录下均只有 56 字节空 `__init__.py`,零 import / 零内容,保留无意义;2026-04-20 UDF 模块重组 changelog 末尾"暂留"一句是误记。`git rm -r` 一批清零。同步 `kb/90-重构路线.md §5.1` 从废弃代码表中移除这 4 行并加指向本条 changelog 的尾注。`dw_base/common/` 因 `alerter_constants.py` / `config_constants.py` / `container.py` / `template_constants.py` 非空保留,不在本批 | — |