kettle系列-我的開源kettle調度、管理平台[kettle-manager]介紹


kettle管理工具

  • 專門為kettle這款優秀的ETL工具開發的web端調度、管理工具。
  • 新版本

 


項目簡介

  • kettle作為非常優秀的開源ETL工具得到了非常廣泛的使用,一般的使用的都是使用客戶端操作管理,但問題是當投入生產環境使用時,動輒上百或幾百個job需要管理,這時在使用客戶端管理已經很難完成了。我所知道的解決方案有用命令行的調用的,操作麻煩,總之還是很難用啦,還有就是開發web端管理工具,kettle自帶了一個web端管理工具,界面極其簡陋不說,還很難用,基本無法投入生產環境使用,其他沒留意到還有沒有較好對眾多job進行管理的工具。
  • 基於以上情況,和我近兩年的kettle定制開發與使用經驗。我設計並開發了這款kettle web端管理工具。
  • 本系統當前支持oracle和mysql
  • 本平台已經管理數百的job,並正常運行半年以上。

項目功能

  1. job運行參數設置,可以在頁面上設置作業運行參數,每次運行作業時會用設置的參數覆蓋默認值,這個很多人用不上。
  2. 定時設置,操作界面與kettle中的開始控件界面一致,這個可能是最優用的功能之一。
  3. 作業的運行與停止,核心功能就不說了。
  4. 實時查看作業運行日志,最大顯示行數可以配置,這個功能看起來不起眼,實際應該是很有用的。
  5. 后台有一個作業專門完成將運行的作業日志寫入日志文件,文件按天分文件夾存放,日志文件大小可以配置,若覺得占用空間,可以設計一個作業進行定時清理以前的日志文件,后續會提供該作業。也可以配置為不寫日志文件。
  6. 作業的運行狀態會定時反映到管理界面,我們可以通過多種條件篩選我們需要的作業進行批量運行或停止。
  7. 本系統是基於數據庫資源庫設計的,暫時不考慮支持文件資源庫。
  8. 本系統還附帶了一個kettle插件,類似kettle已有的自定義類控件(可以在轉換中寫java代碼)。該控件的設計時為了避免每一個需求都去開發一個kettle控件,從后台元數據管理到操作界面設計。該控件采用靈活的JSON傳遞參數,然后繼承一個基類就可以完成一個任務了,就是說基於該控件,只需要開發一個具體的操作類就可以了。有興趣可以看一下,詳細介紹參看:kettle系列-[KettleUtil]kettle插件,類似kettle的自定義java類控件

界面截圖

主界面

  定時設置界面

參數設置界面

運行日志查看界面

  平台級日志,支持查詢下載

使用說明

請參看我的另一篇博文:kettle系列-kettle管理平台部署說明

開發說明

  1. 一般都不需要自己開發,直接使用就行,若有bug或新功能需求,可以發郵件給我。
  2. 本項目基於開源項目EOVA開發:eova
  3. 若想進一步擴展功能,建議先搭建kettle開發環境,可以參考我的博文:kettle系列-1.kettle源碼獲取與運行
  4. 我的博客中還有多篇文章介紹kettle的源碼等,可以作為參考。

后期開發計划

  1. 任務管理在設置定時時可能需要人為分散定時,考慮生成時間-運行任務數的分析圖輔助進行分散定時。
  2. 作業管理顯示下一次運行時間。
  3. 權限管理,不同用戶看到自己的作業,管理員看所有作業。

附錄

  1. 項目地址
  2. 我的郵箱:jinjuma@yeah.net。
  3. 交流QQ群:320302530(已滿勿加),交流2群:142104962
  4. 已經打包好的軟件下載


免責聲明!

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



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