Kettle-動態數據鏈接,使JOB得以復用


動態數據連接,使JOB得以復用 

背景

移動執法系統在目前的主要的部署策略為1+N的方式,即總隊部署一套,地市各部署一套,且基本都在環保專網。各地市的業務數據需要推送到總隊系統,以便總隊系統做整體的監督、決策。在整個數據對接過程中,基於Kettle開發的各地市對接省廳的ETL程序,除了數據鏈接信息不同之外,其他信息基本相同。重復開發的成本過高。是否可以通過切換數據庫鏈接信息以復用相同的數據對接程序?

設計思路

獲取數據鏈接信息進行保存到結果,然后循環調用數據鏈接信息,動態配置給數據抽取的程序,以達到JOB的復用。

kettle實現
  • 增加動態數據鏈接(使用變量的方式,以實現動態獲取)
  • 執行入口JOB
  • 可復用JOB
  1. TR_LOAD_DB:獲取數據鏈接信息,並將數據鏈接信息保存的記錄(內存中);
  2. JOB_LOAD_ZFSJ_ITEM:可復用的數據對接程序
  3. TR_SET_DB_PRO:將傳遞過來的數據鏈接信息保存到變量中。
  4. TR_LOAD_[數據類型]:加載指定的業務數據
  5. TR_EXCUTE_SQL:各地市數據加載成功之后的后操作(非必須)
  • !重點設置說明

TR-LOAD-DB:

JOB-LOAD-ZFSJ-ITEM:
為了可以逐條調用數據鏈接信息,需要配置成“執行每一個輸入行”

TR-SET-DB-PRO:

TR-LOAD-[數據類型]:
源數據鏈接使用動態數據鏈接

這樣配置完成之后,針對1+N方式部署的系統,需要做數據對接整合的,就只需要開發一次數據對接程序,然后配置相應的數據鏈接信息,就可以完成對N個系統的數據對接工作,比起以前復制多份的方式,方便了很多,而且也便於以后進行維護。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM