易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法
【專(zhuān)利摘要】本發(fā)明提供了一種易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,包括a.將一組包含有模糊表達(dá)式的規(guī)則集合提交給引擎編譯器,所有的模糊概念均用特定義符號(hào)進(jìn)行了標(biāo)示;b.引擎編譯器對(duì)這組規(guī)則集合進(jìn)行編譯,識(shí)別出所有模糊表達(dá)式;c.對(duì)所有的模糊表達(dá)式進(jìn)行解釋?zhuān)赏活?lèi)型的操作碼;d.對(duì)非模糊表達(dá)式進(jìn)行編譯,得到與其各自具體對(duì)應(yīng)的操作碼;e.完成其它編譯工作,利用編譯版本的規(guī)則集合得到脆性規(guī)則引擎,對(duì)涉及模糊規(guī)則的處理全部設(shè)置為外部調(diào)用,不僅提高了模糊規(guī)則的擴(kuò)展能力,而且修改容易。
【專(zhuān)利說(shuō)明】易擴(kuò)展的脆性規(guī)則弓I擎實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及IT運(yùn)維領(lǐng)域,特別是一種旨在提高運(yùn)維系統(tǒng)智能化和定制靈活性的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]隨著信息化建設(shè)的深入發(fā)展,信息系統(tǒng)日益成為核心業(yè)務(wù)處理的關(guān)鍵基礎(chǔ)設(shè)施;為了保證網(wǎng)絡(luò)、服務(wù)器、數(shù)據(jù)庫(kù)等IT資源的正常運(yùn)行,需要對(duì)其進(jìn)行高質(zhì)量的維護(hù);依靠人工進(jìn)行對(duì)信息系統(tǒng)進(jìn)行初級(jí)維護(hù)的做法已經(jīng)無(wú)法滿(mǎn)足運(yùn)維的及時(shí)性、準(zhǔn)確性要求;為了提高運(yùn)維質(zhì)量,降低運(yùn)維成本,IT運(yùn)維系統(tǒng)應(yīng)運(yùn)而生,規(guī)則庫(kù)作為IT運(yùn)維系統(tǒng)的核心部件,是運(yùn)維系統(tǒng)功能實(shí)現(xiàn)的重要基礎(chǔ),隨著運(yùn)維系統(tǒng)自動(dòng)化、智能化的要求不斷提高,一方面,現(xiàn)有的規(guī)則庫(kù)均為脆性規(guī)則庫(kù),無(wú)法適應(yīng)運(yùn)維規(guī)則不斷豐富、靈活的實(shí)際需要,比如當(dāng)系統(tǒng)某機(jī)器負(fù)載“過(guò)重”的時(shí)候要求產(chǎn)生告警并進(jìn)行相應(yīng)的分流處理,這個(gè)“過(guò)重”的界定在現(xiàn)有規(guī)則庫(kù)的實(shí)現(xiàn)方式中,作為一種包含模糊概念的模糊規(guī)則,就不容易輕松解決,經(jīng)常需要對(duì)規(guī)則庫(kù)進(jìn)行重大的修改和調(diào)整,且極易出錯(cuò);另一方面,運(yùn)維系統(tǒng)的功能和要求不斷提高,除開(kāi)基礎(chǔ)的運(yùn)行監(jiān)控之外,還希望運(yùn)維系統(tǒng)能夠?qū)ο到y(tǒng)優(yōu)化、規(guī)劃提供分析參考等,而這在不同的組織和IT基礎(chǔ)設(shè)施系統(tǒng)中其規(guī)則就存在極大的差異,這就要求運(yùn)維系統(tǒng)對(duì)不同的項(xiàng)目具有更高的適應(yīng)性和定制靈活性,這在現(xiàn)有的脆性規(guī)則庫(kù)中是難以滿(mǎn)足的。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的在于提供一種旨在提高系統(tǒng)智能化和定制靈活性的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,采用形式上的脆性規(guī)則語(yǔ)言表達(dá)且只表達(dá)核心規(guī)則邏輯,而實(shí)質(zhì)模糊的規(guī)則均視為特殊的單一類(lèi)型交易處理,從而使得模糊規(guī)則的實(shí)現(xiàn)及其定制調(diào)整只需要對(duì)既有的、核心的脆性規(guī)則引擎在邏輯表現(xiàn)層面做適當(dāng)?shù)男薷木涂梢缘玫綕M(mǎn)足和實(shí)現(xiàn),以便在提高運(yùn)維系統(tǒng)的模糊規(guī)則適應(yīng)和處理能力以滿(mǎn)足智能化要求的基礎(chǔ)上,同時(shí)滿(mǎn)足修改靈活、定制容易的要求。
[0004]本發(fā)明的目的采用如下技術(shù)方案實(shí)現(xiàn):易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,包括如下步驟:
a.將一組包含有模糊表達(dá)式的規(guī)則集合提交給引擎編譯器,所有的模糊概念均用特定義符號(hào)進(jìn)行了標(biāo)示;
b.引擎編譯器對(duì)這組規(guī)則集合進(jìn)行編譯,識(shí)別出所有模糊表達(dá)式;
c.對(duì)所有的模糊表達(dá)式進(jìn)行解釋?zhuān)赏活?lèi)型的操作碼;
d.對(duì)非模糊表達(dá)式進(jìn)行編譯,得到與其各自具體對(duì)應(yīng)的操作碼;
e.完成其它編譯工作,利用編譯版本的規(guī)則集合得到脆性規(guī)則引擎。
[0005]進(jìn)一步的方案是,所述同一類(lèi)型的操作碼包含有對(duì)模糊引擎的調(diào)用。
[0006]采用這種方案的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,核心規(guī)則邏輯依然采用脆性規(guī)則庫(kù)實(shí)現(xiàn),所有的規(guī)則邏輯中全部采用形式上的脆性規(guī)則進(jìn)行表達(dá),所有的模糊概念均用特定義符號(hào)進(jìn)行了標(biāo)示,對(duì)編譯器而言,所有的模糊表達(dá)式被視為一種特殊的單一類(lèi)型指令,對(duì)其編譯不實(shí)現(xiàn)具體的演算邏輯,而全部生成包含有對(duì)模糊引擎的調(diào)用的操作碼,這樣做的好處在于核心規(guī)則邏輯更加貼切運(yùn)維工作邏輯,在核心規(guī)則層面回避掉了對(duì)模糊的指標(biāo)和規(guī)則的實(shí)現(xiàn)困難,而將模糊指標(biāo)和規(guī)則的具體實(shí)現(xiàn)采用調(diào)用獨(dú)立的模塊,也即所謂模糊引擎進(jìn)行處理,從而對(duì)于核心規(guī)則邏輯而言,邏輯清晰、定制容易,而同時(shí),由于在核心規(guī)則邏輯中不需要考慮模糊規(guī)則的實(shí)現(xiàn),可以更加靈活、豐富的采用模糊概念來(lái)表達(dá)規(guī)則邏輯,可提高系統(tǒng)的智能化水平。
[0007]本發(fā)明的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法進(jìn)一步的方案是,所述對(duì)模糊引擎的調(diào)用中包含模糊表達(dá)式。
[0008]采用這種方案的好處是,脆性規(guī)則引擎對(duì)整個(gè)模糊規(guī)則不進(jìn)行處理,而將該模糊判斷的規(guī)則連同數(shù)據(jù)全部提交給模糊引擎處理,由此可以提高模糊引擎的邏輯性,以提高智能化水平,比如針對(duì)同一模糊概念的指標(biāo)在不同的模糊規(guī)則下可以有不同的邏輯,與前述模糊引擎只對(duì)采用模糊概念的指標(biāo)本身進(jìn)行轉(zhuǎn)化處理相比,模糊概念的轉(zhuǎn)化、所依賴(lài)的數(shù)據(jù)不再是獨(dú)立于輸入數(shù)據(jù)的獨(dú)立規(guī)則,而需要結(jié)合具體的模糊規(guī)則和待判數(shù)據(jù)集進(jìn)行處理,擴(kuò)充了本方法的適用范圍。
[0009]本發(fā)明的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法進(jìn)一步的方案是,所述同一類(lèi)型的操作碼包含有對(duì)模糊引擎返回結(jié)果的處理,所述模糊引擎返回的結(jié)果是脆性的。
[0010]采用這種方案的好處在于:模糊引擎只對(duì)采用模糊概念的指標(biāo)本身進(jìn)行轉(zhuǎn)化處理,將模糊概念向一組確定的指標(biāo)進(jìn)行轉(zhuǎn)化,而推算邏輯依然保持在核心邏輯中,保證了脆性規(guī)則引擎的邏輯完整性。
[0011]采用本發(fā)明所述的易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,針對(duì)運(yùn)維系統(tǒng)的智能化要求和定制需求豐富的實(shí)際,基于對(duì)運(yùn)維工作邏輯、模糊規(guī)則重新分配,對(duì)涉及模糊規(guī)則的處理全部設(shè)置為外部調(diào)用,不僅提高了模糊規(guī)則的處理能力、擴(kuò)展能力,為提高智能化水平提供了技術(shù),而且定制方便,修改容易,模糊規(guī)則的處理既可以是調(diào)用模糊引擎對(duì)模糊概念本身的轉(zhuǎn)化處理,也可以是將對(duì)模糊規(guī)則的整體處理交由模糊引擎演算,擴(kuò)展靈活性高。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0012]圖1為采用本發(fā)明所述方法的脆性規(guī)則引擎的編譯流程圖;
圖2為采用本發(fā)明所得脆性規(guī)則引擎的規(guī)則系統(tǒng)的結(jié)構(gòu)示意圖;
圖3為采用本發(fā)明所得脆性規(guī)則引擎的運(yùn)維系統(tǒng)的運(yùn)行流程圖。
【具體實(shí)施方式】
[0013]為了更好的揭示本發(fā)明的本質(zhì),下面結(jié)合附圖從脆性規(guī)則引擎的編制、編譯,以及采用這種引擎的規(guī)則系統(tǒng)構(gòu)成、待判數(shù)據(jù)集的演算過(guò)程等方面進(jìn)行進(jìn)行闡述。
[0014]本發(fā)明的思路是通過(guò)延遲模糊表達(dá)式的解釋以實(shí)現(xiàn)在既有脆性規(guī)則引擎的基礎(chǔ)上增加模糊規(guī)則處理能力目的,模糊規(guī)則和脆性規(guī)則的區(qū)別僅僅在于其中是否包含有模糊概念,包含有模糊概念的表達(dá)式體現(xiàn)的就是模糊規(guī)則,本發(fā)明的關(guān)鍵在核心規(guī)則庫(kù),也即直接在脆性規(guī)則引擎中采用的規(guī)則組,的構(gòu)建中不考慮模糊概念的處理,而當(dāng)規(guī)則中包含有模糊概念的時(shí)候,通過(guò)調(diào)用獨(dú)立于脆性規(guī)則引擎的專(zhuān)門(mén)模塊進(jìn)行處理,從而在核心規(guī)則引擎的編制的時(shí)候,無(wú)需解決模糊規(guī)則的處理實(shí)現(xiàn),而延遲到專(zhuān)門(mén)模塊中解決,在脆性規(guī)則引擎的構(gòu)建中,對(duì)脆性規(guī)則語(yǔ)言進(jìn)行擴(kuò)展,通過(guò)將模糊概念和/或模糊表達(dá)式用諸如“[]”的特定義符號(hào)標(biāo)示即可實(shí)現(xiàn),在對(duì)規(guī)則引擎源碼進(jìn)行編譯的時(shí)候,編譯器對(duì)其中的模糊規(guī)則均編譯成通用的、或者說(shuō)同類(lèi)的操作碼,比如一段包含有調(diào)用的操作碼,在規(guī)則引擎執(zhí)行的過(guò)程中,脆性規(guī)則在規(guī)則引擎內(nèi)部得到演算實(shí)現(xiàn),而當(dāng)執(zhí)行到模糊規(guī)則的時(shí)候,通過(guò)調(diào)用外部的定制處理模塊來(lái)完成演算,具體過(guò)程是脆性規(guī)則引擎調(diào)用被稱(chēng)為“模糊引擎”的代理程序,由其根據(jù)具體需要處理的模糊概念和/或模糊規(guī)則選擇調(diào)用定制處理模塊。
[0015]圖1是本發(fā)明所述方法的脆性規(guī)則引擎的編譯流程圖,或者說(shuō)脆性規(guī)則引擎的構(gòu)建流程圖,與現(xiàn)有技術(shù)和公知技術(shù)的區(qū)別在于對(duì)模糊概念和或/模糊規(guī)則的編譯處理上,在步驟210中,將包含有模糊表達(dá)式的一系列規(guī)則提交給編譯器,脆性規(guī)則庫(kù)的表達(dá)采用擴(kuò)展的脆性規(guī)則語(yǔ)言進(jìn)行,所有的規(guī)則表達(dá)依然采用脆性規(guī)則語(yǔ)言的形式,只是對(duì)模糊概念和/或模糊表達(dá)式用諸如“[]”的特定義符號(hào)標(biāo)示,從而可以更貼切的表達(dá)業(yè)務(wù)邏輯,而不考慮規(guī)則的具體實(shí)現(xiàn),在編譯器對(duì)源碼進(jìn)行編譯的時(shí)候,在步驟220中,編譯器對(duì)采用特定義符號(hào)標(biāo)示的模糊概念和/或模糊表達(dá)式進(jìn)行識(shí)別,然后在步驟230中,對(duì)所有的模糊概念和或模糊表達(dá)式生成共同的或者說(shuō)同類(lèi)的一段操作碼,該段操作碼的功能在于實(shí)現(xiàn)對(duì)模糊引擎的調(diào)用,該調(diào)用中可以包含有模糊表達(dá)式,以便模糊引擎根據(jù)該模糊表達(dá)式選擇合適的定制處理模塊,也可以包含對(duì)模糊引擎返回的結(jié)果進(jìn)行規(guī)則判斷,在步驟240中,對(duì)所有的非模糊表達(dá)式進(jìn)行編譯,得到各自的操作碼,由此獲得脆性規(guī)則引擎。
[0016]圖2是采用本發(fā)明所得脆性規(guī)則引擎的規(guī)則系統(tǒng)的結(jié)構(gòu)示意圖,包含有脆性規(guī)則引擎100,可對(duì)輸入數(shù)據(jù),既可以是用戶(hù)輸入的數(shù)據(jù)、也可以是其它系統(tǒng)傳遞的數(shù)據(jù),進(jìn)行處理的規(guī)則推算,脆性規(guī)則引擎100與模糊引擎110通信連接,而該模糊引擎110可以與定制處理模塊121、122、123、128連接,脆性規(guī)則引擎100在執(zhí)行模糊規(guī)則的時(shí)候,將產(chǎn)生一個(gè)對(duì)模糊引擎110的調(diào)用131,模糊引擎110將根據(jù)該調(diào)用131請(qǐng)求選擇合適的定制處理模塊對(duì)該模糊表達(dá)式進(jìn)行處理,該調(diào)用131既可以只包含模糊概念,由定制引擎將其轉(zhuǎn)化為脆性指標(biāo)回傳脆性規(guī)則引擎利用,也可以包含有模糊規(guī)則,模糊引擎110根據(jù)該模糊規(guī)則整體對(duì)定制處理模塊進(jìn)行選擇,直接將規(guī)則推算結(jié)果返回給脆性規(guī)則引擎100。
[0017]圖3是采用本發(fā)明所述方法的運(yùn)維系統(tǒng)的運(yùn)行流程圖,在步驟300中,將各定制處理模塊在模糊弓I擎進(jìn)行注冊(cè)以實(shí)現(xiàn)連接,將模糊弓I擎在脆性規(guī)則引擎注冊(cè)以實(shí)現(xiàn)連接,在步驟310中,脆性規(guī)則引擎接收待判數(shù)據(jù)集,該數(shù)據(jù)集可以為一組數(shù)據(jù)或者包含有實(shí)例,在步驟315中對(duì)待判數(shù)據(jù)集是否涉及模糊規(guī)則的處理進(jìn)行判斷,如果該待判數(shù)據(jù)集涉及模糊規(guī)則的處理,可以是因?yàn)槟承?shù)據(jù)的演算過(guò)程中需要采用模糊概念和/或模糊規(guī)則的適用,則引出步驟320以發(fā)起一個(gè)對(duì)模糊引擎的調(diào)用,在步驟330中,模糊引擎對(duì)模糊規(guī)則進(jìn)行解釋?zhuān)S后在步驟335中選擇合適的定制處理模塊對(duì)其進(jìn)行處理,該處理可以是對(duì)模糊概念的判斷轉(zhuǎn)化也可以是對(duì)整個(gè)模糊規(guī)則的完整演算,同時(shí),在模糊引擎和定制處理模塊之間可以采用緩存連接的方式以提高處理效率,在步驟340中,模糊引擎對(duì)接收定制處理模塊的結(jié)果并進(jìn)行轉(zhuǎn)化得到脆性結(jié)論,并在步驟350中返回給脆性規(guī)則引擎,在步驟360中脆性規(guī)則引擎利用該脆性結(jié)論,直到整個(gè)演算過(guò)程全部結(jié)束,得到最終結(jié)論,循環(huán)進(jìn)行下一組待判數(shù)據(jù)集的處理,需要注意的是,模糊引擎可以是對(duì)模糊概念的轉(zhuǎn)化處理,也可以是對(duì)模糊規(guī)則的處理,如果是對(duì)模糊規(guī)則的處理,在調(diào)用中將包含有整個(gè)模糊規(guī)則,對(duì)定制處理模塊的選用是根據(jù)模糊規(guī)則進(jìn)行的,定制模塊將對(duì)待判數(shù)據(jù)集中的多個(gè)數(shù)據(jù)進(jìn)行利用,待判數(shù)據(jù)集中往往包含有一個(gè)帶有實(shí)參的實(shí)例,而該實(shí)例可以是其它系統(tǒng)提供的或者是用戶(hù)根據(jù)系統(tǒng)提供的問(wèn)卷表提供的。
【權(quán)利要求】
1.易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,其特征在于:包括如下步驟: a.將一組包含有模糊表達(dá)式的規(guī)則集合提交給引擎編譯器,所有的模糊概念均用特定義符號(hào)進(jìn)行了標(biāo)示; b.引擎編譯器對(duì)這組規(guī)則集合進(jìn)行編譯,識(shí)別出所有模糊表達(dá)式; c.對(duì)所有的模糊表達(dá)式進(jìn)行解釋?zhuān)赏活?lèi)型的操作碼; d.對(duì)非模糊表達(dá)式進(jìn)行編譯,得到與其各自具體對(duì)應(yīng)的操作碼; e.完成其它編譯工作,利用編譯版本的規(guī)則集合得到脆性規(guī)則引擎。
2.根據(jù)權(quán)利要求1所述易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,其特征在于:所述同一類(lèi)型的操作碼包含有對(duì)模糊引擎的調(diào)用。
3.根據(jù)權(quán)利要求2所述易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,其特征在于:所述對(duì)模糊引擎的調(diào)用中包含模糊表達(dá)式。
4.根據(jù)權(quán)利要求2所述易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,其特征在于:所述同一類(lèi)型的操作碼包含有對(duì)模糊引擎返回結(jié)果的處理。
5.根據(jù)權(quán)利要求4所述易擴(kuò)展的脆性規(guī)則引擎實(shí)現(xiàn)方法,其特征在于:所述模糊引擎返回的結(jié)果是脆性的。
【文檔編號(hào)】G06N7/02GK103577879SQ201210265009
【公開(kāi)日】2014年2月12日 申請(qǐng)日期:2012年7月28日 優(yōu)先權(quán)日:2012年7月28日
【發(fā)明者】不公告發(fā)明人 申請(qǐng)人:成都勤智數(shù)碼科技股份有限公司