專利名稱:一種用于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的調(diào)度系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種調(diào)度系統(tǒng),特別是一種用于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的運(yùn)行穩(wěn)定、操作簡(jiǎn)單、維護(hù)成本低、具有圖形化配置的調(diào)度系統(tǒng)。
背景技術(shù):
以下是本領(lǐng)域中的一些名詞解釋,其使用范圍僅限于本發(fā)明 業(yè)務(wù)流程一個(gè)業(yè)務(wù)流程是為了實(shí)現(xiàn)企業(yè)的某個(gè)業(yè)務(wù)目標(biāo)的一個(gè)過(guò)程,它在部分或者全部組織結(jié)構(gòu)和人員的參與下利用企業(yè)資源(包括所需的處理設(shè)備、通信設(shè)備、計(jì)算機(jī)軟硬件等等),按照預(yù)先確定的規(guī)則,在參與者和組織結(jié)構(gòu)之間進(jìn)行文檔、信息、任務(wù)的傳遞和處理(包括業(yè)務(wù)決策),從而實(shí)現(xiàn)預(yù)定的業(yè)務(wù)目標(biāo)。簡(jiǎn)單地說(shuō),業(yè)務(wù)流程就是在功能確定的組織結(jié)構(gòu)中,能夠?qū)崿F(xiàn)業(yè)務(wù)目標(biāo)和策略的相互關(guān)聯(lián)的過(guò)程和活動(dòng)集。流程定義業(yè)務(wù)流程的形式化描述,用來(lái)支持系統(tǒng)建模和運(yùn)行過(guò)程的自動(dòng)化。過(guò)程可分解為一系列子過(guò)程和活動(dòng),其定義主要包括描述過(guò)程起始、終止的活動(dòng)關(guān)系網(wǎng)絡(luò)以及一些關(guān)于個(gè)體行為的信息,如組織成員、相關(guān)的應(yīng)用和數(shù)據(jù)等。流程表現(xiàn)為一系列為了實(shí)現(xiàn)共同的目標(biāo)而相互協(xié)作的活動(dòng)。流程可以包含子流程(SUB PROCESS),支持多層次的嵌套。其中,組成流程的各個(gè)點(diǎn),稱為節(jié)點(diǎn)。流程調(diào)度流程調(diào)度的對(duì)象是流程實(shí)例,是根據(jù)被選擇的流程模塊產(chǎn)生具體的流程實(shí)例,并根據(jù)實(shí)例統(tǒng)一調(diào)度各個(gè)環(huán)節(jié)之間的作業(yè)。企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)在其實(shí)施過(guò)程中業(yè)務(wù)復(fù)雜,數(shù)據(jù)量大,需要大量的人力物力投入,且存在大量重復(fù)的、周期性的工作,人為的誤操作容易帶來(lái)不可預(yù)知的錯(cuò)誤,系統(tǒng)網(wǎng)絡(luò)復(fù)雜等問(wèn)題,這些都需要一個(gè)強(qiáng)大的調(diào)度系統(tǒng)來(lái)解決?,F(xiàn)有技術(shù)針對(duì)企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)主要有兩種調(diào)度系統(tǒng)I.利用操作系統(tǒng)自帶的調(diào)度系統(tǒng)。這類調(diào)度系統(tǒng)如Iinux和unix平臺(tái)下的crontab工具和windows下的計(jì)劃任務(wù)。linux,unix平臺(tái)下現(xiàn)有方案就是用操作系統(tǒng)自帶的crontab工具,可以把對(duì)數(shù)據(jù)庫(kù)的所有操作和SQL語(yǔ)句都嵌入到shell腳本中,或者調(diào)用數(shù)據(jù)庫(kù)下的可執(zhí)行文件來(lái)執(zhí)行SQL,然后再把包裝好的shell腳本或可執(zhí)行文件配置到crontab的配置文件中,crontab就可以按一定周期定時(shí)運(yùn)行了。Windows平臺(tái)下現(xiàn)有方案就是用Windows自帶的“計(jì)劃任務(wù)”工具進(jìn)行調(diào)度了,把對(duì)數(shù)據(jù)庫(kù)操作的SQL語(yǔ)句嵌入到Window的批處理腳本中,或者調(diào)用數(shù)據(jù)庫(kù)中Windows下的客戶端可執(zhí)行文件也可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)操作。然后在計(jì)劃任務(wù)配置里面設(shè)置好調(diào)用的程序或周期,啟動(dòng)計(jì)劃任務(wù)服務(wù)就可以按周期運(yùn)行程序了。這種方式的調(diào)度系統(tǒng)主要的不足是完全依賴于操作系統(tǒng),只能在指定的操作系統(tǒng)環(huán)境下使用,而且調(diào)度類型不靈活,沒(méi)有告警機(jī)制。維護(hù)起來(lái)不方便,沒(méi)有圖形化的配置。2.利用oracle數(shù)據(jù)庫(kù)本身自帶的調(diào)度程序包進(jìn)行調(diào)度在這種調(diào)度方法中,首先用dbms_scheduler. create_program創(chuàng)建一個(gè)程序,這個(gè)程序里面可以指定外部的shell腳本、可執(zhí)行文件、oracle存儲(chǔ)過(guò)程、函數(shù)和PL/SQL程序塊,然后再用create_schedule創(chuàng)建一個(gè)調(diào)度策略,最后再調(diào)用create_job程序包把program和schedule策略關(guān)聯(lián)起來(lái),這樣在oracle數(shù)據(jù)庫(kù)中就可以按照定義好的調(diào)度策略運(yùn)行程序了。這種調(diào)度系統(tǒng)中的不足之處是完全依賴于oracle數(shù)據(jù)庫(kù)本身自帶的調(diào)度程序包功能,沒(méi)有圖形化的配置窗口,完全用腳本來(lái)實(shí)現(xiàn),不便于維護(hù)。而且調(diào)度策略也有限,只能滿足一些簡(jiǎn)單的調(diào)度策略,對(duì)于復(fù)雜的策略無(wú)法實(shí)現(xiàn)。且也不支持其它數(shù)據(jù)庫(kù)的調(diào)度,也不支持分布式數(shù)據(jù)庫(kù)環(huán)境的調(diào)度,監(jiān)控告警機(jī)制基本上沒(méi)有
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種調(diào)度系統(tǒng),用于解決基于智能系統(tǒng)的調(diào)度系統(tǒng)實(shí)施困難、運(yùn)行不穩(wěn)定、操作復(fù)雜、維護(hù)成本高、沒(méi)有圖形化配置的問(wèn)題。本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下一種用于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的調(diào)度系統(tǒng),包括至少一個(gè)以上的代理服務(wù)模塊用于接收遠(yuǎn)程機(jī)器上運(yùn)行程序的消息。后臺(tái)流程調(diào)度引擎模塊所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊互相連接,用于實(shí)現(xiàn)所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊間的通信及控制程序運(yùn)行。ActiveMQ模塊ActiveMQ是Apache公司出品,最流行的、能力強(qiáng)勁的開(kāi)源消息總線,在本發(fā)明中主要用做消息接收、消息排隊(duì)和消息發(fā)送。所述ActiveMQ模塊與所述后臺(tái)流程調(diào)度引擎模塊相連接,用于從所述后臺(tái)流程調(diào)度引擎模塊接收所述代理服務(wù)模塊上的程序的執(zhí)行消息,并對(duì)所述執(zhí)行消息進(jìn)行隊(duì)形控制。前端流程調(diào)度查詢應(yīng)用模塊所述前端流程調(diào)度查詢應(yīng)用模塊與所述ActiveMQ模塊互相連接,用于取出并展示所述ActiveMQ模塊的隊(duì)列中的信息,同時(shí)也用于將前端頁(yè)面的觸發(fā)消息放入到所述ActiveMQ模塊中進(jìn)行排隊(duì);所述前端流程調(diào)度查詢應(yīng)用模塊與所述后臺(tái)流程調(diào)度引擎模塊連接,用于接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果。消息發(fā)送模塊所述消息發(fā)送模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息。權(quán)限管理模塊所述權(quán)限管理模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于控制所述前端流程調(diào)度查詢應(yīng)用模塊的各個(gè)管理功能模塊的權(quán)限分配和管理。流程設(shè)計(jì)模塊所述流程設(shè)計(jì)模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,所述流程設(shè)計(jì)模塊采用離線方式和圖形化方式進(jìn)行流程設(shè)計(jì)。數(shù)據(jù)統(tǒng)一調(diào)度模塊所述數(shù)據(jù)統(tǒng)一調(diào)度模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于根據(jù)所述前端流程調(diào)度查詢應(yīng)用模塊中提供的任務(wù)啟動(dòng)和查詢信息進(jìn)行數(shù)據(jù)的統(tǒng)一調(diào)度。這里的數(shù)據(jù)統(tǒng)一調(diào)度模塊包括數(shù)據(jù)門(mén)戶等系統(tǒng)。在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)進(jìn)一步,所述前端流程調(diào)度查詢應(yīng)用模塊包括升級(jí)管理模塊用于完成流程設(shè)計(jì)、打包升級(jí)和升級(jí)發(fā)布;程序管理模塊用于對(duì)程序進(jìn)行管理,包括手工修復(fù)程序、設(shè)置程序優(yōu)先級(jí)、增加或刪除程序等,同時(shí)將對(duì)程序的管理寫(xiě)入到操作日志中,將要執(zhí)行的程序放入到程序池中;流程管理模塊用于對(duì)流程進(jìn)行管理,包括根據(jù)元數(shù)據(jù)分析把程序進(jìn)行邏輯劃分成流程,流程的任務(wù)實(shí)例化,對(duì)實(shí)例化的流程進(jìn)行調(diào)度運(yùn)行、手工修復(fù)和日志監(jiān)控,此外,通過(guò)流程管理也可以對(duì)流程進(jìn)行增加刪除;流程管理模塊的功能主要是流程運(yùn)行、手工修復(fù)和流程運(yùn)行后的日志監(jiān)控這三個(gè)方面,其中,流程運(yùn)行功能即是指根據(jù)配置的流程依賴關(guān)系和程序節(jié)點(diǎn)的依賴關(guān)系自動(dòng)運(yùn)行程序,當(dāng)運(yùn)行的時(shí)間到達(dá)后,會(huì)控制當(dāng)前流程中所有的程序進(jìn)行運(yùn)行;手工修復(fù)功能即是當(dāng)流程運(yùn)行后,可以在流程管理中手工修復(fù)單個(gè)流程進(jìn)行運(yùn)行;流程運(yùn)行后日志監(jiān)控功能即是在流程運(yùn)行后,可以把運(yùn)行后的日志消息存放在后臺(tái)日志中進(jìn)行監(jiān)控,便于查看運(yùn)行歷史情況。日志管理模塊日志管理模塊把流程管理中實(shí)例化的任務(wù)進(jìn)行運(yùn)行監(jiān)控,再把運(yùn)行過(guò)程中的信息寫(xiě)入日志表中,日志管理模塊為用戶提供這些日志的查詢和管理,包括程序運(yùn)行日志查詢、錯(cuò)誤日志查詢、操作日志查詢;告警管理模塊用于對(duì)告警信息進(jìn)行管理,包括告警配置和告警發(fā)送;當(dāng)程序運(yùn)行完成、超時(shí)、錯(cuò)誤時(shí),系統(tǒng)將以短信、郵件和旺旺等形式通知用戶,從而達(dá)到告警和通知的目的;告警配置是指每個(gè)用戶可以根據(jù)自己的需要選擇需要配置告警的程序,同時(shí)選擇告警的發(fā)送方式(手機(jī)短信、EMAIL)和告警類型(超時(shí)報(bào)警、錯(cuò)誤報(bào)警、成功通知);告警發(fā)送是指根據(jù)用戶的配置信息進(jìn)行告警信息的發(fā)送。進(jìn)一步,所述后臺(tái)流程調(diào)度引擎模塊通過(guò)Socket通信方式與所述代理服務(wù)模塊進(jìn)行通信。進(jìn)一步,所述前端流程調(diào)度查詢應(yīng)用模塊通過(guò)ESB總線接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果。進(jìn)一步,所述消息發(fā)送模塊模塊通過(guò)短信接口或郵件接口發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息。進(jìn)一步,所述流程設(shè)計(jì)模塊進(jìn)行流程設(shè)計(jì)包括設(shè)計(jì)流程和程序、管理配置設(shè)計(jì)的流程和程序、將設(shè)計(jì)的流程和程序打包成升級(jí)包。進(jìn)一步,所述設(shè)計(jì)的流程和程序包括流程與流程之間的依賴關(guān)系、程序與程序之間的依賴關(guān)系。采用上述方案的有益效果是所述調(diào)度系統(tǒng)的調(diào)度管理界面清晰簡(jiǎn)單明了,用戶操作簡(jiǎn)單,簡(jiǎn)化了上線流程,降低了維護(hù)成高;所述調(diào)度系統(tǒng)能獨(dú)立穩(wěn)定運(yùn)行,不會(huì)因?yàn)橥饨绲沫h(huán)境而影響調(diào)度程序造成死機(jī)。此外,所述流程設(shè)計(jì)模塊完全采用離線方式進(jìn)行流程設(shè)計(jì),避免了在線進(jìn)行流程設(shè)計(jì)對(duì)生產(chǎn)環(huán)境的影響;所述流程設(shè)計(jì)模塊采用圖形化的流程設(shè)計(jì),通過(guò)鼠標(biāo)拖拉方式即可設(shè)計(jì)流程和程序。實(shí)現(xiàn)了整個(gè)調(diào)度環(huán)境的全局版本控制,不至于管理混亂,克服了前置依賴容易配錯(cuò)或遺漏的缺陷。記錄操作日志和多種調(diào)度監(jiān)控通知的方式方便開(kāi)發(fā)和運(yùn)維人員進(jìn)行日常流程問(wèn)題排查和作業(yè)程序跟蹤。
圖I為本發(fā)明所述調(diào)度系統(tǒng)的整體架構(gòu)圖; 圖2為本發(fā)明所述前端流程調(diào)度查詢應(yīng)用模塊的管理配置流程圖3為本發(fā)明所述調(diào)度系統(tǒng)的升級(jí)管理流程圖;圖4為本發(fā)明所述調(diào)度系統(tǒng)的程序管理流程圖;圖5為本發(fā)明所述調(diào)度系統(tǒng)的流程管理流程圖;圖6為本發(fā)明所述調(diào)度系統(tǒng)的日志管理流程圖;圖7為本發(fā)明所述調(diào)度系統(tǒng)的告警管理流程圖。
具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。IS/BI-Scheduler調(diào)度中心系統(tǒng)是本發(fā)明所述的調(diào)度系統(tǒng)的一個(gè)實(shí)施例,其整體架構(gòu)如圖I所示,包括至少一個(gè)以上的代理服務(wù)模塊,用于接收遠(yuǎn)程機(jī)器上運(yùn)行程序的消息。后臺(tái)流程調(diào)度引擎模塊所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊互相連接,用于實(shí)現(xiàn)所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊間的通信及控制程序運(yùn)行。這里,所述后臺(tái)流程調(diào)度引擎模塊通過(guò)Socket通信方式與所述代理服務(wù)模塊進(jìn)行通信;ActiveMQ模塊所述ActiveMQ模塊與所述后臺(tái)流程調(diào)度引擎模塊相連接,用于從所述后臺(tái)流程調(diào)度引擎模塊接收所述代理服務(wù)模塊上的程序的執(zhí)行消息,并對(duì)所述執(zhí)行消息進(jìn)行隊(duì)形控制。前端流程調(diào)度查詢應(yīng)用模塊所述前端流程調(diào)度查詢應(yīng)用模塊與所述ActiveMQ模塊互相連接,用于取出并展示所述ActiveMQ模塊的隊(duì)列中的信息,同時(shí)也用于將前端頁(yè)面的觸發(fā)消息放入到所述ActiveMQ模塊中進(jìn)行排隊(duì);所述前端流程調(diào)度查詢應(yīng)用模塊與所述后臺(tái)流程調(diào)度引擎模塊連接,用于接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果。這里,所述前端流程調(diào)度查詢應(yīng)用模塊通過(guò)ESB總線接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果。
消息發(fā)送模塊所述消息發(fā)送模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息。這里,所述消息發(fā)送模塊模塊通過(guò)短信接口或郵件接口發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息。權(quán)限管理模塊所述權(quán)限管理模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于控制所述前端流程調(diào)度查詢應(yīng)用模塊的各個(gè)管理功能模塊的權(quán)限分配和管理。流程設(shè)計(jì)模塊本實(shí)施例采用一個(gè)流程設(shè)計(jì)器作為流程設(shè)計(jì)模塊,所述流程設(shè)計(jì)器與所述前端流程調(diào)度查詢應(yīng)用模塊相連,所述流程設(shè)計(jì)器采用離線方式和圖形化方式進(jìn)行流程設(shè)計(jì)。這里,所述流程設(shè)計(jì)器進(jìn)行流程設(shè)計(jì)包括設(shè)計(jì)流程和程序、管理配置設(shè)計(jì)的流程和程序、將設(shè)計(jì)的流程和程序打包成升級(jí)包,其中所述設(shè)計(jì)的流程和程序包括流程與流程之間的依賴關(guān)系、程序與程序之間的依賴關(guān)系;數(shù)據(jù)統(tǒng)一調(diào)度模塊所述數(shù)據(jù)統(tǒng)一調(diào)度模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于根據(jù)所述前端流程調(diào)度查詢應(yīng)用模塊中提供的任務(wù)啟動(dòng)和查詢信息進(jìn)行數(shù)據(jù)的統(tǒng)一調(diào)度。這里的數(shù)據(jù)統(tǒng)一調(diào)度模塊具體是指數(shù)據(jù)門(mén)戶等系統(tǒng)。根據(jù)圖2所示的所述前端流程調(diào)度查詢應(yīng)用模塊的管理配置流程圖可知,所述前端流程調(diào)度查詢應(yīng)用模塊包括多個(gè)具有管理功能的模塊,所述流程設(shè)計(jì)器將設(shè)計(jì)好的流程送入升級(jí)管理模塊,經(jīng)升級(jí)管理模塊將設(shè)計(jì)好的流程打包升級(jí)并發(fā)布為程序,再將程序送入管理模塊,負(fù)責(zé)對(duì)程序進(jìn)行修復(fù)、增加、刪除等管理,最后把要執(zhí)行的程序送入程序池中,同時(shí)是程序也寫(xiě)入到操作日志中。程序池根據(jù)元數(shù)據(jù)分析結(jié)果,將要執(zhí)行的程序送入流程管理模塊,通過(guò)流程管理模塊的解析,把流程進(jìn)行任務(wù)實(shí)例化。實(shí)例化后的流程進(jìn)入日志管理模塊,把運(yùn)行過(guò)程中的信息寫(xiě)入日志表。日志管理模塊監(jiān)控得到的告警信息進(jìn)入告警管理模塊,告警管理模塊讀取告警配置信息,并把告警消息發(fā)送到指定的人。具體分析如下升級(jí)管理模塊用于完成流程設(shè)計(jì)、打包升級(jí)和升級(jí)發(fā)布。所述升級(jí)管理模塊進(jìn)行升級(jí)管理的流程如圖3所示,先在流程設(shè)計(jì)器中把流程與流程之間的依賴關(guān)系、流程運(yùn)行周期、程序節(jié)點(diǎn)及依賴關(guān)系等設(shè)計(jì)好,再將設(shè)計(jì)好的流程打包成升級(jí)包,最后把打包好的升級(jí)包發(fā)送到調(diào)度系統(tǒng)中。程序管理模塊用于對(duì)程序進(jìn)行管理,包括手工修復(fù)程序、設(shè)置程序優(yōu)先級(jí)、增加或刪除程序、將對(duì)程序的管理寫(xiě)入到操作日志中、將要執(zhí)行的程序放入到程序池中。所述程序管理模塊進(jìn)行程序管理的流程如圖4所示,程序是最小的可運(yùn)行單元,它可以是一個(gè)TCL (Tool Command Language,工具命令語(yǔ)言)、一個(gè)SHELL腳本、一個(gè)JAVA包或者一個(gè)C程序。程序送入程序管理模塊進(jìn)行維護(hù),包括增加、修改、刪除、查詢程序,再把程序列表放入程序池中,同時(shí)也將程序?qū)懭氩僮魅罩?。流程管理模塊用于對(duì)流程進(jìn)行管理,包括根據(jù)元數(shù)據(jù)分析把程序進(jìn)行邏輯劃分成流程,流程的任務(wù)實(shí)例化,對(duì)實(shí)例化的流程進(jìn)行調(diào)度運(yùn)行、手工修復(fù)和日志監(jiān)控,此外,通過(guò)流程管理也可以對(duì)流程進(jìn)行增加刪除;流程管理模塊的功能主要是流程運(yùn)行、手工修復(fù)和流程運(yùn)行后的日志監(jiān)控這三個(gè)方面,其中,流程運(yùn)行功能即是指根據(jù)配置的流程依賴關(guān)系和程序節(jié)點(diǎn)的依賴關(guān)系自動(dòng)運(yùn)行程序,當(dāng)運(yùn)行的時(shí)間到達(dá)后,會(huì)控制當(dāng)前流程中所有的程序進(jìn)行運(yùn)行;手工修復(fù)功能即是當(dāng)流程運(yùn)行后,可以在流程管理中手工修復(fù)單個(gè)流程進(jìn)行運(yùn)行;流程運(yùn)行后日志監(jiān)控功能即是在流程運(yùn)行后,可以把運(yùn)行后的日志消息存放在后臺(tái)日志中進(jìn)行監(jiān)控,便于查看運(yùn)行歷史情況。所述流程管理模塊進(jìn)行流程管理的流程圖如圖5所示,根據(jù)元數(shù)據(jù)分析將程序池中的程序進(jìn)行邏輯劃分成流程,再把流程任務(wù)實(shí)例化,實(shí)例化后的流程可進(jìn)行流程運(yùn)行、手工修復(fù)和流程運(yùn)行后的日志監(jiān)控。 日志管理模塊日志管理模塊把流程管理中實(shí)例化的任務(wù)進(jìn)行運(yùn)行監(jiān)控,再把運(yùn)行過(guò)程中的信息寫(xiě)入日志表中,日志管理模塊為用戶提供這些日志的查詢和管理,包括程序運(yùn)行日志查詢、錯(cuò)誤日志查詢、操作日志查詢。所述日志管理模塊進(jìn)行日志管理的流程圖如圖6所示,可在日志管理模塊中查詢?nèi)蝿?wù)日志和操作日志,其中,Agent管理操作、程序管理操作、任務(wù)管理操作和流程管理操作都將被記錄在操作日志中。其中,任務(wù)日志是把程序和流程運(yùn)行的結(jié)果記錄下來(lái),即主要是用于記錄日志和查詢?nèi)罩镜模欢蝿?wù)管理是用于管理任務(wù)的,可以停止、刪除和修改任務(wù),這里所謂任務(wù)就是一個(gè)正在運(yùn)行的流程。告警管理模塊用于對(duì)告警信息進(jìn)行管理,包括告警配置和告警發(fā)送;當(dāng)程序運(yùn)行完成、超時(shí)、錯(cuò)誤時(shí),系統(tǒng)將以短信、郵件和旺旺等形式通知用戶,從而達(dá)到告警和通知的目的;告警配置是指每個(gè)用戶可以根據(jù)自己的需要選擇需要配置告警的程序,同時(shí)選擇告警的發(fā)送方式(手機(jī)短信、EMAIL)和告警類型(超時(shí)報(bào)警、錯(cuò)誤報(bào)警、成功通知);告警發(fā)送是指根據(jù)用戶的配置信息進(jìn)行告警信息的發(fā)送。所述告警管理模塊進(jìn)行告警管理的流程圖如圖7所示,每個(gè)用戶根據(jù)自己的需要進(jìn)行告警配置,而進(jìn)行告警配置時(shí)的配置信息和運(yùn)行日志都送入告警監(jiān)聽(tīng)器中進(jìn)行管理,當(dāng)運(yùn)行日志與配置信息有矛盾,即出現(xiàn)告警時(shí),通過(guò)短fg、Email和旺旺通知用戶。IS/BI-Scheduler調(diào)度中心系統(tǒng)完全基于java技術(shù)進(jìn)行開(kāi)發(fā),可以無(wú)縫集成到門(mén)戶平臺(tái)中進(jìn)行統(tǒng)一訪問(wèn)使用,支持多種調(diào)度機(jī)制,如按小時(shí)、周、月年進(jìn)行配置。在調(diào)度系統(tǒng)中內(nèi)置了多種調(diào)度監(jiān)控通知機(jī)制和實(shí)時(shí)查詢監(jiān)控。在調(diào)度配置方面,可以和數(shù)據(jù)倉(cāng)庫(kù)業(yè)務(wù)主題結(jié)合起來(lái),按主題進(jìn)行流程劃分管理,這樣整個(gè)調(diào)度流程業(yè)務(wù)邊界清晰,所有調(diào)度配置元數(shù)據(jù)可以通過(guò)元數(shù)據(jù)管理平臺(tái)進(jìn)行查詢,對(duì)整個(gè)調(diào)度系統(tǒng)可以支持手工命令進(jìn)行管理。支持統(tǒng)一界面監(jiān)控、代碼管理、易擴(kuò)展、JOB工作管理、統(tǒng)一認(rèn)證管理、分布式系統(tǒng)環(huán)境。在IS/BI-Scheduler調(diào)度中心系統(tǒng)進(jìn)行調(diào)度的實(shí)施步驟如下步驟I :IS/BI-Scheduler調(diào)度中心系統(tǒng)的安裝。主要分以下步驟完成安裝JDK,即 Java Development Kit ;解壓etlstudio. zip 壓縮包到/uOl/etl 目錄下;按照先后順序依次導(dǎo)入sql腳本;修改oracle元數(shù)據(jù)庫(kù)位置。關(guān)于修改修改oracle元數(shù)據(jù)庫(kù)位置,分三步進(jìn)行修改首先,修改文件/uOl/etl/etlstudio/webapps/etlstdio/WEB-INF/applicationContext. xml。其次,在windows 下修改文件 schedule-dal. jar 里的 schedule-dal. jar\META-INF\spring\schedule-dal-db. xml 文件。最后,將修改后的schedule-dal. jar 覆蓋到 \u01\etl\etlstudio\sch\daemon 下和 etlstudio\webapps\schedule-web\WEB_INF\lib 下。步驟2 IS/BI-Scheduler調(diào)度中心系統(tǒng)的流程設(shè)計(jì)及打包在windows下打開(kāi)ETLStudio流程設(shè)計(jì)器,把程序節(jié)點(diǎn)拖到中間空白處,可以開(kāi)始設(shè)計(jì)程序和流程、程序與程序之間的依賴、流程與流程之間的依賴。配置流程運(yùn)行周期后,對(duì)其進(jìn)行保存,點(diǎn)擊文件菜單下的“生成升級(jí)包”就可以把所有流程打包成一個(gè)zip壓縮包。步驟3 IS/BI-Scheduler調(diào)度中心系統(tǒng)的啟動(dòng)調(diào)度服務(wù)及流程升級(jí)在etlstudio目錄下執(zhí)行start, sh腳本啟動(dòng)調(diào)度服務(wù),通過(guò)http://調(diào)度服務(wù)器IP :8080/etlStUdiO/打開(kāi)調(diào)度的主頁(yè)面,打開(kāi)調(diào)度前臺(tái)管理配置頁(yè)面的升級(jí)管理模塊,選中流程設(shè)計(jì)器中保存好的升級(jí)包,就可以進(jìn)行流程升級(jí)。
步驟4 :IS/BI_Scheduler調(diào)度中心系統(tǒng)的流程運(yùn)行當(dāng)流程升級(jí)好之后,IS/BI-Scheduler調(diào)度中心系統(tǒng)就可以根據(jù)設(shè)置好調(diào)度策略進(jìn)行運(yùn)行了,運(yùn)行中通過(guò)調(diào)度主頁(yè)面可以進(jìn)行流程管理(包括流程手動(dòng)修復(fù)、查詢、運(yùn)行方式等)、程序管理(包括程序單獨(dú)手工修復(fù)、查詢、元數(shù)據(jù)分析、優(yōu)先級(jí)等)、日志管理(包括監(jiān)控所有流程下包含的程序的運(yùn)行狀態(tài)和管理所有流程下的程序的狀態(tài)、修復(fù)和運(yùn)行日志
等)、告警管理等。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種用于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的調(diào)度系統(tǒng),其特征在于,包括 至少一個(gè)以上的代理服務(wù)模塊,用于接收遠(yuǎn)程機(jī)器上運(yùn)行程序的消息; 后臺(tái)流程調(diào)度引擎模塊所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊互相連接,用于實(shí)現(xiàn)所述后臺(tái)流程調(diào)度引擎模塊與所述代理服務(wù)模塊間的通信及控制程序運(yùn)行;ActiveMQ模塊所述ActiveMQ模塊與所述后臺(tái)流程調(diào)度引擎模塊相連接,用于從所述后臺(tái)流程調(diào)度引擎模塊接收所述代理服務(wù)模塊上的程序的執(zhí)行消息,并對(duì)所述執(zhí)行消息進(jìn)行隊(duì)形控制; 前端流程調(diào)度查詢應(yīng)用模塊所述前端流程調(diào)度查詢應(yīng)用模塊與所述ActiveMQ模塊互相連接,用于取出并展示所述ActiveMQ模塊的隊(duì)列中的信息,同時(shí)也用于將前端頁(yè)面的觸發(fā)消息放入到所述ActiveMQ模塊中進(jìn)行排隊(duì);所述前端流程調(diào)度查詢應(yīng)用模塊與所述后臺(tái)流程調(diào)度引擎模塊連接,用于接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果;消息發(fā)送模塊所述消息發(fā)送模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息; 權(quán)限管理模塊所述權(quán)限管理模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于控制所述前端流程調(diào)度查詢應(yīng)用模塊的各個(gè)管理功能模塊的權(quán)限分配和管理; 流程設(shè)計(jì)模塊所述流程設(shè)計(jì)模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,所述流程設(shè)計(jì)模塊采用離線方式和圖形化方式進(jìn)行流程設(shè)計(jì); 數(shù)據(jù)統(tǒng)一調(diào)度模塊所述數(shù)據(jù)統(tǒng)一調(diào)度模塊與所述前端流程調(diào)度查詢應(yīng)用模塊相連,用于根據(jù)所述前端流程調(diào)度查詢應(yīng)用模塊中提供的任務(wù)啟動(dòng)和查詢信息進(jìn)行數(shù)據(jù)的統(tǒng)一調(diào)度。
2.根據(jù)權(quán)利要求I所述的調(diào)度系統(tǒng),其特征在于,所述前端流程調(diào)度查詢應(yīng)用模塊包括 升級(jí)管理模塊,用于完成流程設(shè)計(jì)、打包升級(jí)和升級(jí)發(fā)布; 程序管理模塊,用于對(duì)經(jīng)所述升級(jí)管理模塊升級(jí)發(fā)布后的程序進(jìn)行管理; 流程管理模塊,用于對(duì)經(jīng)所述程序管理模塊處理后得到的流程進(jìn)行管理,并用于對(duì)流程進(jìn)行任務(wù)實(shí)例化; 日志管理模塊,用于對(duì)經(jīng)所述流程管理模塊得到的任務(wù)實(shí)例進(jìn)行管理,并用于為用戶提供日志的查詢和管理; 告警管理模塊,根據(jù)查詢所述日志管理模塊提供的日志對(duì)告警信息進(jìn)行管理,并進(jìn)行告警配置和告警發(fā)送。
3.根據(jù)權(quán)利要求I所述的一種調(diào)度系統(tǒng),其特征在于,所述后臺(tái)流程調(diào)度引擎模塊通過(guò)Socket通信方式與所述代理服務(wù)模塊進(jìn)行通信。
4.根據(jù)權(quán)利要求I所述的一種調(diào)度系統(tǒng),其特征在于,所述前端流程調(diào)度查詢應(yīng)用模塊通過(guò)ESB總線接收所述后臺(tái)流程調(diào)度引擎模塊反饋的程序運(yùn)行結(jié)果。
5.根據(jù)權(quán)利要求I所述的一種調(diào)度系統(tǒng),其特征在于,所述消息發(fā)送模塊通過(guò)短信接口或郵件接口發(fā)送所述前端流程調(diào)度查詢應(yīng)用模塊發(fā)出的告警信息。
6.根據(jù)權(quán)利要求I所述的一種調(diào)度系統(tǒng),其特征在于,所述流程設(shè)計(jì)模塊進(jìn)行流程設(shè)計(jì)包括設(shè)計(jì)流程和程序、管理配置設(shè)計(jì)的流程和程序、將設(shè)計(jì)的流程和程序打包成升級(jí)包。
7.根據(jù)權(quán)利要求6所述的一種調(diào)度系統(tǒng),其特征在于,所述設(shè)計(jì)的流程和程序包括流程與流程之間的依賴關(guān)系、程序與程序之間的依賴關(guān) 系。
全文摘要
本發(fā)明涉及一種用于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的調(diào)度系統(tǒng),包括至少一個(gè)以上的代理服務(wù)模塊、后臺(tái)流程調(diào)度引擎模塊、ActiveMQ模塊、前端流程調(diào)度查詢應(yīng)用模塊、消息發(fā)送模塊、權(quán)限管理模塊、流程設(shè)計(jì)模塊和數(shù)據(jù)統(tǒng)一調(diào)度模塊,所述代理服務(wù)模塊與所述后臺(tái)流程調(diào)度引擎模塊互相連接,所述后臺(tái)流程調(diào)度引擎模塊分別與所述ActiveMQ模塊和所述前端流程調(diào)度查詢應(yīng)用模塊相連,所述前端流程調(diào)度查詢應(yīng)用模塊與所述ActiveMQ模塊互相連接,所述前端流程調(diào)度查詢應(yīng)用模塊分別與所述消息發(fā)送模塊、所述權(quán)限管理模塊和所述數(shù)據(jù)統(tǒng)一調(diào)度模塊相連。本發(fā)明的調(diào)度系統(tǒng)解決了基于企業(yè)數(shù)據(jù)統(tǒng)一平臺(tái)的調(diào)度系統(tǒng)實(shí)施困難、運(yùn)行不穩(wěn)定、操作復(fù)雜、維護(hù)成本高、沒(méi)有圖形化配置的問(wèn)題。
文檔編號(hào)G06Q10/06GK102663543SQ20121007859
公開(kāi)日2012年9月12日 申請(qǐng)日期2012年3月22日 優(yōu)先權(quán)日2012年3月22日
發(fā)明者官輝, 張禹, 文彥峰, 魯超, 黃根太 申請(qǐng)人:北京英孚斯邁特信息技術(shù)有限公司