Files
Neo-ZQYY/apps/etl
Neo b0340349bd feat(etl): cfg_* 视图入口统一 + NULL 兼容 + 3 处 _load_* 历史 Bug (W1-T2 / P0-1)
Wave 1 Day 3 沙箱配置参数切片。

DB 迁移 (20260504__cfg_views_null_compatible.sql):
- 4 个 v_cfg_* 视图 WHERE 加 NULL 兼容
  (effective_to IS NULL OR effective_to >= ...)
- 顺手清理 v_cfg_assistant_level_price / v_cfg_performance_tier
  WHERE 重复一次的 bug
- 测试库已执行,4 校验 PASS

ETL 代码 (4 处 SQL):
- base_index_task.py: FROM dws.cfg_index_parameters -> app.v_cfg_index_parameters
- base_dws_task.py 3 处 _load_* (performance_tier / level_price / bonus_rules)
  改 FROM app.v_cfg_*,顺手修历史 Bug:原 SQL 不带 effective_from/to WHERE

效果:
- 修复视图 NULL 行被过滤问题(SPI 27 行原本读到 0)
- 沙箱模式回放历史日期时,参数自动按 sandbox_date 切片
- _load_* 直接得到当前生效行(原 12/9 行历史 Python 挑)

参考:
- docs/audit/changes/2026-05-04__wave1_t2_scd2_view_unify.md
- docs/database/changes/2026-05-04__cfg_views_null_compatible.md
2026-05-04 08:10:57 +08:00
..

apps/etl/

作用说明

ETL Connector数据源连接器集合。每个上游数据源对应 pipelines/ 下的一个子目录(即一个 Connector当前仅有飞球平台feiqiu。Connector 负责从 SaaS API 抽取数据,经 ODS→DWD→Core→DWS 逐层处理后落库。

内部结构

  • pipelines/feiqiu/ — 飞球 Connectorapi、cli、config、loaders、models、orchestration、scd、tasks、utils、quality、tests

Roadmap

  • 将通用抽取/加载逻辑抽离为 etl_sdk 共享包,供多 Connector 复用
  • 将各平台 API 客户端拆分为独立 connectors 包,实现可插拔数据源接入
  • 新增 Connector 时在 pipelines/ 下创建同构子目录