基于復(fù)雜事件處理的業(yè)務(wù)流程監(jiān)控方法
【專利摘要】本發(fā)明屬于數(shù)據(jù)管理【技術(shù)領(lǐng)域】,具體為一種利用復(fù)雜事件處理技術(shù)對(duì)業(yè)務(wù)流程進(jìn)行實(shí)時(shí)監(jiān)控的方法,包括:根據(jù)業(yè)務(wù)流程的上下文和事件語(yǔ)義限定流程查詢語(yǔ)言;利用所述流程查詢語(yǔ)言,建立基本的復(fù)雜事件模式匹配模型;基于所述基本的復(fù)雜事件模式匹配模型建立基于事件的生命周期模型;基于所述基本的復(fù)雜事件模式匹配模型提出事件清理算法;以及基于所述基本的復(fù)雜事件模式匹配模型提出跨模式事件共享算法。基于依據(jù)本發(fā)明的復(fù)雜事件模式匹配模型而實(shí)現(xiàn)的高適應(yīng)性流程監(jiān)控算法,擁有高效的事件清理及共享機(jī)制。本發(fā)明能夠有效支持實(shí)時(shí)的業(yè)務(wù)流程監(jiān)控,處理性能高,伸縮性強(qiáng),即使在海量事件、大量查詢的情況下仍具有較大的吞吐率。
【專利說(shuō)明】基于復(fù)雜事件處理的業(yè)務(wù)流程監(jiān)控方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及業(yè)務(wù)流程監(jiān)控領(lǐng)域,具體涉及一種基于復(fù)雜事件處理技術(shù)的業(yè)務(wù)流程實(shí)時(shí)監(jiān)控方法。
【背景技術(shù)】
[0002]復(fù)雜事件處理技術(shù)興起于最近十年,該技術(shù)主要用于以事件的方式來(lái)處理和分析大量來(lái)自于信息系統(tǒng)特別是分布式系統(tǒng)的數(shù)據(jù)和行為。廣義上的事件是指一個(gè)特定系統(tǒng)或領(lǐng)域內(nèi)已經(jīng)發(fā)生的一個(gè)事件實(shí)例,如訂單系統(tǒng)中一個(gè)已被處理的訂單可以表達(dá)為一個(gè)訂單已處理事件,或者一個(gè)訂單提交事件;而狹義上的事件特指用于計(jì)算的程序?qū)嶓w,如用戶界面的某個(gè)按鈕的按下會(huì)觸發(fā)一個(gè)相應(yīng)按鍵事件從而引發(fā)特定的界面行為,或來(lái)自于射頻接收器發(fā)送給數(shù)據(jù)收集中心的事件。在本發(fā)明中所指的事件主要指建模業(yè)務(wù)流程行為的可用于計(jì)算處理的自定義事件。復(fù)雜事件處理通過(guò)實(shí)時(shí)分析和監(jiān)控持續(xù)產(chǎn)生的即時(shí)事件來(lái)幫助專業(yè)人員理解系統(tǒng)的實(shí)際運(yùn)行情況,快速識(shí)別特定的系統(tǒng)行為模式并采取相應(yīng)措施,更加有效地使用事件來(lái)增強(qiáng)系統(tǒng)操作、性能和安全。復(fù)雜事件處理可以被用于處理許多的信息系統(tǒng)難題,如業(yè)務(wù)流程的自動(dòng)化,調(diào)度和控制程序,網(wǎng)絡(luò)監(jiān)控,性能估計(jì)和入侵檢測(cè)等,目前已存在一些通用的事件處理平臺(tái),如Esper、Rulecore、Cagra等。
[0003]而這些傳統(tǒng)的業(yè)務(wù)流程監(jiān)控主要通過(guò)收集已有流程數(shù)據(jù),再通過(guò)離線或滯后的數(shù)據(jù)分析和挖掘算法來(lái)達(dá)到流程監(jiān)控的目的,但最終的分析結(jié)果往往會(huì)因?yàn)榱鞒踢\(yùn)行場(chǎng)景的遷移和流程數(shù)據(jù)的時(shí)效性而呈滯后性,不利于管理層進(jìn)行及時(shí)的決策。
[0004] 文獻(xiàn) Using Complex Event Processing for Dynamic Business ProcessAdaptation (SCCi 10)提出了一種基于事件關(guān)聯(lián)規(guī)則的精確的事件檢測(cè)算法,可以支持來(lái)自于業(yè)務(wù)流程的多個(gè)事件流。但是很少有工作考慮到大量查詢和海量實(shí)時(shí)事件情況下的業(yè)務(wù)流程監(jiān)控系統(tǒng)的性能問(wèn)題。其中,主要的性能問(wèn)題體現(xiàn)為在業(yè)務(wù)流程的上下文中,大量查詢會(huì)涉及到事件的重疊即子模式共享的情況,因此造成大量事件的重復(fù)處理從而增加了時(shí)間開銷,失效事件(過(guò)時(shí),部分匹配失敗)的不能及時(shí)清理也會(huì)造成額外的時(shí)間和空間開銷。很多特定的事件模式匹配算法如High-Performance Composite Event MonitoringSystemSupporting Large Numbers of Queries and Sources (DEBS 2011)往往只專注于處理單查詢,多事件的情況,其在本發(fā)明所要解決的問(wèn)題上做了一定的工作,但該文獻(xiàn)所提出的方法只限于處理一些簡(jiǎn)單的事件模式,如順序模式,合取模式(&),析取模式(I),否模式(!)等.[0005]一般的事件模式匹配算法都會(huì)把一個(gè)模式轉(zhuǎn)換為一個(gè)自動(dòng)機(jī)來(lái)處理,由于流程監(jiān)控查詢的復(fù)雜性,往往會(huì)選擇非確定性自動(dòng)機(jī)(Nondeterministic Finite Automata:NFA)。往往由于監(jiān)控需求的復(fù)雜性,很多監(jiān)控查詢體現(xiàn)為簡(jiǎn)單事件模式的混合和嵌套,會(huì)造成最終的NFA的容量的增大。而對(duì)于監(jiān)控算法來(lái)說(shuō),往往對(duì)于即時(shí)到達(dá)的事件是一遍處理的,而這與NFA的工作方式是不兼容的,NFA可能存在大量回溯的情況,因此對(duì)于這些算法來(lái)說(shuō),往往對(duì)NFA的工作方式進(jìn)行了改良使其適應(yīng)于復(fù)雜事件處理,但帶來(lái)的問(wèn)題是需要存儲(chǔ)大量的部分匹配,NFA越復(fù)雜,需要存儲(chǔ)的中間狀態(tài)就會(huì)越多。如果不能及時(shí)清理失效的中間狀態(tài),也會(huì)造成極大的事件處理開銷。此外,事件共享的程度也決定了處理性能優(yōu)化的程度,準(zhǔn)確地說(shuō)事件共享對(duì)于復(fù)雜事件的處理過(guò)程的性能提高有著決定性意義,特別是在流程監(jiān)控的上下文中,很多監(jiān)控查詢都會(huì)對(duì)某些重要流程分支上的事件給予極大的關(guān)注,這些事件的共享決定了在對(duì)這些查詢進(jìn)行驗(yàn)證匹配時(shí),不需要重復(fù)的處理同樣的事件,在處理性能和資源消耗上都有很大的提高。很多工作對(duì)于性能問(wèn)題的處理往往采取隔離的措施加以解決,偏離了整個(gè)的事件處理的算法模型,對(duì)于整體性能的提高并沒(méi)有太大的提高,往往會(huì)增加算法的復(fù)雜性。本發(fā)明同等對(duì)待事件和查詢,一致性地解決了海量事件和大量查詢的可擴(kuò)展性問(wèn)題。本發(fā)明首次考慮了在海量事件、大量查詢的情況下具有高性能,可擴(kuò)展的基于復(fù)雜事件的流程監(jiān)控算法,在事件共享機(jī)制和擴(kuò)展性上都有著較大的提高。
【發(fā)明內(nèi)容】
[0006]鑒于對(duì)以上【背景技術(shù)】的理解,本發(fā)明的目的,在于提供一種提出基于一定算法模型的于事件匹配,事件共享以及事件清理為一體的流程監(jiān)控算法,使之在海量事件、大量查詢的情況下仍具有較高的性能和擴(kuò)展性。
[0007]本發(fā)明提出了一種利用復(fù)雜事件處理技術(shù)對(duì)業(yè)務(wù)流程進(jìn)行實(shí)時(shí)監(jiān)控的方法,包括:
[0008]a.根據(jù)業(yè)務(wù)流程的上下文和事件語(yǔ)義限定流程查詢語(yǔ)言;
[0009]b.利用所述流程查詢語(yǔ)言,建立基本的復(fù)雜事件模式匹配模型;
[0010]c.基于所述基本的復(fù)雜事件模式匹配模型建立基于事件的生命周期模型;
[0011]d.基于所述基本的復(fù)雜事件模式匹配模型提出跨模式事件共享算法。
[0012]e.基于所述基本的復(fù)雜事件模式匹配模型提出事件清理算法;
[0013]在一個(gè)實(shí)施例中,所述步驟b至少還包括以下項(xiàng)中的至少一項(xiàng):
[0014]基于所述基本的復(fù)雜事件模式匹配模型建立算法接收的事件類型;
[0015]描述事件關(guān)聯(lián)細(xì)節(jié)的數(shù)據(jù)結(jié)構(gòu);
[0016]限定模式匹配中的部分匹配的數(shù)據(jù)結(jié)構(gòu);以及
[0017]限定用于緩沖事件流的數(shù)據(jù)結(jié)構(gòu)。
[0018]在一個(gè)實(shí)施例中,所述步驟c還包括:
[0019]以基于復(fù)雜事件的流程監(jiān)控算法對(duì)事件流進(jìn)行單遍掃描和處理并給出匹配結(jié)果。
[0020]在一個(gè)實(shí)施例中,所述流程查詢語(yǔ)言ePMQ的監(jiān)控框架包括:用戶監(jiān)控接口,基于事件的流程模型,基于事件的流程實(shí)例,事件流和獨(dú)立的事件監(jiān)控組件。
[0021]基于本發(fā)明所提出的核心算法模型,實(shí)現(xiàn)了有效的復(fù)雜事件監(jiān)控算法,對(duì)于新到事件和訂閱其的復(fù)雜事件的匹配調(diào)度過(guò)程保證了其有序性和準(zhǔn)確性,每一個(gè)新到事件都得到了正確的處理,每一個(gè)查詢都確保其訂閱的事件都進(jìn)行了相應(yīng)的匹配,取得了實(shí)時(shí)性和準(zhǔn)確性的平衡。本發(fā)明給出了一種高效的基于引用計(jì)數(shù)策略的事件清理算法,并保證了同現(xiàn)有算法模型的兼容,使得監(jiān)控算法和清理算法的相互協(xié)作,互不干擾。
[0022]本發(fā)明對(duì)于大量流程監(jiān)控查詢中存在的事件共享情況,提出了共享sub-pattern的概念,并給出了盡最大努力的共享挖掘算法,根據(jù)共享sub-pattern的粒度層次,由細(xì)到粗地挖掘出了所有可能的共享情況,并保證了同現(xiàn)有算法模型的兼容。[0023]總而言之,基于依據(jù)本發(fā)明的復(fù)雜事件模式匹配模型而實(shí)現(xiàn)的高適應(yīng)性流程監(jiān)控算法,擁有高效的事件清理及共享機(jī)制。本發(fā)明能夠有效支持實(shí)時(shí)的業(yè)務(wù)流程監(jiān)控,處理性能高,伸縮性強(qiáng),即使在海量事件、大量查詢的情況下仍具有較大的吞吐率。
【專利附圖】
【附圖說(shuō)明】
[0024]通過(guò)參照附圖閱讀以下所作的對(duì)非限制性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
[0025]圖1示出了基于復(fù)雜事件的流程監(jiān)控框架;以及
[0026]圖2示出了復(fù)雜事件模式匹配算法的工作模型和關(guān)鍵數(shù)據(jù)結(jié)構(gòu)
【具體實(shí)施方式】
[0027]圖1示出了基于復(fù)雜事件的流程監(jiān)控框架。在該圖中,流程查詢語(yǔ)言表示為ePMQ,由于該查詢語(yǔ)言是基于業(yè)務(wù)流程上下文環(huán)境的模式查詢語(yǔ)言,因此需要對(duì)基于復(fù)雜事件的業(yè)務(wù)流程模型進(jìn)行定義和說(shuō)明,以保證ePMQ的領(lǐng)域特點(diǎn)和語(yǔ)義的完備性。圖1給出了本發(fā)明所基于的一個(gè)基于復(fù)雜事件的業(yè)務(wù)流程監(jiān)控模型。在圖1所展示的基本的基于事件的流程監(jiān)控框架主要包括5部分:用戶監(jiān)控接口,基于事件的流程模型,基于事件的流程實(shí)例,事件流以及獨(dú)立的事件監(jiān)控組件。
[0028]本發(fā)明對(duì)于事件驅(qū)動(dòng)的流程監(jiān)控框架基于一個(gè)簡(jiǎn)單的假設(shè):對(duì)于流程圖中的每個(gè)節(jié)點(diǎn),都存在一個(gè)相應(yīng)的事件(Business Event:BE), —旦流程運(yùn)行時(shí)經(jīng)過(guò)此節(jié)點(diǎn)就會(huì)即時(shí)生成一個(gè)該事件的實(shí)例。每一個(gè)BE涵蓋了其宿主節(jié)點(diǎn)運(yùn)行時(shí)的流程當(dāng)前狀態(tài)信息如觸發(fā)該節(jié)點(diǎn)的用戶信息,它所引用的數(shù)據(jù)字段以及時(shí)間戳等。流程運(yùn)行時(shí)生成的事件都會(huì)流入唯一的事件流。其中,一個(gè)事件(BE)可以表示為一個(gè)三元組BE(z,p,t).其中z代表事件類型,P代指事件的內(nèi)容,t即指事件產(chǎn)生的時(shí)間。為了建模當(dāng)前流程的運(yùn)行狀態(tài),P—般可以解釋為一個(gè)擁有一定字段的多元組(tl,t2,...tn),每一個(gè)字段代表一項(xiàng)信息,如當(dāng)前流程的ID,流程實(shí)例的ID,用戶ID,實(shí)際引用的數(shù)據(jù)字段。
[0029]一個(gè)完整的基于事件的流程模型不僅要涵蓋流程中所有可能的操作和操作之間的執(zhí)行順序,還應(yīng)包括附屬于流程中每個(gè)節(jié)點(diǎn)的BE的集合。
[0030]而一個(gè)基于事件的流程模型可以看作是一個(gè)五元組PM (S,s0, F,E,T).其中S指流程所應(yīng)包括的狀態(tài)集,每一個(gè)節(jié)點(diǎn)可以被看作是一個(gè)狀態(tài),流程圖中的控制網(wǎng)關(guān)可以看作是狀態(tài)之間的遷移。SO指流程的起始狀態(tài),F(xiàn)指終止?fàn)顟B(tài)集,E指該流程所支持的BE的集合,而T指流程模型中所有狀態(tài)遷移。不同的流程實(shí)例映射為流程運(yùn)行時(shí)的不同的視角,即所經(jīng)過(guò)的不同狀態(tài),所經(jīng)歷的不同狀態(tài)遷移以及實(shí)時(shí)產(chǎn)生的不同事件序列,對(duì)于一個(gè)基于事件的流程模型M,其可能的流程實(shí)例被限定如下:
[0031]此外,一個(gè)基于事件的流程實(shí)例是一個(gè)3元組PI (pM, pE, pT),其中ρΜ指PI所屬的流程模型,PE指實(shí)例運(yùn)行時(shí)產(chǎn)生的事件實(shí)例集合,PT指流程運(yùn)行時(shí)所隱含的不同的狀態(tài)遷移過(guò)程。
[0032]事件流既作為流程實(shí)例所產(chǎn)生的事件序列的緩沖,也作為事件監(jiān)控組件的唯一事件輸入流,其限定如下:[0033]而事件流則表示
【權(quán)利要求】
1.一種利用復(fù)雜事件處理技術(shù)對(duì)業(yè)務(wù)流程進(jìn)行實(shí)時(shí)監(jiān)控的方法,包括: a.根據(jù)業(yè)務(wù)流程的上下文和事件語(yǔ)義限定流程查詢語(yǔ)言; b.利用所述流程查詢語(yǔ)言,建立基本的復(fù)雜事件模式匹配模型; c.基于所述基本的復(fù)雜事件模式匹配模型建立基于事件的生命周期模型; d.基于所述基本的復(fù)雜事件模式匹配模型提出事件清理算法; e.基于所述基本的復(fù)雜事件模式匹配模型提出跨模式事件共享算法。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟b至少還包括以下項(xiàng)中的至少一項(xiàng): 基于所述基本的復(fù)雜事件模式匹配模型建立算法接收的事件類型; 描述事件關(guān)聯(lián)細(xì)節(jié)的數(shù)據(jù)結(jié)構(gòu); 限定模式匹配中的部分匹配的數(shù)據(jù)結(jié)構(gòu);以及 限定用于緩沖事件流的數(shù)據(jù)結(jié)構(gòu)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟c還包括: 以基于復(fù)雜事件的流程監(jiān)控算法對(duì)事件流進(jìn)行單遍掃描和處理并給出匹配結(jié)果。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述流程查詢語(yǔ)言的監(jiān)控框架包括:用戶監(jiān)控接口,基于事件的流程模型,基于事件的流程實(shí)例,事件流和獨(dú)立的事件監(jiān)控組件。
【文檔編號(hào)】G06Q10/06GK103593721SQ201210287585
【公開日】2014年2月19日 申請(qǐng)日期:2012年8月13日 優(yōu)先權(quán)日:2012年8月13日
【發(fā)明者】馬小駿, 陳惠榮, 楊衛(wèi)東, 王磊, 金宇, 李正勝, 黃浩 申請(qǐng)人:中國(guó)商用飛機(jī)有限責(zé)任公司, 上海飛機(jī)客戶服務(wù)有限公司