1.5 KiB
在线抓取,更新ODS ,然后将更新的ODS内容,对应到DWD的更新。
可以按“两段定时”跑:先在线抓取+入库更新 ODS,再跑 DWD_LOAD_FROM_ODS 把新增/变更同步到 DWD。CLI 用 python -m etl_billiards.cli.main。
-
ODS:在线抓取 + 入库(FULL) python -m etl_billiards.cli.main ^ --pipeline-flow FULL ^ --tasks PRODUCTS,TABLES,MEMBERS,ASSISTANTS,PACKAGES_DEF,ORDERS,PAYMENTS,REFUNDS,COUPON_USAGE,INVENTORY_CHANGE,TOPUPS,TABLE_DISCOUNT,ASSISTANT_ABOLISH,LEDGER ^ --pg-dsn "%PG_DSN%" ^ --store-id %STORE_ID% ^ --api-token "%API_TOKEN%" (可选)指定落盘目录:加 --fetch-root "export/JSON";美化 JSON:--write-pretty-json
-
DWD:ODS → DWD python -m etl_billiards.cli.main ^ --pipeline-flow INGEST_ONLY ^ --tasks DWD_LOAD_FROM_ODS ^ --pg-dsn "%PG_DSN%" ^ --store-id %STORE_ID% 推荐的环境变量 PG_DSN=postgresql://user:pwd@host:5432/db STORE_ID=... API_TOKEN=... (可选)JSON_FETCH_ROOT=... / FETCH_ROOT=...,LOG_ROOT=... 如果你希望“一条命令顺序跑完 ODS+DWD”,也可以直接:
python -m etl_billiards.cli.main ^ --pipeline-flow FULL ^ --tasks PRODUCTS,TABLES,MEMBERS,ASSISTANTS,PACKAGES_DEF,ORDERS,PAYMENTS,REFUNDS,COUPON_USAGE,INVENTORY_CHANGE,TOPUPS,TABLE_DISCOUNT,ASSISTANT_ABOLISH,LEDGER,DWD_LOAD_FROM_ODS ^ --pg-dsn "%PG_DSN%" ^ --store-id %STORE_ID% ^ --api-token "%API_TOKEN%" (这会对前半段任务走在线抓取+入库,对 DWD_LOAD_FROM_ODS 只做入库阶段,因为它没有抓取逻辑。)