TWI345176B - Method for scheduling event transactions - Google Patents
Method for scheduling event transactions Download PDFInfo
- Publication number
- TWI345176B TWI345176B TW094122577A TW94122577A TWI345176B TW I345176 B TWI345176 B TW I345176B TW 094122577 A TW094122577 A TW 094122577A TW 94122577 A TW94122577 A TW 94122577A TW I345176 B TWI345176 B TW I345176B
- Authority
- TW
- Taiwan
- Prior art keywords
- event
- transaction
- situation
- received
- rules
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/951—Calendar or scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99934—Query formulation, input preparation, or translation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Multi Processors (AREA)
Description
^4DI/e) 九、發明說明: > 【發明所屬之技術領域】 • 、=發明係關於事件驅動之系統,且詳言之,本發明係關 * 力《用於確保事件之平行處理的方法,該等事件在分散 * 式環境中為部分時間相依的。 '* 【先前技術】 - 反應性應用係關於-類應用,其為事件驅動的且經組態 Φ 卩在㈣事件時運作。通常並*預先已知此等事件之精確 時序及内容。已在不同區域中建置許多工具以偵測事件, u測與適當之作用相結合。此等工具存在於建構有 效資料庫' 事件官理系統、"出版/訂購"機構、即時系統之 產品,及類似產品中。 於2003年8月5日頒予之名稱為,,Situati〇n請打⑶叫 system"之第M〇4,〇93號美國專利(Etzi〇n等人)係以引用的 方式倂入本文中,且其揭示一用於以連續順序處理事件之 φ 可組態事件驅動基於規則m在此文獻之整個剩餘部 分中,將藉由意思為"主動中間體技術"之首字母縮寫 "AMIT"來提及此系、统。AMIT#美國紐約仏㈣之國際商 用機器公司(顧)之商標。亦即,當不同事件之實體中的所 有關係(臨時的與定量的)皆保持於記憶體中時,依次處理傳 入事件。儘管此方法對於其中大多數事件具有臨時關係(例 如特定事件之序列發生在某特定時期内)的狀況而言係絕 對必需的,但其對於其他狀況而言並非可伸縮的,在該等 其它狀況下應在分散式環境中處理衆多臨時獨立之事件 102898.doc 1345176 . (例如聚集事件規則’其中單一事件實體之順序較之其經計 算之統計量度而言較不重要)。同樣地,若AMIT事件規則(事 • 件組合)包含資料庫查詢,則應增加ACID交易支持。 • 於2001年8月7日頒予之名稱為"Method of scheduling distributed transactions”之第 ό,272,5 1 5號美國專利(F〇uquet) 係以引用的方式倂入本文中,且該專利揭示一用於排程交 · 易監控器之分散式交易的方法,其使得可平行地起始交易 φ 以按時間順序(以該順序起始交易)串行化該等交易之運作 的啓動,並允許不同交易之運作或相同交易之運作中的執 仃衝突。因此,儘管此方法適用於可被分成基本運作且事 件訊號僅為交易&始或運作終止的習知交易,但此方法並 不適用於在分散式交易環境中為隨後處理偵測預定事件組 合(事件驅動之規則)的彼等規則引擎。 在此狀況下,事件驅動規則引擎將每一事件實體作為一 不可被進一步劃分為複合運作之基本交易而處理。此交易 • 應'敎:特^用於所處理之事件實體的資源。該資源為一 表不計算窗口之資料結構,該計算窗口係—時間週期,在 該時間週期中可計算該事件實體且在該時間週期中可發生 件之組合(規則在傳入事件中之臨時及其它語義相 :的狀況下’不同分散式交易中存在應解析之可能之衝 【發明内容】 於標在㈣供:種用於在分散式、兔 兄、’竹處理具有界定語義相關之事件的等 102898.doc 驅動規則之事件交易的經改良方法及系統’其中成份事件 之順序可為重要的。 此目標係藉由一用於排程事件交易之方法根據本發明之 廣泛31樣而實現,其中每—事件交易具有一個別時間戳 記且用於—具有預定事件規則之事件驅動制中,該方法 包括: 根據該等預定事件規則而解析事件中的可能之時間相依 性;及 判定何時可處理該等事件交易從而允許將該等事件交易 分配給分散式處理器以供並行處理。 本發明亦涵蓋-實施本發明之方法的系統。較佳地,此 系統為偵㈣定事件組合之事件接收H及輸送ϋ,且該季 統包括: 系 事件父易,其用於接收一或多個事件; 塞杜Γ件並c控制早70 ’其㈣至該事件交易且對與該等 事件相關聯之個別時間戳記 .^ ^ 乍出回應,其用於根據相關聯 之=規則來解析事件中的可能之時間相依性;及 該事件並行控制單元之至少兩個輸出埠,其適用 至個別分散式處理器以根據 ' 接 性而平行地執行該等事件…專事件規則界定之相依 因此,本發明界定在事 勢之事件的交易,… 規則引擎中適合引起-情 拍1 φ 用於此等交易之並行控制機制。 並订處理該等交易而非連續處理該制機制。 易分配於若干事件處理單元之間。 求將該等交 102898.doc 1MM76 事件並行控制單元使用單個機器於中心執行並行控制演 算法並分配已準備好執行之交易,意即,將設想在當前交 易、、、《束執行之前執行的所有交易分配至不同處理單元。該 等處理單兀可為不同機器上之不同處理或可為使用遠端程 序呼H (RPC)之單個機器上之不同處理(線程)。雖然為aMIT 而開發本發明,但本發明易於應用至在分散式環境中運作 之所有類別的事件驅動規則引擎。
【實施方式】 —圖1為不思性展示根據本發明之第一實施例用於根據預 疋事件組0 (規則)而偵測及處理事件之系統丨〇的方塊圖。事 件分配11根據與每—事件相關聯之時間戮記連續地將事 件輸送至事件並行控制單元12,且事件處理單元對每一 事件開始事件處理。事件虛 带1干慝理早TC13可為諸如上文所參考 之第M〇4,G93號美國專利中所述之細㈣任何習知事件 交易處理器。事件並杆你岳丨g __ _ 丁控制早兀12採用基於時間戳記之並 行控制演算法(下文中進杆^、十、 m 進订描朴该演算法使用事件規則之 *口義知識以並行處理傳入 …該事件並行控制單元12 根據畲前事件規則檢杳是 中止兮了開始事件以並視需要暫時 界宕i .>·人/ «I a 已執仃事件交易之相應事件被 界“複合(巢套)事件組合的狀況下確認或中止該等已執 灯之事件交易,該等相應事 。 事件。 仟係/原自其它事件組合及基本 事件規則可儲存於外部 資料庫14或資料檔案係藉 資料庫14或資料檔 由事件分配器丨j以 案中,該外部 一與事件及規 102898.doc 1345176 則ό知地饋入AMIT類似夕古—,4丨、,4* 顯似之方式加以接取。然而,儘管事件 習知地直接饋人綱τ,但在本發明中其並㈣接饋入而是 經由事件分配器11饋人。可同時藉由ΑΜΙΤ及事件分配器續 取規則。事件分配器η首先將事件饋入事件並行控 12並隨後喊接收自事件並行㈣單元以❹
而僅將該等事件饋入事件處 貝A 圖示)或藉由與每一事件相關^13。可糟由内部時脈(未 —古 筝件相關聯之預定執行次序來獲得盘 :一事件相關聯之時間戮記資訊。事件分配器u連同料 ^丁㈣單元起作為事件接收器及輸送器加運作, 心:I理傳入之事件以根據已知之相依性判定何時可 =專入事件之處理並隨後將傳入事件分配至事件處理單 圖1展示事件並行和也丨留 理單元13之方式之構造及其輕接至事件處 執行若干事件處 〜I明之一基本特徵在於並行 _ 兀之迠力,故實務上事件並行护制單 凡具有夕個處理器輸出埠, 工早 件處理單元轉接至其自身。則出車適用於將-個別事 圖2為示意性展示根據 境中之系統20的方_ ^ 此實施例用於分散式環 進行描述之Μ件。::錯由相同參考號識別已參看圖1 器㈣接至多個事件處理單系統中,事件接收器及輸送 13且可藉_叫擎加以實處理單元表示為 15處理傳人之事件( 事件接《及輸送器 起始該等傳人事 ,相1所描述的)以判定何時可 事件。隨後可將傳入之事件分配至不同事件 ^2898^00 丄州176 處理單元13以供並行之處理,儘管完成此之方式及選擇不 同處理器之方式本身並非本發明之特徵。 已描述根據本發明之系統的可能之實施例,現將描述基 於時間戳記之並行控制演算法之運作方式。 •建立系統t所有事件及情勢間的相依圖。可基於對中繼 資料(規則界定)之分析來建構該相依圖,該等中繼資料通常 作為向事件處理單元13之直接輸人而饋人,但在本發明中
八、、&由事件接收器及輸送器15而間接饋入至事件處理單元 13。為了實施本發明,假定將以下資料結構作為規則界定 之部分而針對每一事件加以維護: •應增加此事件於其中之情勢的清單; •此事件可開始其計算窗口之情勢的清單; •此事件可關閉其計算窗口之情勢的清單; •可藉由此事件觸發之情勢的清單。 根據本發明之演算法處理此等規則以判定事件與情勢之 ^及It勢與其它情勢之間的相依性,以建構表示事件/情勢 分層結構(hierarchy)之資料,該資料包含指示與成份事件相 關聯之時間戮記的資料。隨後使用此資訊判定是否能夠合 理地開始-事件或該事件在開始之前是否取決於—相關事 件之兀成。在此情形中’將瞭解,一情勢僅為一種由事件 或事件組合導致的事件。因此,只要是關於該演算法,術 語”事件”與"情勢"之間並無區別。 。遠次异法允許事件之樂觀式處理,藉以使用分散式處理 器來並行處理事件而非如冑知—般連續地進行處理,以便 102898.doc 允許稍後事件能夠開始處理而無需等待先前事株忒 後事件的處理。另一L 先别事件時間相依之務 到1 右自事件分層結構判定,需等 事件之後才能解析㈣事件,則將中止該務 至與其時間相依性之先前事件終止為止。 取==演算法處理事件資料(如下文闡述的)以提 -成此/ 依性。為閣述如何以更為直觀之方式
=#作,將以圖表來表示事件分層結構。但應瞭解, ㈣上,較為重要的係圖表表示中之資訊暗示, 資訊無論如何在事件資料中為固有的,因此該演算法ί; 上無需產生事件分層結構之任何圖表表示。因此,應用以 下規則從而間表來建構事件分層結構: •右-事件或情勢作為—運算元參與情勢中,則將—邊緣 自該事件/情料點增加㈣情勢節點。
右事件或情勢充當—計算窗口之開始或結束,則將相 應之開始/結束邊緣自該事件/情勢節點增加至該情勢。 一 •建,-並行控制表,其中為每一情勢界定而界定一獨立 灯。若在該相依圖中-事件至與一所關心之行相關聯的情 勢之間存在一邊緣’則將該事件増加至該行。藉由—事件 到達時間戳記對每一行進行分類。 藉由事件之到it時間冑記而將肖等事件增力口至並行控 制表中之適當行。將可藉由一特定事件觸發之所有情勢與 &不彼等情勢仍懸而未決之標記—S增加至並行控制表 中之適當^了。在下文所述之實例中,肖由星號⑺表示該標 102898.doc -12- 1345176 記。對於充當計算窗口之結束的事件而言,增加一特殊標 記以照顧延缓/延遲之情勢。在下文所描述之實例中,自此 等事件至相依情勢之路徑係標記為"結束邊緣以類似之 方式’自充當計算窗口開始之事件至相依情勢之路徑係標 記為"開始邊緣"。&允許該演算法識別與相依情勢相關之 5十算窗口的開始及結束相依性。 •若將-事件交易f先置放於並行控制表之所有行中的" 真”事件(未標記之情勢)中,則應開始該事件交易。僅在將 該事件交易首先置放於並行控制表之所有行中(位於該表 中所有事件及經標記之情勢中)的情況下,將確認該事件交 易。在存在一規則事件及一充當計算窗口結束之事件的狀 況下’該事件將使用相同時間戳記(在延緩/延遲情勢之狀況 下)開始新交易。當具有時間戳記t2之事件交易試圖確認 時,該演算法檢查具有時間戳記tl(tl<t2)之任何標記情勢是 否變為真(移除該標記)。在此狀況下,中止並重新開始稍後 事件交易。 •若存在一仍被標記之具有此時間戳記的情勢,則將阻斷 該交易處理直至解析該標記之情勢(移除或變為真)為止。 現將參相式之圖3至5描述不同實例。圖3係關於相依性 之簡單狀況,其中第一事件引起一情勢之偵測,且該偵測 之情勢與第二事件一起參與其它情勢偵測。圖4說明其中傳 入事件亦可關閉計算窗口以偵測情勢之狀況,且圖5係關於 僅在該計算窗口時期結束時報告所福測情勢的狀況,但仍 應考慮其它情勢偵測。 102898.doc -13- 實例1 : 圖乂圖表作為el之複合函數的情勢si,及作為以 及心之複合函數的情勢S2。假定事件交易為部分有順序 、/、a不著確§忍事件之順序或次序較為重要。兩情勢之 計算窗口均在啓動時開始且永不結束。 情況: 事件el在tlB夺到達,事件心在叫心⑴時到達。81及82 夕并么二也1 士 ·‘ a S1 S2 el; tl si; tl* 「 e2; t2 v ⑺舵判發生之前 完成(意即,確認)的成份事件。然而,si亦取決於事件d 之確認。此意味著只要是關於情勢S2 ’則在時間u處不解 析事件S 1且因此標·|ρ号·直姓_ c ·! 己该事件以.el與e2皆並行開始交易。若
Si被觸發,則e2將中止其交易並重做其工作。此確保了若 S2為(S1,e2)之序列’則維持交易之順序,其指㈣必須在 確認之前確認且指示僅此時才能夠解析^另—方面, 可月b存U s 1並未發生且自並行控制表中删除的情況。 舉例而言’ s!可能為,’透支銀行存款,,之情勢,且作為羞生 此情勢之事件el可能僅為消f者之#前餘額。@此,若截 止到e2確鱗―m且其為健康餘額,㈣獨發sliS1 能夠自並行控制表中刪除。此對於僅要求—個事件之界定 而言可能發生以觸發-情勢。舉例而言’若兩個事件中之 -個⑻或e2)到達’則將S2界定為被觸發。考慮到(例如阳 102898.doc 1345176 表示"帳戶問題,'之情況且e2指示”信用卡被取消”。因此在此 狀況下若未觸發31,則將不會返回…且將债測S2。此允 許事件分配器11將事件交易el及e2分配至不同處理器以允 許平行處理進而節省時間。 實例2 : 圖4以圖表展示情勢8卜其為el之複合函數。情勢82為以 及e2之複合函數。迄♦,事件分層結構與上文參看圖3所描 述之事件分層結構相同。然而,雖然所有情勢發生於特定 計算窗口中,在先前狀況下計算窗口不受限制且其自啓動 擴展而不會终止,但圖4中所示之情勢被迫發生於在啓動之 後開始且具有預定之終止程式(terminat〇r)的計算窗口内。 此等以圖表展示為與事件相關聯之開始或結束邊緣,其指 不一藉由該事件產生之情勢被迫發生於一計算窗口中,該 計算窗口分別視該邊緣是否&開始邊緣或結束邊緣而與該 事件並行地開始或結束。因此,事件e3結束81與82之計算 窗口,其意味著當e3發生時,“與“之計算均結束。另一 方面’ SmS2之計算窗口皆在以到達時開始。因此,_ S 2之計算窗口自與e 4相關聯之時間擴展至與e 3相關聯之時 間。此意味著若㈠在“之前到達,則其㈣無影響,因為 其:算窗口尚未開始’此係由於在其計算開始之前將需要 。十π s 1。事件e4仍判定s 1之計算能夠開始且其當該計算窗 口藉由63關閉時計算完成。事件Μ開始計算窗口,但將在 事件ei到達之後於合適時立即搞測叫若存在任何臨限條 件,則與該等任何臨限條件相對應卜因此,當以到達時, I〇2898.doc •15· 1345176 其將開始81之計算窗口,且將計算到以但在e3之前)之下一 el事件。以實例(說明之),e4可為,,日開始"事件且⑽"日 結束"事件。81可為”透支銀行存款",事件el指示"帳戶餘額”。 事件e2可為"請求付款"且S2可為,,付款失敗,,,以致若在相同 營業曰接收到"請求付款"及"存款透支",則將㈣,,付款失 敗”。 情況:
事件e4在tl時料’事件61在〔時到達,事件時到 達’及事件e2在Μ時到達,其中il<t2<t3<t4。 在此狀況下並行控制表將合右: S1 S2 e4start; tl e4start ;tl _ el; t2 si; t2* _ e3end; t3 e3end ;t3 e2; t4 在此狀况下,因為e3不能在ei(si)之前開始且β不能在 e3(S2)之前開始,故處理將為順序的。
關閉一計算窗口 若一事件關閉計算窗口,則交易將僅在其首先置放於所 有事件(真事件與樂觀被處理但可能稍後需要被中止及重 新執行之彼等"標記之情勢")中的情況下開始,且對於每一 情勢而言其將被分別確認(部分確認)。在部分確認之後,對 於已確認之情勢可開始其它交易。亦在關閉一情勢之計算 窗口之後,該方法檢查延遲/延緩之情勢是否在關閉該窗之 事件之前被觸發及寫入該表(藉由相同時間戳記)。此將發生 於計算窗口藉由相同事件加以關閉其它情勢中所需之延緩/ I02898.doc 1345176 延遲情勢的狀況下。 實例3 : 圖5以圖表展示延緩之情勢S卜其為el之複合函數。情勢 S2為S1之複合函數。因此此處同樣地,事件分層結構與上 文參看圖3所述之事件分層結構相同。然而,兩情勢之計算 窗口皆在啓動時開始並在事件e2到達時結束。 情況: 事件el在tl時到達,62在12時到達(u<t2)。 在此狀況下並行控制表胳含有: S1 ~S2 el; tl si*; t2 e2end; t2 e2end; t2 因為僅e2可觸發S1(延緩之情勢),故情勢S1並不與時間 戳記u —起寫入。必須在一以e2到達而結束之計算窗口内 確認si。因此,當e2到達時,S1之計算停止,意即其計算 窗口關閉。當e2到達時執行S1之計算’意即由於S1為延緩 • 之情勢,故其計算被延緩直至心到達為止。實際計算在於 e2之前到達之el事件上完成。 當e2到達並開始其處理時,S1之計算結束。若現偵測3卜 其意味著該情勢已發生,則S1:tl被寫入並行控制表且62將 暫時中止其處理並僅在Si之處理完成之後重新開始其處 理。例如此允許了作為AMIT語言之一部分的延缓情勢之計 算。 延緩情勢之一實例為"NOT"情勢。舉例而言,假定情勢 S1係界定為NOT(el)。在此狀況下,若el未在e2之前到達, 102898.doc 1345176 則將制S1。事件el將在,,帳戶餘額·•之前^將為,,平均餘 額且將被界定為Report(el)。此情勢將計算最大餘額直至 接收到事件62為止’且其將在心到達時被觸發。情勢以將 為"好曰子"且其將在S1所計算出之平均餘額 被觸發。 呀
圖6為概述藉由圖⑴中所示之事件接收器及輸送心 進行之主要作用的流程圖。因此,在接收到-事件時’事 件接收器及輸送器15將一時間戮記指派給該事件並將所接 收之事件及因此能夠被觸發之所有情勢增加至事件並 中之適當行。隨後其根據預定規則決定對於此事件而言是 否能夠開始交易。若不能,則事件接收器 直至能夠開始事件交易為止4且#能夠開始事件交^ 時,事件接收器及輸送器15將該事件分配給事件處理單元 13,其隨後自該事件處理單元u接收交易處理結果。其隨 後根據預定規則決定對於此事件而言是否能夠確認該交 易。右不能確認,則其丟棄該等結果並重新開始該交易。 若能夠確認,則其更新事件並行表並確認該等結果。應注 思,處理器之選擇並非為本發明之一部分。可使用任何合 適之現有聚類機構(clustering mechanism)。舉例而言,在基 於 WebSphere應用侍服器(WebSphere Aplication Server)之 解決方案的狀況下,則可使用WebSphere群集器,且將藉由 處理器之負載平衡機制來選擇該處理器。 圖7於功此上更洋細地展示包括一用於接收一或多個事 件之事件分配器Π之事件接收器及輸送器15的方塊圖。事 102898.doc -18- 1345176 1並行控制單元12糾至該事件分配ϋ且其對與該等事件 目關聯之個別時間戳記進行回應’以板據相關聯之事件規 則來解析事件中可能之時間相依性。該等時間戳記可在個 別事件到達之前優先與其相關聯,或者可藉由事件接收器 及輸送器15在事件到達時將時間戳記指派給該等事件 件分配器!】包含用於註冊每一傳入事件以維持一已註冊事 二:單之註冊單元20且適用於將每一事件交易(其所有相 被解析)分配至事件處理單元15,從而允許根據得自 -事件相Μ之事件規則界定㈣純平㈣行事件 件並行控制單元經組態以根據預定事件規則為每—已 事件解析其與已註冊事件及亦盥 相依性。 事…與所仏己情勢之可能的時間 事件接收器及輸送器15進一步包含一用於接收事件 之處理結果的接收器單元21,以及_輕接至該接收 21, 用於判定是否確認或中止事件交易的狀態判定單: 22。 輕接至該狀態判定單元之中斷單元㈣―指 事件U之狀態作出回應,從而中止該事件事^ 配裔㈣接至該中斷單元以將事件交易再次分I: 元。該處理單元可為相同處理單元或可為不同處理單元 /將瞭解’根據本發明之系統可為經合適程。 腦同樣地,本發明涵蓋一電腦可讀以執行本發明之 的電腦程式。本發明進一步涵蓋一機器可讀記憶體,^ 形地包含-機器可執行以執行本發明之方法的 卞、有 【圖式簡單說明】 7 %式。 102898.doc •19* 1345176 係示意展示-根據本發明之—第—實施例用於根據 預疋事件組合(規則)偵測並處理事件之系統的方塊圖; 圖2係示意展示一根據本發明之一第二實施例用於一分 散式環境中之系統的方塊圖; 圖3、4及5展*根據本發明根據π實例描述事件及情勢 間相依性的相依圖;
圖6係展示根據本發明藉由一 行之主要作用的流程圖;及 事件接收器及輸送器 而進 圖7係官能上更詳細地展示圖 及輸送器的方塊圖。 1中所描述之該事件接收器 【主要元件符號說明】 10 系統
11 12 13 14 15 20 21 22 23 事件分配器 事件並行控制單元 事件處理單元 外部資料庫 事件接收器及輸送器 註冊單元 接收器單元 狀態判定單元 中斷單元 I02898.doc
Claims (1)
1345176 [ΨΙ 第(mm577鲮專利申請案 f文_請專利範圍替換本α 〇〇年3月) 十、申請專利範圚·· &在具有預定事件規則之事件驅動應用中排程 乂易之方法’每-事件交易具有-個別時間戳記, 该方法包括: 根據該等預定事件規則解析事件中可能之時間相依 性,及 六判定何時可處理”事件交m允許將該等事件 父易可破分配至分散式處理“供並行處理,其中判定 何時可處理該等事件交易之步驟包括: 冊母傳入事件以維持一已註冊事件清單. =該等預定事件規則為每—已註冊事件解析已註冊 中及其與仍未_之經標記情勢的可能之時間相依 Ί 9 將所有相依性已解析之每—事件交易分配至 理單元; 干愿 接收該事件交易之一處理結果; 判定是否將確認或中止該事件交易;及 若將中止該事件交易,則中止 止茨畢件父易並將其 为配至一處理單元;及 其中註冊每一傳入事件之步驟包含: 接收一事件; 將一時間戳記指派給該事件; 使用預定規則判定可藉由該所接收事件加所 有情勢; H的所 102898-1000308.doc 1345176 增加該所接收之事件及藉其可被觸發之所有情勢至一 事件並行表中之適當欄; 根據該等預定規則判定對於該所接收之事件而言是否 能夠開始一藉由該所接收事件產生之交易; 若對於該所接收之事件而言不能開始該交易,則等待 直至能夠開始該交易為止; 右能夠開始該交易: 則將該事件分配至一事件處理單元; 自該事件處理單元接收交易處理結果; 根據該等預定規則判定對於該所接收事件而言是否 能夠確認該交易; 若對於該所接收之事件而言不能確認該交易,則丟 棄該等處理結果並重新開始該交易; 若對於該所接收之事件而言能夠確認該交易,則更 新該事件並行表並確認該交易。 2·如請求項丨之方法’其中情勢被迫發生於計算窗口内該 等十口在啓動之後開始且具有預定之終止程式,該 方法進一步包含: 與一事件資料相關聯,該事件資料指示一藉由該事件 之清勢被迫發生於—計算窗口中,該計算窗口與該 事件並行地開始或結束。 102898-1000308.doc
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/899,783 US7266571B2 (en) | 2004-07-27 | 2004-07-27 | Method and system for scheduling a partial ordered transactions for event correlation |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200627286A TW200627286A (en) | 2006-08-01 |
TWI345176B true TWI345176B (en) | 2011-07-11 |
Family
ID=35414657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW094122577A TWI345176B (en) | 2004-07-27 | 2005-07-04 | Method for scheduling event transactions |
Country Status (6)
Country | Link |
---|---|
US (1) | US7266571B2 (zh) |
EP (1) | EP1779243A1 (zh) |
JP (1) | JP4283328B2 (zh) |
CN (1) | CN100538643C (zh) |
TW (1) | TWI345176B (zh) |
WO (1) | WO2006010683A1 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8539502B1 (en) * | 2006-04-20 | 2013-09-17 | Sybase, Inc. | Method for obtaining repeatable and predictable output results in a continuous processing system |
US8024714B2 (en) * | 2006-11-17 | 2011-09-20 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US8010550B2 (en) * | 2006-11-17 | 2011-08-30 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US7711678B2 (en) * | 2006-11-17 | 2010-05-04 | Microsoft Corporation | Software transaction commit order and conflict management |
DE102007009909B4 (de) * | 2007-02-28 | 2016-09-08 | Globalfoundries Inc. | Verfahren zum Validieren einer atomaren Transaktion in einer Multikernmikroprozessorumgebung |
US7890472B2 (en) * | 2007-09-18 | 2011-02-15 | Microsoft Corporation | Parallel nested transactions in transactional memory |
US8789059B2 (en) * | 2007-11-02 | 2014-07-22 | International Business Machines Corporation | Dynamic scheduling feasibility analysis of event-driven applications based on reducing tasks of overlapping events |
US8200682B2 (en) * | 2008-04-22 | 2012-06-12 | Uc4 Software Gmbh | Method of detecting a reference sequence of events in a sample sequence of events |
GB0811652D0 (en) * | 2008-06-25 | 2008-07-30 | Symbian Software Ltd | Computing device |
US9430526B2 (en) * | 2008-09-29 | 2016-08-30 | Teradata Us, Inc. | Method and system for temporal aggregation |
CA2897462A1 (en) | 2009-02-11 | 2010-05-04 | Certusview Technologies, Llc | Management system, and associated methods and apparatus, for providing automatic assessment of a locate operation |
CA2754159C (en) | 2009-08-11 | 2012-05-15 | Certusview Technologies, Llc | Systems and methods for complex event processing of vehicle-related information |
FR2965948A1 (fr) * | 2010-10-07 | 2012-04-13 | Commissariat Energie Atomique | Systeme d'ordonnancement de l'execution de taches cadence par un temps logique vectoriel |
US9208222B2 (en) * | 2010-11-26 | 2015-12-08 | Htc Corporation | Note management methods and systems |
JP6021112B2 (ja) * | 2013-11-28 | 2016-11-02 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 複数のスレッドで順序付きトランザクションを実行する方法、並びに、当該トランザクションを実行するためのコンピュータ及びそのコンピュータ・プログラム |
BE1023523B1 (nl) * | 2015-09-25 | 2017-04-19 | Atlas Copco Airpower, N.V. | Werkwijze voor het koelen van een compressor of vacuümpomp en een compressor of vacuümpomp die een dergelijke werkwijze toepast |
KR102123616B1 (ko) * | 2018-02-09 | 2020-06-17 | 한양대학교 산학협력단 | 충돌 페이지 리스트를 이용한 병렬 저널링 방법 및 그 장치 |
CN109828788A (zh) * | 2018-12-21 | 2019-05-31 | 天翼电子商务有限公司 | 基于线程级推测执行的规则引擎加速方法及系统 |
CN110610598B (zh) * | 2019-08-08 | 2021-02-26 | 善泊科技(珠海)有限公司 | 一种基于事件机制的无人化停车场中控管理系统及其方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5201044A (en) * | 1990-04-16 | 1993-04-06 | International Business Machines Corporation | Data processing method for file status recovery includes providing a log file of atomic transactions that may span both volatile and non volatile memory |
GB2256514B (en) * | 1991-05-21 | 1994-11-16 | Digital Equipment Corp | Commitment ordering for guaranteeing serializability across distributed transactions |
FR2751106B1 (fr) | 1996-07-11 | 1999-01-08 | Alsthom Cge Alcatel | Methode de planification de transactions distribuees |
US6237001B1 (en) * | 1997-04-23 | 2001-05-22 | Oracle Corporation | Managing access to data in a distributed database environment |
US7023440B1 (en) * | 1998-09-14 | 2006-04-04 | Fisher Rosemount Systems, Inc. | Methods and apparatus for integrated display of process events and trend data |
US6604093B1 (en) | 1999-12-27 | 2003-08-05 | International Business Machines Corporation | Situation awareness system |
US6725287B1 (en) * | 2000-11-09 | 2004-04-20 | Elity Systems, Inc. | Method and system for capturing streaming data by an actionable information engine |
-
2004
- 2004-07-27 US US10/899,783 patent/US7266571B2/en not_active Expired - Fee Related
-
2005
- 2005-06-27 WO PCT/EP2005/052998 patent/WO2006010683A1/en active Application Filing
- 2005-06-27 CN CN200580025051.9A patent/CN100538643C/zh not_active Expired - Fee Related
- 2005-06-27 JP JP2007523052A patent/JP4283328B2/ja not_active Expired - Fee Related
- 2005-06-27 EP EP05771824A patent/EP1779243A1/en not_active Withdrawn
- 2005-07-04 TW TW094122577A patent/TWI345176B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP2008508582A (ja) | 2008-03-21 |
WO2006010683A1 (en) | 2006-02-02 |
US7266571B2 (en) | 2007-09-04 |
EP1779243A1 (en) | 2007-05-02 |
CN1989490A (zh) | 2007-06-27 |
US20060026130A1 (en) | 2006-02-02 |
TW200627286A (en) | 2006-08-01 |
JP4283328B2 (ja) | 2009-06-24 |
CN100538643C (zh) | 2009-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI345176B (en) | Method for scheduling event transactions | |
US7665093B2 (en) | Synchronization of runtime and application state via batching of workflow transactions | |
US11625700B2 (en) | Cross-data-store operations in log-coordinated storage systems | |
EP3191984B1 (en) | Scalable log-based transaction management | |
US11036713B2 (en) | Sending notifications in a multi-client database environment | |
US9098515B2 (en) | Data destruction mechanisms | |
JP5603780B2 (ja) | 膨大な数の処理命令のリアルタイム処理に関する改良 | |
US7996838B2 (en) | System and program storage device for facilitating workload management in a computing environment | |
CN108108232B (zh) | 用于确保与数据模型有关的并发事务的一致性的系统和方法 | |
KR100943110B1 (ko) | 거래 시스템 | |
US20060129660A1 (en) | Method and computer system for queue processing | |
KR101612682B1 (ko) | 분산 및 병렬 환경에서 비동기 메시지를 시퀀싱하는 방법, 시스템 및 컴퓨터 프로그램 제품 | |
WO2016107137A1 (zh) | 基于影响分析的任务重做的方法、影响分析计算装置及一键重置装置 | |
US20200409932A1 (en) | Systems and methods for real-time analytics detection for a transaction utilizing synchronously updated statistical aggregation data | |
Yang et al. | Natto: Providing distributed transaction prioritization for high-contention workloads | |
EP2693337B1 (en) | Method, system and computer program products for sequencing asynchronous messages in a distributed and parallel environment | |
US8903767B2 (en) | Method, system and computer program product for sequencing asynchronous messages in a distributed and parallel environment | |
US20160063450A1 (en) | Systems and Methods for Task Countdowns for Specified Tasks | |
JP6530469B1 (ja) | 情報処理装置及び方法 | |
Bernstein et al. | Queued transaction processing | |
CN118042194A (zh) | 一种适用于直播场景下的流量结算方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |