本發(fā)明涉及大數(shù)據(jù)處理技術領域,特別涉及一種支持可視化和流程化的大數(shù)據(jù)etl調(diào)度系統(tǒng)。
背景技術:
etl(extract-transform-load,提取、轉(zhuǎn)換和加載)是bi(大數(shù)據(jù))項目最重要的一個環(huán)節(jié),通常情況下etl會花掉整個項目的1/3的時間,etl設計的好壞直接關接到bi項目的成敗。
大數(shù)據(jù)etl也是一個長期的過程,只有不斷的發(fā)現(xiàn)問題并解決問題,才能使etl運行效率更高,為項目后期開發(fā)提供準確的數(shù)據(jù)。大數(shù)據(jù)etl負責將分散的、異構數(shù)據(jù)源中的數(shù)據(jù)如關系數(shù)據(jù)、平面數(shù)據(jù)文件等抽取到大數(shù)據(jù)平臺系統(tǒng)后,進行清洗、轉(zhuǎn)換、集成,最后加載到大數(shù)據(jù)平臺、數(shù)據(jù)倉庫或數(shù)據(jù)集市中,成為聯(lián)機分析處理、數(shù)據(jù)挖掘提供決策支持的數(shù)據(jù)。這個過程通常都需要在后臺進行相關操作,且后臺操作復雜,降低了etl的開發(fā)速度和效率,同時對于集群來說可能存在著誤操作的風險,大大增加企業(yè)項目實施成本。
技術實現(xiàn)要素:
為解決上述問題,本發(fā)明提供了一種支持可視化和流程化的大數(shù)據(jù)etl調(diào)度系統(tǒng),其能夠有效摒棄復雜的后臺操作,極大提升了etl的開發(fā)速度和效率,同時降低了企業(yè)項目實施的成本。
本發(fā)明采用以下技術方案:
一種支持可視化和流程化的大數(shù)據(jù)etl調(diào)度系統(tǒng),基于b/s架構實現(xiàn),其包括大數(shù)據(jù)組件操作單元、etl作業(yè)管理模塊、etl調(diào)度管理模塊、系統(tǒng)管理模塊及作業(yè)配置數(shù)據(jù)庫,所述etl作業(yè)管理模塊、etl調(diào)度管理模塊與大數(shù)據(jù)組件操作單元彼此獨立、互不影響,其中:
所述大數(shù)據(jù)組件操作單元包括支持可視化操作的數(shù)據(jù)查詢模塊、組件腳本編輯模塊、腳本執(zhí)行監(jiān)控模塊、平臺組件驅(qū)動模塊、大數(shù)據(jù)平臺、本地業(yè)務系統(tǒng)及遠程業(yè)務系統(tǒng);
所述etl作業(yè)管理模塊用于對大數(shù)據(jù)抽取、清洗、加載的配置提供可視化操作,并生成json或xml格式作業(yè)配置文件進行提交或保存到作業(yè)配置數(shù)據(jù)庫;
所述etl調(diào)度管理模塊用于進行etl作業(yè)的定時調(diào)度工作以及完成對etl作業(yè)執(zhí)行過程的監(jiān)控,并生成作業(yè)監(jiān)控結果;
所述系統(tǒng)管理模塊用于針對系統(tǒng)各模塊提供用戶、角色、資源的管理以及訪問權限控制,其包括資源管理子模塊、權限管理子模塊及系統(tǒng)驅(qū)動子模塊,所述驅(qū)動子模塊連接所述作業(yè)配置數(shù)據(jù)庫。
優(yōu)選地,所述etl作業(yè)管理模塊包括抽取配置子模塊、清洗配置子模塊、加載配置子模塊,所述抽取配置子模塊用于實現(xiàn)大數(shù)據(jù)抽取的可視化操作,所述清洗配置子模塊用于實現(xiàn)大數(shù)據(jù)清洗的可視化操作,所述加載配置子模塊用于實現(xiàn)大數(shù)據(jù)加載的可視化操作。
優(yōu)選地,所述etl調(diào)度管理模塊包括流程配置子模塊、作業(yè)調(diào)度子模塊及調(diào)度監(jiān)控子模塊,所述流程配置子模塊用于提供etl作業(yè)流程配置的可視化操作,生成etl作業(yè)列表存儲到作業(yè)配置數(shù)據(jù)庫,以及從作業(yè)配置數(shù)據(jù)庫中讀取etl作業(yè)列表,所述作業(yè)調(diào)度子模塊連接流程配置子模塊,用于實現(xiàn)etl作業(yè)的定時調(diào)度工作,所述調(diào)度監(jiān)控子模塊用于對etl作業(yè)執(zhí)行過程進行監(jiān)控,并生成作業(yè)監(jiān)控結果。
優(yōu)選地,所述作業(yè)監(jiān)控結果包括etl作業(yè)的日志、狀態(tài)、結果以及告警信息。
優(yōu)選地,所述大數(shù)據(jù)平臺的組件包括hdfs、hive、hbase、solr、yarn、oozie、spark、storm、sqoop、pig、impala、zookeeper。
采用上述技術方案后,本發(fā)明與背景技術相比,具有如下優(yōu)點:
本發(fā)明有效摒棄復雜的后臺操作,極大提升了etl的開發(fā)速度和效率,同時降低了企業(yè)項目實施的成本。
附圖說明
圖1為本發(fā)明結構示意圖;
圖2為本發(fā)明大數(shù)據(jù)組件操作單元的工作流程示意圖;
圖3為本發(fā)明etl作業(yè)管理模塊和etl調(diào)度管理模塊的工作流程示意圖;
圖4為本發(fā)明etl作業(yè)管理模塊和etl調(diào)度管理模塊的工作流程示意圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
實施例一
請參閱圖1,本發(fā)明公開了一種支持可視化和流程化的大數(shù)據(jù)etl調(diào)度系統(tǒng),基于b/s架構實現(xiàn),其包括大數(shù)據(jù)組件操作單元、etl作業(yè)管理模塊、etl調(diào)度管理模塊、系統(tǒng)管理模塊及作業(yè)配置數(shù)據(jù)庫,所述etl作業(yè)管理模塊、etl調(diào)度管理模塊與大數(shù)據(jù)組件操作單元彼此獨立、互不影響,其中:
參考圖1所示,所述大數(shù)據(jù)組件操作單元包括支持可視化操作的數(shù)據(jù)查詢模塊、組件腳本編輯模塊、腳本執(zhí)行監(jiān)控模塊、平臺組件驅(qū)動模塊、大數(shù)據(jù)平臺、本地業(yè)務系統(tǒng)及遠程業(yè)務系統(tǒng)。大數(shù)據(jù)平臺的組件包括hdfs、hive、hbase、solr、yarn、oozie、spark、storm、sqoop、pig、impala、zookeeper。
所述etl作業(yè)管理模塊用于對大數(shù)據(jù)抽取、清洗、加載的配置提供可視化操作,并生成json或xml格式作業(yè)配置文件進行提交或保存到作業(yè)配置數(shù)據(jù)庫。所述etl作業(yè)管理模塊包括抽取配置子模塊、清洗配置子模塊、加載配置子模塊,所述抽取配置子模塊用于實現(xiàn)大數(shù)據(jù)抽取的可視化操作,所述清洗配置子模塊用于實現(xiàn)大數(shù)據(jù)清洗的可視化操作,所述加載配置子模塊用于實現(xiàn)大數(shù)據(jù)加載的可視化操作。
所述etl調(diào)度管理模塊用于進行etl作業(yè)的定時調(diào)度工作以及完成對etl作業(yè)執(zhí)行過程的監(jiān)控,并生成作業(yè)監(jiān)控結果。所述etl調(diào)度管理模塊包括流程配置子模塊、作業(yè)調(diào)度子模塊及調(diào)度監(jiān)控子模塊,所述流程配置子模塊用于提供etl作業(yè)流程配置的可視化操作,生成etl作業(yè)列表存儲到作業(yè)配置數(shù)據(jù)庫,以及從作業(yè)配置數(shù)據(jù)庫中讀取etl作業(yè)列表,所述作業(yè)調(diào)度子模塊連接流程配置子模塊,用于實現(xiàn)etl作業(yè)的定時調(diào)度工作,所述調(diào)度監(jiān)控子模塊用于對etl作業(yè)執(zhí)行過程進行監(jiān)控,并生成作業(yè)監(jiān)控結果。所述作業(yè)監(jiān)控結果包括etl作業(yè)的日志、狀態(tài)、結果以及告警信息。
所述系統(tǒng)管理模塊用于針對系統(tǒng)各模塊提供用戶、角色、資源的管理以及訪問權限控制,其包括資源管理子模塊、權限管理子模塊及系統(tǒng)驅(qū)動子模塊,所述驅(qū)動子模塊連接所述作業(yè)配置數(shù)據(jù)庫。
為便于更好的理解本發(fā)明,下面結合附圖對本發(fā)明各模塊的工作流程做進一步說明。
參考圖2所示,大數(shù)據(jù)組件操作單元的工作流程為:
用戶根據(jù)實際需要選擇數(shù)據(jù)查詢模塊、組件腳本編輯模塊、腳本執(zhí)行監(jiān)控模塊進行可視化操作,并加載平臺組件驅(qū)動模塊,平臺組件驅(qū)動模塊讀取大數(shù)據(jù)平臺、本地業(yè)務系統(tǒng)及遠程業(yè)務系統(tǒng)的數(shù)據(jù)信息。
參考圖3所示,etl作業(yè)管理模塊和etl調(diào)度管理模塊的工作流程為:
用戶通過etl作業(yè)管理模塊對大數(shù)據(jù)抽取、清洗、加載的配置進行可視化操作,并生成json或xml格式的作業(yè)配置文件,作業(yè)配置文件提交到平臺組件驅(qū)動模塊和系統(tǒng)驅(qū)動子模塊,大數(shù)據(jù)平臺、本地業(yè)務系統(tǒng)及遠程業(yè)務系統(tǒng)基于作業(yè)配置文件進行etl作業(yè),系統(tǒng)驅(qū)動子模塊將作業(yè)配置文件保存到作業(yè)配置數(shù)據(jù)庫;etl調(diào)度管理模塊讀取作業(yè)配置數(shù)據(jù)庫的etl作業(yè)列表,根據(jù)etl作業(yè)列表進行作業(yè)調(diào)度,并對etl作業(yè)執(zhí)行過程進行監(jiān)控。
參考圖4所示,系統(tǒng)管理模塊的工作流程為:
用戶通過系統(tǒng)管理模塊進行用戶、角色、資源的管理以及訪問權限控制,并通過系統(tǒng)驅(qū)動子模塊將用戶、角色、資源的管理信息以及訪問權限保存到作業(yè)配置數(shù)據(jù)庫。
以上所述,僅為本發(fā)明較佳的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內(nèi),可輕易想到的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應該以權利要求的保護范圍為準。