《復雜事件處理導論》是國際上**本關于復雜事件處理(CEP)的書籍,由斯坦福大學教授 Luckham撰寫。Luckham在《復雜事件處理導論》首次完整提出了CEP的概念,并從需求、關鍵技術、架構設計等不同視角對CEP進行了全面而系統的闡述。《復雜事件處理導論》分為兩大部分。**部分的前半部細致討論信息系統的現狀,并引出對CEP技術的具體需求;后半部則概述CEP的基本概念,給出簡單的應用案例。第二部分從實現的角度出發,探討構建CEP系統所需的關鍵技術,包括事件模式的匹配、事件模式語言、事件處理網絡等,并輔以生動的案例加以解釋和說明。《復雜事件處理導論》*后對CEP系統的功能模塊劃分、架構設計等實現技術進行論述。
《復雜事件處理導論》既有關于CEP基本概念及其應用的詳細介紹,又有針對CEP系統實現技術的具體探討,還有生動易懂的案例分析,是一本廣泛適宜于企業管理者和IT系統研究者、開發者與運維者的技術書籍。
目錄
前言
致謝
**部分復雜事件處理簡介
第1章全球信息社會和新技術的需求2
1.1無處不在的分布式信息系統2
1.2意大利面條式的全球通信體系5
1.3電子系統的本質:層層疊加8
1.3.1一個層次化的企業系統8
1.3.2垂直因果關系:在不同的層次上跟蹤企業事件11
1.3.3事件聚合:在低層事f牛基礎上實現高層感知12
1.4Web新應用的信息聚合風暴13
1.5全球化的電子交易13
1.6敏捷系統17
1.7網絡戰與開放的電子社會17
1.8總結:未雨綢繆
第2章在一個全球化的事件云中管理電子企業21
2.1全球事件云是如何形成的21
2.1.1開放式的企業21
2.1.2全球事件云22
2.1.3電子企業22
2.2在全球事件云中運維24
2.3超越工作流25
2.4并行和異步流程26
2.5實時在線的流程進化28
2.6異常必須是流程設計中的頭等公民30
2.7總結:管理電子化企業32
第3章透視電子企業一一保持人的控制權33
3.1今天的事件監控處于初級階段33
3.1.1系統監控聚焦在網絡層34
3.1.2網絡級的監控甚至沒有解決網絡問題34
3.2因果追蹤的一個例子35
3.3信息鴻溝37
3.4問題相關性信息39
3.5透視企業系統41
3.6構造和協調多個視圖42
3.7層次化視圖43
3.8總結:透視電子企業45
第4章設計電子企業46
4.1流程架構47
4.2架構在流程生命周期中的作用47
4.3流程架構的構成47
4.3.1聲明50
4.3.2架構的結構50
4.3.3接口通信架構51
4.3.4架構范型52
4.3.5行為規約53
4.3.6設汁約束5
4.4信息聲明的例子5
4.5動態流程架構58
4.6層次化的架構以及熱插拔60
4.7總結:支持流程架構的技術62
第5章事件、時序以及國果關系64
5.1什么是事件64
5.2事件是如何創建的66
5.3時序、因果和聚合69
5.4事件中*基礎的參數70
5.4.1時間戳71
5.4.2因果向量71
5.5時間71
5.6因果和偏序集73
5.7因果事件執行實時的偏序集75
5.8有序的觀察80
5.9觀察和不確定性80
5.10總結81
第6章事件模式、規則以及約束82
6.1事件查找的常見類型82
6.2事件模式83
6.3一種簡單的模式語言84
6.3.1模式匹配85
6.3.2用STRAW.EPL描寫模式85
6.4事件模式規則87
6.5約束90
6.6總結92
第7章復雜事件和事件層次結構93
7.1聚合與復雜事件93
7.2創建復雜事件94
7.3事件抽象層次96
7.4構建個性化的概念抽象層次97
7.4.1審視網絡行為98
7.4.2審視股票交易行為101
7.5總結104
第二部分構建CEP的解決方案
第8章RAPIDE模式語言106
8.1事件模式語言基本需求106
8.2RAPIDE的特征107
8.3類型108
8.3.1預定義類型109
8.3.2結構類型109
8.3.3事件類型110
8.3.4執lr類型112
8.3.5執lr的子類型113
8.4事件屬性t4113
8.5基本事件模式115
8.6占位符與模式匹配116
8.6.1匹配基本事件模式116
8.6.2占位符綁定116
8.6.3輔助編寫模式的符號118
8.7關系操作符與復雜模式119
8.8守衛模式122
8.8.1基于內容的模式匹配122
8.8.2基于上下文的模式匹配123
8.8.3時間操作符123
8.9重復模式124
8.10模式宏125
8.11總結127
第9章CEP規則與代理128
9.1概述128
9.2事件模式規則129
9.2.1事件模式規則的定義130
9.2.2規則主體130
9.2.3上下文與可見性法則131
9.2.4事件模式規則的語義132
9.2.5規則范例133
9.3事件處理代理134
9.3.1EPA的定義135
9.3.2EPA的語義135
9.4事件模式過濾器137
9.4.1過濾器的定義137
9.4.2過濾器的語義138
9.4.3動作名稱過濾器139
9.4.4內容過濾器140
9.4.5上下文過濾器140
9.5事件模式映射141
9.5.1映射的定義142
9.5.2映射的語義142
9.6事件模式約束144
9.6.1約束的定義144
9.6.2約束的語義144
9.6.3約束的范例146
8.6.1匹配基本事件模式116
8.6.2占位符綁定116
8.6.3輔助編寫模式的符號118
8.7關系操作符與復雜模式119
8.8守衛模式t4122
8.8.1基于內容的模式匹配122
8.8.2基于上下文的模式匹配123
8.8.3時間操作符123
8.9重復模式124
8.10模式宏125
8.11總結127
第9章CEP規則與代理128
9.1概述128
9.2事件模式規則129
9.2.1事件模式規則的定義130
9.2.2規則主體130
9.2.3上下文與可見性法則131
9.2.4事件模式規則的語義132
9.2.5規則范例133
9.3事件處理代理134
9.3.1EPA的定義135
9.3.2EPA的語義135
9.4事件模式過濾器137
9.4.1過濾器的定義137
9.4.2過濾器的語義138
9.4.3動作名稱過濾器139
9.4.4內容過濾器140
9.4.5上下文過濾器140
9.5事件模式映射141
9.5.1映射的定義142
9.5.2映射的語義142
9.6事件模式約束144
9.6.1約束的定義144
9.6.2約束的語義144
9.6.3約束的范例146
第12章案例研究:審視業務流程之間的協同194
12.1一個業務協同協議194
12.2接口通信架構196
12.3因果模型197
12.4因果映射197
12.5因果規則的范例198
12.6約束范例200
12.7偏序集范例的分析T44201
12.8約束檢測成為協同的一部分204
第13章實現事件抽象層次結構206
13.1可訪問信息的鴻溝207
13.2重溫事件抽象層次結構208
13.2.1引發的因果關系209
13.2.2約束的抽象效應210
13.2.3可修改性210
13.3彌合信息鴻溝212
13.4將層次結構應用到目標系統中的步驟213
13.5一個生產流程的層次結構214
13.5.1個性化視圖215
13.5.2實現216
13.5.3診斷216
第14章案例研究:一個金融交易系統218
14.1一個小型股票交易系統218
14.2S凹的信息鴻溝220
14.3S凹的事件抽象層次結構222
14.4構建事件抽象層次結構223
14.4.1層次1224
14.4.2層次2224
14.4.3層次3233
14.5實現STS的層次化視圖237
14.6支持人工控制的三個步驟239
14.6.1下鉆診斷240
14.6.2違規檢測243
14.6.3抽象的作用245
14.7總結245
第15章復雜事件處理的基礎設施247
15.1觀測到的各種形式的事件示例248
15.2CEP基礎設施到日標系統的接口251
15.3CEP適配器252
15.4CEP運行時基礎設施254
15.5基礎設施接口和組件255
15.6現成可用的基礎設施258
15.7事件模式語言260
15.8復雜事件模式匹配器261
15.8.1對可伸縮性的追求261
15.8.2模式匹配器的簡單視圖261
15.8.3模式匹配器的工作262
15.8.4模式匹配器的設計結構262
15.9規則管理264
15.10分析工具265
15.11總結267
參考文獻269
中英文對照表271
**部分
雜事件處理簡介
保持人類對當今電子信息系統的控制權的挑戰
CEP的基本概念
CEP如何應對這些挑戰
第1章全球信息社會和新技術的需求
信息系統中的事件無所不在
互聯網以及意大利面條式的全球通信體系的擴張
企業系統架構中的分層結構
全球電子交易——理解正在發生著什么
敏捷系統——未來的現實抑或僅僅是一個夢
一個開放的電子社會能夠自我保護嗎?
信息聚合的風暴——全球化的一致性或者全球的混亂
利用計算機系統在全球范圍內進行信息處理已經成為21世紀人類生活不
可或缺的組成部分。它負責運行政府、工業企業、運輸系統、醫院以及應急
服務。在新的千年中,它無疑是全球經濟和全球電子交易的基礎。
在世界各地,信息處理系統按著“Web速度”飛速增長,僅僅比科幻中
的“Warp速度”稍慢一點。互聯網或者說Web -直是人類社會發展的重要
驅動力。新興的技術被研究出來以促進信息系統的這種飛速增長。它們被用
來構建這些信息系統,使系統更加快捷高效,從而能夠處理和路由越來越龐
大的信息。新的應用層出不窮,將我們引入深化IT系統應用的嶄新道路之上
。
但是,我們尚未研發出相應的基礎技術,以幫助人類監控和管理流動在
全球信息系統中的信息。事實是:如果我們不了解這些系統中正在發生著什
么——我指的是以人類理解的方式“知道”——我們就無法保護達些系統,
并且無法利用它們使這些系統的優勢**化。本章將描述這個基于事件的世
界以及其中的一些挑戰性問題。
1.1無處不在的分布式信息系統
分布式計算和信息系統的典型例子是那些支持商業企業自動運行的系統,例
如,銀行和金融交易處理系統、數據倉庫系統以及自動化工廠。互聯網促進
了分布式信息系統的發展,并使這種發展不斷提速,超越了單個企業的范圍
,跨越了企業之間的邊界。企業間的信息通信為交易伙伴關系和業務協作的
自動化奠定了基礎。
圖1.1展示了一個多企業參與的金融交易系統。這些系統分布在世界各地的
不同網絡環境中,并常常利用互聯網作為通信網絡而互聯在一起。從一個宏
觀的視角來看,不同的企業和組織只是這個系統中的簡單組件,而每一個企
業和組織又都有它自己內部的信息系統。圖中展示了這些組件,包括股票市
場信息系統、券商,還有在線用戶或者更為確切地說是他們的工作站、聯邦
儲備委員會、投資銀行以及支持這些組件間進行通信的網絡。消息(或者說
“事件”)在這個企業之間的網絡中流動。這些組件響應它們所獲取的事件
,并觸發新的事件發送給其他組件。這樣的系統就是“事件驅動的”——它
的產生和消亡都依賴網絡上消息的流動。這是一個相當龐大的系統,它的網
絡中流動著巨量的消息。例如,在2001年,一個大型券商的信息系統層上每
秒就流動著5000~10000條消息。很快,這個數量就變得越來越大。
金融交易系統僅僅是分布式IT系統的一個例子。一般而言,任意一個全球化
公司的業務都運行在一個基于消息的、廣域分布的計算機系統之上。圖1.1
展示了加入這個分布式系統中的復雜事件處理工具——將會在稍后的部分給
予解釋。實際上,這個工具正是本書所關注的。
政府和軍事信息系統也是分布式系統。圖1.2描繪了一個典型的軍用指
揮和控制系統,它連接了指揮中心、情報聚合運行中心以及提供所有服務的
作戰單元——一個稱為C41(指揮、控制、通信、計算機和情報)的系統。乍
看起來,一個軍事系統可能同一個商業系統完全不同。當然,軍事系統的目
標和運行環境確實非常不同,并且軍事系統中的許多類型的組件對象也與商
業系統有明顯的差異。但是軍事系統中也包含著很多商業組件,如操作系統
和數據庫。同時,它們的IT層也經常利用一樣的網絡,如互聯網。
實際上,金融、政府和軍事這三種類型的系統有很多共同之處。無論如
何,商業、政府以及軍事系統,它們的底層體系結構都是一樣的:一個由數
千乃至數十萬應用程序(或者是它們常用的稱謂:組件對象)構成的分布式信
息系統,這些應用程序之間通過IT層中多種通道上的消息傳輸來完成相互間
的通信。
這些系統統稱為“企業系統”。它們都有一個共同的基礎問題,都被IT
層流動的事件所驅動,并且每小時或者每天新產生不計其數的事件。但問題
是:還沒有一種技術,使得我們能夠以人類所能夠理解的方式來審視這些系
統中正在發生的事件和行為。可以肯定的是,通過現有的主流技術手段,我
們可以“看到”這些事件,但理解這些事件確實還是一個棘手的問題!
企業已經對信息傳輸基礎網絡中的事件監控工具給予了**先的投入。
舉個例子,有了這些工具后,我們僅會被告知“香港的路由器過載了”。然
后,我們不得不再自己去弄明白路由器的具體問題。它可能是為了完成一個
重要的交易而被阻塞的,而這個交易或許就發生在我們在紐約的辦公室以及
東京合作伙伴的辦公室之間。我們不僅需要有能力回答關于簡單的、低層次
的網絡行為事件的問題(如路由器過載),還需要回答涉及我們應用這些系統
所進行的那些高層次的行為——所謂的業務層或者戰略層的事件所代表的問
題。我們需要回答如下問題。
(1)“是什么導致我們系統將汽車銷售(一個業務層的事件)給了一個得
克薩斯的顧客?”問題的答案會涉及其他多個交易事務。
(2)“系統當前是否面臨拒絕服務攻擊?”問題的回答需要復雜事件模
式的實時識別,而這種模式本身則標志了攻擊的存在。
(3)“什么原因導致系統在執行這個交易協議時失敗?”答案可能在于
一組被忽略的前期業務層事件上,例如,鄉個供應商的系統未能在限定的時
間內及時做出響應。
這些問題都同復雜事件息息相關,而這些復雜事件則由許多簡單的事件
構成。回答這些問題,意味著我們需要從使用系統的視角來審視我們的企業
系統,而不是像今天企業監控技術那樣從建設系統的視角來審視。
1.2意大利面條式的全球通信體系
萬維網和所有大型網絡都按照公認的網絡工程的原理、協議和公約進行
構造。它們都允許**限度的通信靈活性,而任何兩臺計算機都可以據此而
擁有彼此通信的潛力。這種靈活性或者說“開放性”使通信得以發生,信息
得以流動,而其模式則超出了我們的理解。
試想,當你今天訪問某個網站時會發生什么。假設你是圖1.3中所示的
客戶端,正在訪問一個網站,如www. anymumble.com。你點擊了網站上的某
些內容,得到了一個頁面,充滿了橫幅廣告、閃爍的小程序、其他站點的鏈
接,如果幸運的話,也許還有你要找的信息。是否所有這些內容都來自你點
擊的網站www. anymum-ble.com?不太可能。你在計算機屏幕上看到的內容
可能實際上如圖1.3所示,來源于互聯網上幾個不同的地址。而下一次你訪
問www. anymumble. com,得到的內容又可能來自完全不同的一組網蛄。事
實上,你會得到什么和它從何而來可能取決于anymumble網站認為你是誰,
你上一次訪問的時候做了什么。這就是服務于你的通信靈活性。
通信靈活性的另一個簡單例子是現在很常見的郵件病毒附件。2000年的
“我愛你”病毒就是一個例子。這個產生在菲律賓的電子郵件附件在幾天內
肆虐世界各地的計算機系統,造成了數十億美元的損失。這個計算機病毒甚
至使美國國防部的大量計算機癱瘓,而這些計算機本來處在通信防火墻之后
,應該可以避免網絡攻擊。它是怎么傳播得如此之遠、如此之快?它恰恰是
借助了互聯網上電子郵件轉發的簡單的通信靈活性,以及郵件程序地址簿的
易用性特征。
通信靈活性是互聯網的一大威力。我們當然不希望以任何方式限制這種
靈活性。從積極的一面看,它實現了新型的商業活動的快速增長。其中一個
例子是外包,使一個網站能夠通過服務轉包給其他網站來提供其中的一些服
務。例如,當你訪問一個提供住房抵押貸款的網站時,它就與貸款人通過互
聯網進行通信,以獲得適合要求的**出價。如果你申請抵押貸款,它也可
能將信用檢查服務外包給一個信用中介。這一切都發生在一兩秒內。另一個
例子是自動交易網站,或者稱為“電子交易空間( eMarketplaces)“,這讓
很多企業以及貨物的采購商和供應商在幾分鐘內完成多步交易。汽車制造商
可以通過跟蹤零部件供應商的庫存和價格降低