17 KiB
17 KiB
项目流程树报告
- 生成时间: 2026-02-12T14:33:39Z
- 仓库路径:
C:\ZQYY\FQ-ETL
流程图(Mermaid)
graph TD
N0["`cli.main`"]
N0 --> N1
N1["`config.settings`"]
N0 --> N2
N2["`orchestration.scheduler`"]
N2 --> N3
N3["`api.client`"]
N3 --> N4
N4["`api.endpoint_routing`"]
N2 --> N5
N5["`database.connection`"]
N2 --> N6
N6["`database.operations`"]
N2 --> N7
N7["`orchestration.cursor_manager`"]
N2 --> N8
N8["`orchestration.run_tracker`"]
N2 --> N9
N9["`orchestration.task_registry`"]
N9 --> N10
N10["`tasks.ods.orders_task [任务]`"]
N10 --> N11
N11["`tasks.base_task [任务]`"]
N11 --> N12
N12["`utils.windowing`"]
N10 --> N13
N13["`loaders.facts.order [事实表加载器]`"]
N10 --> N14
N14["`models.parsers`"]
N9 --> N15
N15["`tasks.ods.payments_task [任务]`"]
N15 --> N16
N16["`loaders.facts.payment [事实表加载器]`"]
N9 --> N17
N17["`tasks.ods.members_task [任务]`"]
N17 --> N18
N18["`loaders.dimensions.member [维度加载器 (SCD2)]`"]
N9 --> N19
N19["`tasks.ods.products_task [任务]`"]
N19 --> N20
N20["`loaders.dimensions.product [维度加载器 (SCD2)]`"]
N20 --> N21
N21["`scd.scd2_handler`"]
N9 --> N22
N22["`tasks.ods.tables_task [任务]`"]
N22 --> N23
N23["`loaders.dimensions.table [维度加载器 (SCD2)]`"]
N9 --> N24
N24["`tasks.ods.assistants_task [任务]`"]
N24 --> N25
N25["`loaders.dimensions.assistant [维度加载器 (SCD2)]`"]
N9 --> N26
N26["`tasks.ods.packages_task [任务]`"]
N26 --> N27
N27["`loaders.dimensions.package [维度加载器 (SCD2)]`"]
N9 --> N28
N28["`tasks.ods.refunds_task [任务]`"]
N28 --> N29
N29["`loaders.facts.refund [事实表加载器]`"]
N9 --> N30
N30["`tasks.ods.coupon_usage_task [任务]`"]
N30 --> N31
N31["`loaders.facts.coupon_usage [事实表加载器]`"]
N9 --> N32
N32["`tasks.ods.inventory_change_task [任务]`"]
N32 --> N33
N33["`loaders.facts.inventory_change [事实表加载器]`"]
N9 --> N34
N34["`tasks.ods.topups_task [任务]`"]
N34 --> N35
N35["`loaders.facts.topup [事实表加载器]`"]
N9 --> N36
N36["`tasks.ods.table_discount_task [任务]`"]
N36 --> N37
N37["`loaders.facts.table_discount [事实表加载器]`"]
N9 --> N38
N38["`tasks.ods.assistant_abolish_task [任务]`"]
N38 --> N39
N39["`loaders.facts.assistant_abolish [事实表加载器]`"]
N9 --> N40
N40["`tasks.ods.ledger_task [任务]`"]
N40 --> N41
N41["`loaders.facts.assistant_ledger [事实表加载器]`"]
N9 --> N42
N42["`tasks.ods.ods_tasks [ODS 抓取任务]`"]
N9 --> N43
N43["`tasks.ods.ods_json_archive_task [ODS 抓取任务]`"]
N43 --> N44
N44["`utils.json_store`"]
N9 --> N45
N45["`tasks.dwd.payments_dwd_task [任务]`"]
N9 --> N46
N46["`tasks.dwd.members_dwd_task [任务]`"]
N9 --> N47
N47["`tasks.dwd.dwd_load_task [DWD 加载任务]`"]
N9 --> N48
N48["`tasks.dwd.ticket_dwd_task [任务]`"]
N48 --> N49
N49["`loaders.facts.ticket [事实表加载器]`"]
N9 --> N50
N50["`tasks.dwd.dwd_quality_task [DWD 加载任务]`"]
N9 --> N51
N51["`tasks.utility.manual_ingest_task [任务]`"]
N9 --> N52
N52["`tasks.utility.init_schema_task [Schema 初始化任务]`"]
N9 --> N53
N53["`tasks.utility.init_dwd_schema_task [Schema 初始化任务]`"]
N9 --> N54
N54["`tasks.utility.init_dws_schema_task [Schema 初始化任务]`"]
N9 --> N55
N55["`tasks.utility.check_cutoff_task [任务]`"]
N9 --> N56
N56["`tasks.utility.dws_build_order_summary_task [DWS 汇总任务]`"]
N9 --> N57
N57["`tasks.utility.data_integrity_task [任务]`"]
N57 --> N58
N58["`quality.integrity_service`"]
N58 --> N59
N59["`quality.integrity_checker`"]
N59 --> N60
N60["`scripts.check.check_ods_gaps`"]
N60 --> N61
N61["`api.recording_client`"]
N60 --> N62
N62["`utils.logging_utils`"]
N60 --> N63
N63["`utils.ods_record_utils`"]
N58 --> N64
N64["`scripts.repair.backfill_missing_data`"]
N9 --> N65
N65["`tasks.utility.seed_dws_config_task [任务]`"]
N9 --> N66
N66["`tasks.dws [DWS 汇总任务]`"]
N2 --> N67
N67["`orchestration.task_executor`"]
N67 --> N68
N68["`api.local_json_client`"]
N2 --> N69
N69["`orchestration.pipeline_runner`"]
N69 --> N70
N70["`tasks.verification [校验任务]`"]
N69 --> N71
N71["`utils.task_logger`"]
N72["`gui.main`"]
N72 --> N73
N73["`gui.main_window`"]
N74["`scripts.run_update`"]
N74 --> N3
N3["`api.client`"]
N4["`api.endpoint_routing`"]
N74 --> N1
N1["`config.settings`"]
N74 --> N5
N5["`database.connection`"]
N74 --> N6
N6["`database.operations`"]
N74 --> N2
N2["`orchestration.scheduler`"]
N7["`orchestration.cursor_manager`"]
N8["`orchestration.run_tracker`"]
N9["`orchestration.task_registry`"]
N10["`tasks.ods.orders_task [任务]`"]
N11["`tasks.base_task [任务]`"]
N12["`utils.windowing`"]
N13["`loaders.facts.order [事实表加载器]`"]
N14["`models.parsers`"]
N15["`tasks.ods.payments_task [任务]`"]
N16["`loaders.facts.payment [事实表加载器]`"]
N17["`tasks.ods.members_task [任务]`"]
N18["`loaders.dimensions.member [维度加载器 (SCD2)]`"]
N19["`tasks.ods.products_task [任务]`"]
N20["`loaders.dimensions.product [维度加载器 (SCD2)]`"]
N21["`scd.scd2_handler`"]
N22["`tasks.ods.tables_task [任务]`"]
N23["`loaders.dimensions.table [维度加载器 (SCD2)]`"]
N24["`tasks.ods.assistants_task [任务]`"]
N25["`loaders.dimensions.assistant [维度加载器 (SCD2)]`"]
N26["`tasks.ods.packages_task [任务]`"]
N27["`loaders.dimensions.package [维度加载器 (SCD2)]`"]
N28["`tasks.ods.refunds_task [任务]`"]
N29["`loaders.facts.refund [事实表加载器]`"]
N30["`tasks.ods.coupon_usage_task [任务]`"]
N31["`loaders.facts.coupon_usage [事实表加载器]`"]
N32["`tasks.ods.inventory_change_task [任务]`"]
N33["`loaders.facts.inventory_change [事实表加载器]`"]
N34["`tasks.ods.topups_task [任务]`"]
N35["`loaders.facts.topup [事实表加载器]`"]
N36["`tasks.ods.table_discount_task [任务]`"]
N37["`loaders.facts.table_discount [事实表加载器]`"]
N38["`tasks.ods.assistant_abolish_task [任务]`"]
N39["`loaders.facts.assistant_abolish [事实表加载器]`"]
N40["`tasks.ods.ledger_task [任务]`"]
N41["`loaders.facts.assistant_ledger [事实表加载器]`"]
N42["`tasks.ods.ods_tasks [ODS 抓取任务]`"]
N43["`tasks.ods.ods_json_archive_task [ODS 抓取任务]`"]
N44["`utils.json_store`"]
N45["`tasks.dwd.payments_dwd_task [任务]`"]
N46["`tasks.dwd.members_dwd_task [任务]`"]
N47["`tasks.dwd.dwd_load_task [DWD 加载任务]`"]
N48["`tasks.dwd.ticket_dwd_task [任务]`"]
N49["`loaders.facts.ticket [事实表加载器]`"]
N50["`tasks.dwd.dwd_quality_task [DWD 加载任务]`"]
N51["`tasks.utility.manual_ingest_task [任务]`"]
N52["`tasks.utility.init_schema_task [Schema 初始化任务]`"]
N53["`tasks.utility.init_dwd_schema_task [Schema 初始化任务]`"]
N54["`tasks.utility.init_dws_schema_task [Schema 初始化任务]`"]
N55["`tasks.utility.check_cutoff_task [任务]`"]
N56["`tasks.utility.dws_build_order_summary_task [DWS 汇总任务]`"]
N57["`tasks.utility.data_integrity_task [任务]`"]
N58["`quality.integrity_service`"]
N59["`quality.integrity_checker`"]
N60["`scripts.check.check_ods_gaps`"]
N61["`api.recording_client`"]
N62["`utils.logging_utils`"]
N63["`utils.ods_record_utils`"]
N64["`scripts.repair.backfill_missing_data`"]
N65["`tasks.utility.seed_dws_config_task [任务]`"]
N66["`tasks.dws [DWS 汇总任务]`"]
N67["`orchestration.task_executor`"]
N68["`api.local_json_client`"]
N69["`orchestration.pipeline_runner`"]
N70["`tasks.verification [校验任务]`"]
N71["`utils.task_logger`"]
流程树(缩进文本)
cli.main(cli/main.py)config.settings(config/settings.py)orchestration.scheduler(orchestration/scheduler.py)api.client(api/client.py)api.endpoint_routing(api/endpoint_routing.py)
database.connection(database/connection.py)database.operations(database/operations.py)orchestration.cursor_manager(orchestration/cursor_manager.py)orchestration.run_tracker(orchestration/run_tracker.py)orchestration.task_registry(orchestration/task_registry.py)tasks.ods.orders_task(tasks/ods/orders_task.py) [任务]tasks.base_task(tasks/base_task.py) [任务]utils.windowing(utils/windowing.py)
loaders.facts.order(loaders/facts/order.py) [事实表加载器]models.parsers(models/parsers.py)
tasks.ods.payments_task(tasks/ods/payments_task.py) [任务]loaders.facts.payment(loaders/facts/payment.py) [事实表加载器]
tasks.ods.members_task(tasks/ods/members_task.py) [任务]loaders.dimensions.member(loaders/dimensions/member.py) [维度加载器 (SCD2)]
tasks.ods.products_task(tasks/ods/products_task.py) [任务]loaders.dimensions.product(loaders/dimensions/product.py) [维度加载器 (SCD2)]scd.scd2_handler(scd/scd2_handler.py)
tasks.ods.tables_task(tasks/ods/tables_task.py) [任务]loaders.dimensions.table(loaders/dimensions/table.py) [维度加载器 (SCD2)]
tasks.ods.assistants_task(tasks/ods/assistants_task.py) [任务]loaders.dimensions.assistant(loaders/dimensions/assistant.py) [维度加载器 (SCD2)]
tasks.ods.packages_task(tasks/ods/packages_task.py) [任务]loaders.dimensions.package(loaders/dimensions/package.py) [维度加载器 (SCD2)]
tasks.ods.refunds_task(tasks/ods/refunds_task.py) [任务]loaders.facts.refund(loaders/facts/refund.py) [事实表加载器]
tasks.ods.coupon_usage_task(tasks/ods/coupon_usage_task.py) [任务]loaders.facts.coupon_usage(loaders/facts/coupon_usage.py) [事实表加载器]
tasks.ods.inventory_change_task(tasks/ods/inventory_change_task.py) [任务]loaders.facts.inventory_change(loaders/facts/inventory_change.py) [事实表加载器]
tasks.ods.topups_task(tasks/ods/topups_task.py) [任务]loaders.facts.topup(loaders/facts/topup.py) [事实表加载器]
tasks.ods.table_discount_task(tasks/ods/table_discount_task.py) [任务]loaders.facts.table_discount(loaders/facts/table_discount.py) [事实表加载器]
tasks.ods.assistant_abolish_task(tasks/ods/assistant_abolish_task.py) [任务]loaders.facts.assistant_abolish(loaders/facts/assistant_abolish.py) [事实表加载器]
tasks.ods.ledger_task(tasks/ods/ledger_task.py) [任务]loaders.facts.assistant_ledger(loaders/facts/assistant_ledger.py) [事实表加载器]
tasks.ods.ods_tasks(tasks/ods/ods_tasks.py) [ODS 抓取任务]tasks.ods.ods_json_archive_task(tasks/ods/ods_json_archive_task.py) [ODS 抓取任务]utils.json_store(utils/json_store.py)
tasks.dwd.payments_dwd_task(tasks/dwd/payments_dwd_task.py) [任务]tasks.dwd.members_dwd_task(tasks/dwd/members_dwd_task.py) [任务]tasks.dwd.dwd_load_task(tasks/dwd/dwd_load_task.py) [DWD 加载任务]tasks.dwd.ticket_dwd_task(tasks/dwd/ticket_dwd_task.py) [任务]loaders.facts.ticket(loaders/facts/ticket.py) [事实表加载器]
tasks.dwd.dwd_quality_task(tasks/dwd/dwd_quality_task.py) [DWD 加载任务]tasks.utility.manual_ingest_task(tasks/utility/manual_ingest_task.py) [任务]tasks.utility.init_schema_task(tasks/utility/init_schema_task.py) [Schema 初始化任务]tasks.utility.init_dwd_schema_task(tasks/utility/init_dwd_schema_task.py) [Schema 初始化任务]tasks.utility.init_dws_schema_task(tasks/utility/init_dws_schema_task.py) [Schema 初始化任务]tasks.utility.check_cutoff_task(tasks/utility/check_cutoff_task.py) [任务]tasks.utility.dws_build_order_summary_task(tasks/utility/dws_build_order_summary_task.py) [DWS 汇总任务]tasks.utility.data_integrity_task(tasks/utility/data_integrity_task.py) [任务]quality.integrity_service(quality/integrity_service.py)quality.integrity_checker(quality/integrity_checker.py)scripts.check.check_ods_gaps(scripts/check/check_ods_gaps.py)api.recording_client(api/recording_client.py)utils.logging_utils(utils/logging_utils.py)utils.ods_record_utils(utils/ods_record_utils.py)
scripts.repair.backfill_missing_data(scripts/repair/backfill_missing_data.py)
tasks.utility.seed_dws_config_task(tasks/utility/seed_dws_config_task.py) [任务]tasks.dws(tasks/dws/__init__.py) [DWS 汇总任务]
orchestration.task_executor(orchestration/task_executor.py)api.local_json_client(api/local_json_client.py)
orchestration.pipeline_runner(orchestration/pipeline_runner.py)tasks.verification(tasks/verification/__init__.py) [校验任务]utils.task_logger(utils/task_logger.py)
gui.main(gui/main.py)gui.main_window(gui/main_window.py)
scripts.run_update(scripts/run_update.py)api.client(api/client.py)- (已展开)
config.settings(config/settings.py)database.connection(database/connection.py)database.operations(database/operations.py)orchestration.scheduler(orchestration/scheduler.py)- (已展开)
孤立模块
config/defaults.pyconfig/env_parser.pydatabase/base.pygui/models/schedule_model.pygui/models/task_model.pygui/models/task_registry.pygui/utils/app_settings.pygui/utils/cli_builder.pygui/utils/config_helper.pygui/widgets/db_viewer.pygui/widgets/env_editor.pygui/widgets/log_viewer.pygui/widgets/pipeline_selector.pygui/widgets/settings_dialog.pygui/widgets/status_panel.pygui/widgets/task_manager.pygui/widgets/task_panel.pygui/widgets/task_selector.pygui/workers/db_worker.pygui/workers/task_worker.pyloaders/base_loader.pyloaders/ods/generic.pymodels/validators.pyquality/balance_checker.pyquality/base_checker.pyscripts/check/check_data_integrity.pyscripts/check/check_dwd_service.pyscripts/check/check_ods_content_hash.pyscripts/check/check_ods_json_vs_table.pyscripts/check/verify_dws_config.pyscripts/db_admin/import_dws_excel.pyscripts/export/export_cfg_index_parameters.pyscripts/export/export_groupbuy_orders_with_assistant_service.pyscripts/export/export_index_tables.pyscripts/export/export_intimacy_full_json.pyscripts/export/export_visit_60d_member_detail_with_indices.pyscripts/rebuild/rebuild_db_and_run_ods_to_dwd.pyscripts/repair/dedupe_ods_snapshots.pyscripts/repair/fix_dim_assistant_user_id.pyscripts/repair/repair_ods_content_hash.pyscripts/repair/tune_integrity_indexes.pytasks/dwd/base_dwd_task.pytasks/dws/assistant_customer_task.pytasks/dws/assistant_daily_task.pytasks/dws/assistant_finance_task.pytasks/dws/assistant_monthly_task.pytasks/dws/assistant_salary_task.pytasks/dws/base_dws_task.pytasks/dws/finance_daily_task.pytasks/dws/finance_discount_task.pytasks/dws/finance_income_task.pytasks/dws/finance_recharge_task.pytasks/dws/index/base_index_task.pytasks/dws/index/intimacy_index_task.pytasks/dws/index/member_index_base.pytasks/dws/index/ml_manual_import_task.pytasks/dws/index/newconv_index_task.pytasks/dws/index/recall_index_task.pytasks/dws/index/relation_index_task.pytasks/dws/index/winback_index_task.pytasks/dws/member_consumption_task.pytasks/dws/member_visit_task.pytasks/dws/mv_refresh_task.pytasks/dws/retention_cleanup_task.pytasks/verification/base_verifier.pytasks/verification/dwd_verifier.pytasks/verification/dws_verifier.pytasks/verification/index_verifier.pytasks/verification/models.pytasks/verification/ods_verifier.pyutils/helpers.pyutils/reporting.py
统计摘要
| 指标 | 数量 |
|---|---|
| 入口点 | 3 |
| 任务 | 29 |
| 加载器 | 15 |
| 孤立模块 | 72 |