欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

并行地執(zhí)行連續(xù)事件處理(cep)查詢的制作方法

文檔序號(hào):9355193閱讀:457來源:國(guó)知局
并行地執(zhí)行連續(xù)事件處理(cep)查詢的制作方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及對(duì)連續(xù)事件處理(CEP)查詢的處理。
【背景技術(shù)】
[0002]數(shù)據(jù)庫在傳統(tǒng)上已經(jīng)被用于需要存儲(chǔ)數(shù)據(jù)以及對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行查詢的能力的應(yīng)用。因此現(xiàn)有的數(shù)據(jù)庫最適合在有限存儲(chǔ)的數(shù)據(jù)集上運(yùn)行查詢。但是,傳統(tǒng)的數(shù)據(jù)庫模型不是很適合于越來越多的在其中數(shù)據(jù)作為數(shù)據(jù)事件流而不是有界的數(shù)據(jù)集被接收的現(xiàn)代應(yīng)用。數(shù)據(jù)流也被稱為事件流,其特征在于實(shí)時(shí)、潛在地連續(xù)的事件序列。因此數(shù)據(jù)流或事件流代表無界的數(shù)據(jù)集。生成數(shù)據(jù)流的源的示例包括被配置為發(fā)送傳感器讀數(shù)序列的傳感器和探測(cè)器(例如,RFID傳感器、溫度傳感器等)、金融自動(dòng)報(bào)價(jià)機(jī)、發(fā)送網(wǎng)絡(luò)狀態(tài)更新的網(wǎng)絡(luò)監(jiān)控和流量管理應(yīng)用、點(diǎn)擊流分析工具以及其他。
[0003]CEP是一種對(duì)處理事件流中的數(shù)據(jù)有用的技術(shù)。CEP是高度有狀態(tài)的。CEP涉及連續(xù)地接收事件,并且在那些事件當(dāng)中找到某種模式。因此CEP涉及大量的狀態(tài)維護(hù)。由于CEP涉及對(duì)如此多狀態(tài)的維護(hù),所以將CEP查詢應(yīng)用到事件流內(nèi)的數(shù)據(jù)的處理總是單線程的。在計(jì)算機(jī)程序設(shè)計(jì)中,單線程是一次處理一個(gè)命令。
[0004]CEP查詢處理通常涉及針對(duì)事件流內(nèi)指定的事件對(duì)查詢的連續(xù)執(zhí)行。例如,為了連續(xù)地觀測(cè)在最近一小時(shí)內(nèi)的股票的平均價(jià)格可以使用CEP查詢處理。在這樣的情況下,針對(duì)包含其中每個(gè)事件指示在不同時(shí)間股票的當(dāng)前價(jià)格的多個(gè)事件的事件流,可以執(zhí)行CEP查詢處理。查詢可以集合最后一個(gè)小時(shí)內(nèi)的股票價(jià)格并且然后計(jì)算那些股票價(jià)格的平均值。查詢可以輸出每個(gè)計(jì)算的平均值。隨著價(jià)格的一小時(shí)長(zhǎng)窗口的移動(dòng),查詢可以被連續(xù)地執(zhí)行,并且查詢可以輸出各種不同的平均股票價(jià)格。
[0005]由于總是在單個(gè)線程內(nèi)執(zhí)行這樣的CEP查詢處理,所以CEP查詢處理的伸縮可能變得有問題。當(dāng)計(jì)算機(jī)具有能夠并行地執(zhí)行操作的多個(gè)處理器時(shí)、或當(dāng)計(jì)算系統(tǒng)具有能夠并行地執(zhí)行操作的許多節(jié)點(diǎn)時(shí),這樣的機(jī)器和系統(tǒng)的并行處理能力在執(zhí)行CEP查詢處理時(shí)可能被浪費(fèi)。
[0006]另外,在執(zhí)行CEP查詢期間,有時(shí)錯(cuò)誤可能出現(xiàn)。傳統(tǒng)上,當(dāng)在執(zhí)行CEP查詢期間出現(xiàn)錯(cuò)誤時(shí),該錯(cuò)誤僅僅使得CEP查詢停止執(zhí)行。連續(xù)查詢語言(CQL)從結(jié)構(gòu)化查詢語言(SQL)發(fā)展而來。在SQL中,通常對(duì)數(shù)據(jù)集執(zhí)行一次查詢,而不是對(duì)連續(xù)的事件流中的事件連續(xù)地執(zhí)行查詢。由于SQL查詢通常僅被執(zhí)行一次,所以SQL查詢的失敗通常通過讓數(shù)據(jù)庫管理員手動(dòng)地調(diào)查問題、并且然后讓數(shù)據(jù)庫管理員對(duì)數(shù)據(jù)庫或查詢手動(dòng)地做出為解決問題所必需的任何改變、并且然后讓數(shù)據(jù)庫管理員重新執(zhí)行查詢來進(jìn)行補(bǔ)救。相反地,可以對(duì)事件流中的事件連續(xù)地執(zhí)行CQL查詢。使得CQL查詢停止執(zhí)行的錯(cuò)誤可能僅僅是因?yàn)樵谑录鲀?nèi)的單個(gè)無效事件。令人遺憾地,即使在事件流中的剩余事件有效,只要CQL查詢保持停止,那些事件也不會(huì)被CQL查詢處理。反而,那些事件可能僅僅隨著事件流隨時(shí)間繼續(xù)流動(dòng)而丟失。除非管理員手動(dòng)地重新啟動(dòng)CQL查詢,否則CQL查詢不會(huì)被重新啟動(dòng)。通常地,管理員將僅僅重新啟動(dòng)CQL查詢,而根本不會(huì)改變CQL查詢、不會(huì)認(rèn)識(shí)到錯(cuò)誤是由于無效事件造成的。在這樣的情況下,CQL查詢的停止,以及它伴隨產(chǎn)生的事件數(shù)據(jù)的丟失是令人遺憾的并且不必要的。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的某些實(shí)施例涉及用于確定如何以及何時(shí)可以以并行的方式處理CEP查詢,以使得多個(gè)執(zhí)行線程可以并行地執(zhí)行彼此并行的CEP查詢的操作中的至少一些操作的技術(shù)。根據(jù)一種技術(shù),用戶可以指示CEP查詢處理器試圖以并行的方式執(zhí)行CEP查詢。CEP查詢處理器響應(yīng)地基于可以取決于繼承和操作類型的某些約束確定是否可以使CEP查詢的執(zhí)行或其部分并行地進(jìn)行?;诖舜_定,CEP查詢處理器可以針對(duì)事件流內(nèi)的相同事件并行執(zhí)行CEP查詢中的至少某些部分。
[0008]本發(fā)明的某些實(shí)施例涉及用于將故障和故障處理的概念增加到CEP查詢的執(zhí)行的技術(shù)。通過把故障處理技術(shù)引入到CEP查詢(CQL查詢是CEP查詢的一種)的處理,用戶能夠指示CEP查詢處理器以自定義的方式響應(yīng)故障,該自定義的方式不一定涉及與故障發(fā)生有關(guān)的CEP查詢的停止。例如,故障可能由臨時(shí)的問題造成。在這樣的情況下,CEP查詢處理器可以被指示或被編程以忽略故障并且允許針對(duì)事件流的剩余部分繼續(xù)執(zhí)行CEP查詢。可替換地,如果故障是由CEP查詢自身的問題造成的,那么CEP查詢處理器可以被指示或被編程以將故障傳播通過查詢處理系統(tǒng)直到故障最終使得有問題的CEP查詢被停止。
[0009]本發(fā)明的某些實(shí)施例涉及用于處理事件數(shù)據(jù)流的裝置,所述裝置包括:用于將連續(xù)事件處理(CEP)查詢分解為多個(gè)單獨(dú)操作符的部件;用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件;用于至少部分地基于針對(duì)多個(gè)單獨(dú)操作符確定的約束確定針對(duì)CEP查詢的約束的部件;用于基于針對(duì)CEP查詢的約束確定是否可以以并行方式執(zhí)行CEP查詢的至少一部分的部件;以及用于響應(yīng)于確定可以以并行的方式執(zhí)行CEP查詢的至少一部分來產(chǎn)生并行地處理來自事件流的事件的多個(gè)執(zhí)行線程的部件。
[0010]在示例中,該裝置還包括用于至少部分地基于與事件流相關(guān)聯(lián)的約束確定針對(duì)CEP查詢的約束的部件。
[0011 ] 在示例中,用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件包括用于至少部分地基于特定操作符從中接收輸入的一個(gè)或多個(gè)其它操作符的一個(gè)或多個(gè)約束確定針對(duì)特定操作符的約束的部件。
[0012]在示例中,用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件包括用于至少部分地基于特定操作符的操作類型是否是過濾操作類型來確定針對(duì)特定操作符的約束的部件。
[0013]在示例中,用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件包括用于通過確定約束集合內(nèi)最受限的約束來確定針對(duì)特定操作符的約束的裝置,所述約束集合包括(a)特定操作符從中接收輸入的所有其它操作符的約束和(b)與特定操作符的操作類型相關(guān)聯(lián)的約束。
[0014]在示例中,該裝置還包括:用于將以下合并成為單個(gè)共享操作符的部件,(a)由處理事件流中的事件的第一 CEP查詢使用的第一操作符,和(b)由也處理事件流中的事件的第二 CEP查詢使用的第二操作符,所述合并響應(yīng)于確定第一操作符和第二操作符都執(zhí)行特定類型的操作。
[0015]在示例中,該裝置還包括:用于將以下合并成為單個(gè)共享操作符的部件,(a)由處理事件流中的事件的第一 CEP查詢使用的第一操作符,和(b)由也處理事件流中的事件的第二 CEP查詢使用的第二操作符,所述合并響應(yīng)于確定第一操作符和第二操作符都執(zhí)行特定類型的操作;其中用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件包括用于至少部分地基于共享操作符的約束確定針對(duì)從共享操作符中接收輸入的第三操作符的約束的部件;其中用于確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的部件包括用于至少部分地基于共享操作符的約束確定針對(duì)從共享操作符中接收輸入的第四操作符的約束的部件;其中第三操作符由第一 CEP查詢使用并且不由第二 CEP查詢使用;其中第四操作符由第二 CEP查詢使用并且不由第一 CEP查詢使用。
[0016]—種用于處理事件數(shù)據(jù)流的系統(tǒng),所述系統(tǒng)包括:被配置為將連續(xù)事件處理(CEP)查詢分解成為多個(gè)單獨(dú)操作符的查詢分解單元;被配置為確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束的第一約束確定單元;被配置為至少部分地基于第一約束確定單元針對(duì)多個(gè)單獨(dú)操作符確定的約束來確定針對(duì)CEP查詢的約束的第二約束確定單元;以及被配置為基于針對(duì)CEP查詢的約束確定是否可以以并行方式執(zhí)行CEP查詢的至少一部分的執(zhí)行確定單元;以及被配置為響應(yīng)于確定可以以并行的方式執(zhí)行CEP查詢的至少部分來產(chǎn)生并行地處理來自事件流的事件的多個(gè)執(zhí)行線程的線程產(chǎn)生單元。
[0017]在示例中,系統(tǒng)還包括被配置為至少部分地基于與事件流相關(guān)聯(lián)的約束確定針對(duì)CEP查詢的約束的第三約束確定單元。
[0018]在示例中,第一約束確定單元被配置為至少部分地通過至少部分地基于特定操作符從中接收輸入的一個(gè)或多個(gè)其它操作符的一個(gè)或多個(gè)約束確定針對(duì)特定操作符的約束,來確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束。
[0019]在示例中,第一約束確定單元被配置為至少部分地通過至少部分地基于特定操作符的操作類型是否是過濾操作類型確定針對(duì)特定操作符的約束,來確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束。
[0020]在示例中,第一約束確定單元被配置為至少部分地通過經(jīng)由確定約束集合內(nèi)最受限的約束來確定針對(duì)特定操作符的約束,來確定針對(duì)多個(gè)單獨(dú)操作符內(nèi)的每個(gè)特定操作符的單獨(dú)約束,所述約束集合包括(a)特定操作符從中接收輸入的所有其它操作符的約束和(b)與特定操作符的操作類型相關(guān)聯(lián)的約束。
[0021]在示例中,系統(tǒng)還包括被配置為將以下合并成為單個(gè)共享操作符的合并單元,(a)由處理事件流中的事件的第一 CEP查詢使用的第一操作符,和(b)由也處理事件流中的事件的第二 CEP查詢使用的第二操作符,所述合并響應(yīng)于確定第一操作符和第二操作符都執(zhí)行特定類型的操作。
[0022]在示例中,系統(tǒng)還包括被配置為將以下合并成為單個(gè)共享操作符的合并單元,(a)由處理事件流中的事件的第一 CEP查詢使用的第一操作符,和(b)由也處理事件流中的事件的第二 CEP查詢使用的第二操作符,所述合并響應(yīng)于確定第一操作符和第二操作符都執(zhí)行特定類型的操作;其中第一約束確定單元還包括:被配置為至少部分地基于共享操作符的約束確定針對(duì)從共享操作符中接收輸入的第三操作符的約束的第一子單元;和被配置為至少部分地基于共享操作符的約束確定針對(duì)從共享操作符中接收輸入的第四操作符的約束的第二子單元;其中第三操作符由第一 CEP查詢使用并且不由第二 CEP查詢使用;其中第四操作符由第二 CEP查詢使用并且不由第一 CEP查詢使用。
[0023]當(dāng)參考下列說明書、權(quán)利要求書和附圖時(shí),上述連同其它特征和實(shí)施例將變得更清晰。
【附圖說明】
[0024]圖1是說明根據(jù)本發(fā)明的實(shí)施例、用于基于CEP查詢的操作符確定是否可以以并行方式執(zhí)行CEP查詢的示例技術(shù)的流程圖。
[0025]圖2是說明根據(jù)本發(fā)明的實(shí)施例、用于確定在操作符的有向圖中的特定操作符的并行性約束的示例技術(shù)的流程圖。
[0026]圖3是說明根據(jù)本發(fā)明的實(shí)施例、用于將操作符增加到CEP查詢的開始處以便允許或強(qiáng)制執(zhí)行在CEP查詢的執(zhí)行中的最大可允許并行性的示例技術(shù)的流程圖。
[0027]圖4是說明根據(jù)本發(fā)明的實(shí)施例、CEP查詢處理器的用戶注冊(cè)的故障處理器可以借以處理由CEP查詢的操作符拋出的故障的示例技術(shù)的流程圖。
[0028]圖5是說明根據(jù)本發(fā)明的實(shí)施例可以使用的系統(tǒng)環(huán)境的組件的簡(jiǎn)化框圖;
[0029]圖6是說明根據(jù)本發(fā)明的實(shí)施例可以使用的計(jì)算機(jī)系統(tǒng)的簡(jiǎn)化框圖;以及
[0030]圖7是根據(jù)本發(fā)明的實(shí)施例的系統(tǒng)的功能框圖。
【具體實(shí)施方式】
[0031]在下面的描述中,為了說明的目的,具體的細(xì)節(jié)被闡述以便提供對(duì)本發(fā)明的實(shí)施例的深入理解。但是,明顯的是本發(fā)明可以在沒有這些具體細(xì)節(jié)的情況下被實(shí)施。
[0032]在本發(fā)明的一個(gè)實(shí)施例中,CEP查詢處理器可以評(píng)估CEP查詢的各種組件。基于此評(píng)估,CEP查詢處理器可以將CEP查詢分解成為單獨(dú)的片段。CEP查詢處理器然后可以評(píng)估CEP查詢的每個(gè)這樣的片段以便確定是否可以以并行的方式處理那個(gè)片段。基于此評(píng)估的結(jié)果,可以以并行的方式處理CEP查詢的某些片段一使得CEP查詢的那些片
當(dāng)前第1頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
奉节县| 屏东县| 额济纳旗| 抚顺县| 栾川县| 青川县| 沙田区| 河津市| 从化市| 崇左市| 井冈山市| 灵山县| 青州市| 湾仔区| 开原市| 澄江县| 什邡市| 讷河市| 屏东市| 龙南县| 墨竹工卡县| 永安市| 芦山县| 综艺| 丽水市| 武宁县| 阿城市| 尉氏县| 昔阳县| 南昌县| 闽清县| 赤壁市| 白玉县| 衡水市| 临潭县| 海门市| 南昌市| 正蓝旗| 黑河市| 祁门县| 抚顺市|