JP2016504679A - イベント処理とマップリデュースとの統合 - Google Patents

イベント処理とマップリデュースとの統合 Download PDF

Info

Publication number
JP2016504679A
JP2016504679A JP2015545815A JP2015545815A JP2016504679A JP 2016504679 A JP2016504679 A JP 2016504679A JP 2015545815 A JP2015545815 A JP 2015545815A JP 2015545815 A JP2015545815 A JP 2015545815A JP 2016504679 A JP2016504679 A JP 2016504679A
Authority
JP
Japan
Prior art keywords
query
cql
processors
batch operation
operator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015545815A
Other languages
English (en)
Other versions
JP2016504679A5 (ja
JP6250061B2 (ja
Inventor
デ・カストロ・アルベス,アレクサンダー
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2016504679A publication Critical patent/JP2016504679A/ja
Publication of JP2016504679A5 publication Critical patent/JP2016504679A5/ja
Application granted granted Critical
Publication of JP6250061B2 publication Critical patent/JP6250061B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

連続イベント処理とマップリデュース・アルゴリズミックツールとの組合せを使用して、大量のデータを比較的迅速に処理し、および/またはクエリすることができる。連続イベントプロセッサは、(a)現在実行中のマップリデュース・ジョブが開始されてから受信されたイベントからのCQLクエリ結果を、(b)最も最近完了したマップリデュース・ジョブによって生成された最も最近のクエリ結果とマージすることにより、リアルタイムの結果を連続的に生成できる。現在実行中のマップリデュース・ジョブが完了すると、そのクエリ結果は格納されて連続イベントプロセッサにアクセス可能となってもよく、最後のマップリデュース・ジョブの実行以降にサイズが大きくなったイベントデータに関して、新規のマップリデュース・ジョブが開始されてもよい。マップリデュース・アルゴリズミックツールは、大量のデータを分析して処理するための便利な機構を提供する。

Description

関連出願との相互参照
本願は、2012年12月5日に出願された、「イベント処理をマップリデュースと統合するための方法」(A METHOD FOR INTEGRATING EVENT PROCESSING WITH MAP REDUCE)と題された米国仮出願第61/733,844号の、米国特許法第119条(e)による優先権を主張し、その内容全体はあらゆる目的のためにここに引用により援用される。本願はまた、2013年3月29日に出願された、「イベント処理とマップリデュースとの統合」(INTEGRATING EVENT PROCESSING WITH MAP REDUCE)と題された米国仮出願第61/806,744号の、米国特許法第119条(e)による優先権を主張し、その内容全体はあらゆる目的のためにここに引用により援用される。本願はまた、2013年11月13日に出願された、「イベント処理とマップリデュースとの統合」(INTEGRATING EVENT PROCESSING WITH MAP-REDUCE)と題された米国非仮出願第14/079,538号の、米国特許法第119条(e)による優先権を主張し、その内容全体はあらゆる目的のためにここに引用により援用される。
発明の背景
連続イベントプロセッサは、イベントの連続ストリームを受信し、そこに含まれる各イベントを、そのイベントに連続イベント処理(continuous event processing:CEP)クエリを適用することによって処理することができる。そのようなCEPクエリは、構造化クエリ言語(structured query language:SQL)の延長である連続クエリ言語(continuous query language:CQL)などのCEPクエリ言語の構文に適合するようにフォーマット化され得る。SQLクエリは、リレーショナルデータベースのテーブルにすでに格納されたデータに(1つのユーザ要求につき)一度適用されることが多いが、CQLクエリは、入来するイベントストリームにおけるイベントが連続イベントプロセッサによって受信されると、それらのイベントに繰り返し適用される。
たとえば、データストリームは、さまざまな会社についての株価を特定し得る。時間が経過するにつれて、それらの会社についての最も最近の株価が、データストリームに追加され得る。連続イベントプロセッサは、そのような株価の各々を受信し、その株価が到着するとその株価にCQLクエリを適用し得る。CQLクエリは、フィルタリング演算および集約演算を潜在的に含むさまざまな演算を特定し得る。連続イベントプロセッサは次に、CQLクエリの適用の結果を、興味を有するさまざまなリスナに出力し得る。
この発明の一実施形態に従った、マップリデュース・アルゴリズミックツールとCEPとの組合せを使用して、大量のデータに関するリアルタイムのクエリ結果を計算するための手法を示すフロー図である。 この発明の一実施形態に従った、マップリデュース・アルゴリズミックツールとCEPとの組合せを使用して、大量のデータに関するリアルタイムのクエリ結果を計算するためのシステムを示すブロック図である。 この発明の一実施形態に従った、使用され得るシステム環境のコンポーネントを示す簡略化されたブロック図である。 この発明の実施形態に従った、使用され得るコンピュータシステムの簡略化されたブロック図である。 この発明の一実施形態に従った、単一のクエリに基づいて連続処理コンポーネントおよびバッチ処理コンポーネントを生成するための手法の一例を示すフロー図である。 この発明の一実施形態に従った、クエリに基づいて機能的に同等の演算子を生成するための手法の一例を示すフロー図である。 この発明の実施形態に従った電子装置700の簡略化されたブロック図である。
詳細な説明
この発明の実施形態は、連続イベント処理の分野に関する。この発明の実施形態は、連続イベント処理とマップリデュース・アルゴリズミックツールとの組合せを使用して、大量のデータを比較的迅速に処理し、またはクエリするための手法を伴う。一実施形態では、連続イベントプロセッサは、(a)現在実行中のマップリデュース・ジョブが開始されてから受信されたイベントからのCQLクエリ結果を、(b)最も最近完了したマップリデュース・ジョブによって生成された最も最近のクエリ結果とマージすることにより、リアルタイムの結果を連続的に生成する。現在実行中のマップリデュース・ジョブが完了すると、そのクエリ結果は格納されて連続イベントプロセッサにアクセス可能となり、最後のマップリデュース・ジョブの実行以降にサイズが大きくなったイベントデータに関して、新規のマップリデュース・ジョブが開始される。マップリデュース・アルゴリズミックツールは、大量のデータを分析して処理するための便利な機構を提供する。そのような大量のデータは、「ビッグデータ」と呼ばれることもある。
ビッグデータとは、情報技術媒体およびベンダーらによって使用される用語である。ビジネスは、テラバイト、さらにはペタバイトのデータといった膨大な量のデータを蓄積しており、市場動向および企業業績をより理解したいという、競争心の強い要望を有している。会社は、ビッグデータを管理し、分析したいという要望に直面している。現代のアプリケーションは、非常に大量のデータを扱う。この量の多さは、従来の処理機構を使用してデータを迅速に処理することを困難にする。
ビッグデータの処理の一例として、営業部長が、先月といった長期間にわたって製品が購入され得る主要市場の各々における、会社のベストセラーの製品を識別したいという場合が考えられ得る。このタスクを遂行する上での課題は、そのような分析のために処理すべきデータの量である。データの量は、何千から何百万、または何十億もの売買トランザクション間で変わり得る。リレーショナルデータベースおよび視覚化ソフトウェアなどの一般的なツールは、典型的には、そのような量のデータに調整されていない。また、データは構造化されている場合と構造化されていない場合とがあり、それは、データ管理および分析ツールによって取扱われないかもしれない特質である。従来のリレーショナルデータベースシステムは、そのような大量のデータをタイムリーに処理することができない。
このため、ビッグデータを管理しようとして、いくつかの試みを行なうことができる。大量の異なるデータを扱うための1つの潜在的なやり方は、より扱いやすいデータセットを作成するために、異なるサーバ間でデータを分割し、複製することであろう。しかしながら、データの複数のコピーを作成することは、情報の一貫性を維持することをより困難にする。なぜなら、1つのデータセットへの更新が、他のデータセットにコピーされないかもしれないためである。
一貫性のそのような欠如は、たとえば、データを使用するアプリケーションが販売データのエントリを更新するものの、その更新が他の複製場所にコピーされない場合に、生じるかもしれない。データにアクセスする他のアプリケーションが、そのデータの一部を他のトランザクションですでに使用していた場合、状況は複雑になり得る。データが変わる場合、データの再分割が適切かもしれないが、そのような再分割を行なうべき態様が不明瞭であることが多い。
これらの複雑性に対処するための1つの可能なアプローチは、データを保護された不変データとして分散させることを伴い得る。たとえば、売買トランザクションが生じると、それらは何らかの持続性ストレージに格納され得る。アプリケーションは、その格納された生データを変えないように防止され得る。データを不変に保つことは一貫性の問題を回避し、分散は量の問題を緩和する。しかしながら、データを不変にすると、既存のデータ操作ツールが所望の態様で分散データを処理することができなくなるおそれがある。
ある特定の分散されたアルゴリズミックツールは、分散された不変の入力とともに機能することができ、分散されたシステムに関して、上述の販売例で説明されたものと同様のクエリを行なうことができる。この特定のアルゴリズミックツールは、マップリデュース・アルゴリズミックツールである。マップリデュース・アルゴリズミックツールのさまざまな異なる実現化例が存在する。たとえば、一実現化例は、オープンソースのApache Hadoop(アパッチ・ハドゥープ)に見られる。Apache Hadoopを使用すると、ビッグデータ売買トランザクションを入力として使用し、次にベストセラーの製品を結果として返す、マップリデュース・ジョブを作成することが可能である。
マップリデュース・アルゴリズミックツールは、分散データに関して機能する。データは別々のノードへと分割可能であり、各ノードは、別個のコンピューティングマシン上で別個のファイルとして維持可能である。そのようなマシンは各々、そのマシン上で維持されたデータに関して、他のマシンと並行してクエリを実行できる。このため、各マシンは、データのその特定の区画に関する別々のクエリ結果を生成できる。次に、これらの別々の結果は、単一の一体化された結果へと減少(リデュース)され得る。マップリデュース・アルゴリズミックツールは、この減少を遂行できる。データへのエントリごとに、マップリデュース・アルゴリズミックツールは、そのエントリを結果にマップすることができる。たとえば、データエントリが製品を表わす場合、マップリデュース・アルゴリズミックツールは、各製品を、他の製品に対するその製品の売上げランキングを示す結果にマップすることができる。マップリデュース・アルゴリズミックツールは次に、これらの結果のすべてを、単一の一体化された結果へとマージすることができる。そのようなマージは、減少と呼ばれる。
マップリデュース・アルゴリズミックツールがデータに対してどのように演算できるかの一例について、複数の別々のウェブページ内のある特定の単語の出現数量の計算に関わる一例が考えられ得る。第1のウェブページは、特定の単語への言及を10個含むかもしれない。第2のウェブページも、特定の単語への言及を10個含むかもしれない。第3のウェブページは、特定の単語への言及を1個だけ含むかもしれない。第4のウェブページは、特定の単語への言及を2個含むかもしれない。マップリデュース・アルゴリズミックツールによって行なわれるマッピングプロセスは、各ウェブページを、そのウェブページ内の特定の単語の出現数量にマップすることができる。この例では、マップリデュース・アルゴリズミックツールによって行なわれる減少(リデュース)プロセスは単に、この例では特定の単語が結局23個出現したという最終結果を生成するために、各ウェブページにマップされた数量のすべてを合計することを伴う。
マップリデュース・アルゴリズミックツールが演算するデータの分散性質により、および入力データのサイズに依存して、マップリデュース・ジョブは、n分ごとに、または、より高い可能性でn時間ごとに、バッチ結果におけるベストセラーの品目を返すかもしれない(上述の販売例を参照)。ある状況下では、数分または数時間は、クエリ結果を待つには長すぎる。たとえば、いくつかの不正検出アプリケーションは、トランザクションが進行中で、かつ何千もの不正トランザクションが完了してしまう前に、即時の結果を要求する。別の例については、小売業者は、売れ行きが悪い製品の最新の知識を得て、顧客が店に入るときに値引きカードを顧客に配ることにより、店がそれらの製品の売上げを伸ばせるようにしたいかもしれない。その知識を待つために費やされる時間量が増加するにつれて、その知識が的外れになる可能性も増加する。マップリデュース・アルゴリズムの典型的な実現化例は、リアルタイムのクエリ結果を生成しない。
この発明の一実施形態によれば、連続イベント処理(CEP)手法は、大きい分散データセットに対して実行されたクエリについてのクエリ結果をより迅速に生成するために、マップリデュース・アルゴリズミックツールとともに使用可能である。CEPを使用して、連続イベントプロセッサは、データストリームからリアルタイムでイベントを受信し、それらのイベントが受信されるとそれらに関して分析処理を行なう。たとえば、会社の店内で売買トランザクションが生じると、それらのトランザクションの各々は、それらのトランザクションの時点で、イベントとしてデータストリームに追加されてもよい。データストリームに配置されたイベントは、それらのイベントの受信に興味を有する、アプリケーションプログラムなどのエンティティによって聴かれ(listen)得る。そのようなイベントを受信するために、そのようなエンティティは、連続イベントプロセッサに登録可能である。加えて、そのような売買トランザクションが会社の店内で生じると、それらのトランザクションの各々は、リレーショナルデータベースなどの永続的データストアに追加されてもよく、それは、何らかの分割スキームに従って複数の別々の場所にわたって分散され得る。
連続イベントプロセッサは、イベントストリームからのイベントがプロセッサに到着すると、それらのイベントにCEPクエリを連続的に適用することができる。たとえば、プロセッサは、売買トランザクションを表わすイベントに、特定された持続時間を有する時間窓にわたって、ベストセラーの製品を判断するクエリを適用することができる。そうするために、プロセッサは、その持続時間を有する最も最近生じた時間窓内でプロセッサがデータストリームから受信したすべてのイベントに関するデータを、コンピューティングメモリに維持することができる。しかしながら、この時間窓のこの長さは、連続イベントプロセッサが利用可能なコンピューティングメモリの量によって制限され得る。典型的には、連続イベントプロセッサは、たとえば特に、非常に大量の売買トランザクションが生じた場合、これまで生じたすべての売買トランザクションを含むように時間窓を延長するのに十分なメモリを有していないであろう。連続イベントプロセッサは、再び量に依存して、去年生じたすべての売買トランザクションを含むように時間窓を延長するのに十分なメモリさえ有していないかもしれない。加えて、時間窓のサイズが増加するにつれて、その窓内に該当するイベントのすべてに関して連続イベントプロセッサがクエリを実行するのにかかる時間量も増加する。CEP機構は従来、ほんの数時間または数分という大きさであることもある、比較的制限された持続時間を有する時間窓内で生じるイベントに関する結果を算出するために使用される。
上述の制限のうちのいくつかを克服するために、この発明の実施形態は、CEPおよびマップリデュース・アルゴリズミックツールのパワーをともにマージする。マップリデュース・アルゴリズミックツールは、イベントデータの最も最近蓄積されたバッチについてクエリ結果を計算するために使用可能である。たとえば、マップリデュース・ジョブは、分散されたリレーショナルデータベースに格納されたイベントデータに関するクエリの結果を計算するように予定されていてもよく、そのようなデータは、典型的にはハードディスクドライブなどの磁気媒体上に、永続的で不揮発性の態様で格納されたものであってもよい。そのようなジョブは、完了するのに比較的長い時間量がかかるかもしれない。たとえば、分散データストレージにすでに蓄積されたイベントデータの量に依存して、ジョブは、完了するのに一日かかるかもしれない。この発明の一実施形態では、マップ・マップリデュース・ジョブが予定時間に一旦実行開始されると、マップリデュース・アルゴリズミックツールは、予定時間までに分散データストレージに格納されたイベントデータのみを考慮する。マップリデュース・アルゴリズミックツールがジョブを処理している際、マップリデュース・ジョブは、データストリームに現在到着しているイベントを含まない。一実施形態によれば、マップリデュース・ジョブは、マップリデュース・ジョブが実行開始された時間の時点で、データストリームからすでに受信され、分散データストレージに格納されたイベントからなる。
各マップリデュース・ジョブは、バッチ技術の一例である。マップリデュース・ジョブが完了するのに特定の時間量がかかると仮定すると、その特定の時間量の間にデータストリームに到着して分散データストレージに格納されたイベントは、次に実行されるマップリデュース・ジョブ内で、すなわち次のバッチで考慮されるであろう。この発明の一実施形態によれば、連続イベントプロセッサは、現在実行中のマップリデュース・ジョブが処理され始めた後で(および、一実施形態では、後でのみ)データストリームに到着するイベントに関してCEPを連続的に行なう。そのような実施形態では、連続イベントプロセッサは、マップリデュース・アルゴリズミックツールが、予定されたジョブの一環として、分散データストレージ内の以前格納されたイベントに関して実行しているのと同じまたは同様のクエリを、これらの新着イベントに関して実行する。連続イベントプロセッサは、新着イベントがデータストリームに到着すると、それらのイベントに関してこのクエリを実行でき、このため、CEPクエリはリアルタイムで実行可能である。この発明の一実施形態では、連続イベントプロセッサがクエリ結果を生成するたびに、プロセッサはそのクエリ結果を、最も最近完了したマップリデュース・ジョブが生成した最も最近の結果とマージして、一体化されたクエリ結果を生成する。一体化されたクエリ結果は、分散データストレージにすでに格納されたイベントデータ、およびそのストレージよりも最近到着したイベントデータに関して行われたクエリ処理を反映している。
図1は、この発明の一実施形態に従った、マップリデュース・アルゴリズミックツールとCEPとの組合せを使用して、大量のデータに関するリアルタイムのクエリ結果を計算するための手法100を示すフロー図である。手法100は、ある演算がある順序で行なわれることを伴って示されているが、この発明の代替的な実施形態は、追加の演算、より少ない演算、または異なる演算が、潜在的には異なる順序で行なわれることを伴い得る。
ブロック102で、マップリデュース・アルゴリズミックツール(たとえば、Apache Hadoop)は、分散データストレージに格納されたイベントデータに関して、マップリデュース・ジョブを行ない始める。一実施形態では、マップリデュース・ジョブは、分散データストレージに格納されたすべてのイベントの特定されたサブセットに関する、特定されたクエリの実行を伴う。このサブセットは、以前のマップリデュース・ジョブがもしあれば、その実行開始以降に分散データストレージに格納されたあらゆるものを含む、分散データストレージに格納されたイベントの全体集合を含み得る。
ブロック104で、マップリデュース・アルゴリズミックツールが分散データストレージに格納されたイベントデータに関してマップリデュース・ジョブを実行している間、連続イベントプロセッサは、データストリームを介して連続的に到着しているイベントに対してCQLクエリを連続的に実行する。CQLクエリは、現在の時刻で終了点を有する特定された時間窓内で受信されたすべてのイベントに作用できる。CQLクエリは、その実行において、そのようなイベントからデータを集約することができる。一実施形態では、CQLクエリは、現在実行中のマップリデュース・ジョブによって、しかしながら別々のイベントに関して実行されているクエリと同じであり、または同様であり、または同じ機能を行なう。一実施形態では、CQLクエリは、その処理から、(現在実行中のマップリデュース・ジョブによって処理されている)分散データストレージにすでに格納されたすべてのイベントを除外する。上述のように、一実施形態では、そのようなイベントも分散データストレージに格納されるが、現在実行中のマップリデュース・ジョブの実行内で考慮されない。
ブロック106で、連続イベントプロセッサは、特定された時間窓内にあるデータイベントに関するCQLクエリの最も最近の実行に基づいて、予備クエリ結果を算出する。
ブロック108で、いずれかのマップリデュース・ジョブが完了した場合、連続イベントプロセッサは、予備クエリ結果を、最も最近完了したマップリデュース・ジョブの結果とマージする。このマージは、一体化されたクエリ結果を生成する。この発明の一実施形態では、マップリデュース・ジョブがまだ完了していない場合、予備クエリ結果が、一体化されたクエリ結果になる。
ブロック110で、連続イベントプロセッサは、一体化されたクエリ結果を、興味を有するリスニングエンティティに出力する。たとえば、連続イベントプロセッサは、一体化されたクエリ結果を、そのような一体化されたクエリ結果を受信するために連続イベントプロセッサに登録したアプリケーションプログラムに出力できる。
ブロック112で、最も最近開始されたマップリデュース・ジョブが完了したかどうかについて、判断が下される。最も最近開始されたマップリデュース・ジョブが完了した場合、制御はブロック114に進む。完了していない場合、制御はブロック104に進む。
ブロック114で、マップリデュース・ジョブの結果が永続的に格納される。たとえば、マップリデュース・ジョブの結果は、連続イベントプロセッサがアクセスを有するハードディスクドライブ上に格納され得る。ブロック108に関連して上述されたように、連続イベントプロセッサはこの結果をプロセッサ自体の予備結果とマージして、一体化されたクエリ結果を生成することができる。一実施形態では、マップリデュース・ジョブの結果は、以前に実行されたマップリデュース・ジョブの以前に格納された結果を上書きして置換する。
ブロック116で、マップリデュース・アルゴリズミックツール(たとえば、Apache Hadoop)は、分散データストレージに格納されたイベントデータに関して、新規のマップリデュース・ジョブを行ない始める。一実施形態では、マップリデュース・ジョブは、分散データストレージに格納されたすべてのイベントの特定されたサブセットに関する、特定されたクエリの実行を伴う。一実施形態では、このサブセットは、以前のマップリデュース・ジョブの実行開始以降に分散データストレージに格納されたイベントを含む。制御はブロック104に戻る。
たとえば、1組のウェブページにおけるある特定の単語の数量が23個であることを、最も最近完了したマップリデュース・ジョブの結果が示す場合、および、新規のウェブページがイベントとしてデータストリームに到着する場合、および、その新規のウェブページにおける特定の単語の数量が5個であると連続イベントプロセッサが判断した場合、連続イベントプロセッサは、この結果を、最も最近完了したマップリデュース・ジョブの結果とマージして、28個という一体化されたクエリ結果を生成することができる。(現在のではなく)次のマップリデュース・ジョブが、新規のウェブページを含むイベントデータに対して演算できるように、新規のウェブページは分散データストレージに追加され得る。
図2は、この発明の一実施形態に従った、マップリデュース・アルゴリズミックツールとCEPとの組合せを使用して、大量のデータに関するリアルタイムのクエリ結果を計算するためのシステム200を示すブロック図である。一実施形態では、システム200は、イベントソース202と、イベントを含むデータストリーム204と、連続イベントプロセッサ206と、マップリデュース・アルゴリズミックツール208と、分散データストレージ210と、リスニングエンティティ212とを含む。一実施形態では、イベントソース202は、イベント(たとえば、売買トランザクション、株価など)が生じると、それらのイベントをデータストリーム204に連続的に追加できる。連続イベントプロセッサ206は、データストリーム204からイベントを連続的に読出し、それらのイベントに関してCQLクエリを連続的に実行することができる。連続イベントプロセッサ206はまた、それが読出すイベントを分散データストレージ210に連続的に格納できる。連続イベントプロセッサ206はまた、CQLクエリの実行の結果を、マップリデュース・アルゴリズミックツール208によって実行された、完了したマップリデュース・ジョブの最も最近の結果と連続的にマージできる。マップリデュース・アルゴリズミックツール208は、マップリデュース・ジョブを次々に実行できる。そのようなマップリデュース・ジョブは各々、そのマップリデュース・ジョブの実行開始時間の時点で分散データストレージ210に格納されたイベントに関するCQLクエリと同じである、または同様であるクエリを実行できる。そのようなマップリデュース・ジョブは各々、それが完了すると、そのクエリ実行の結果を、マージする目的のために、連続イベントプロセッサ206にアクセス可能である媒体(潜在的に、分散データストレージ210)上に永続的に格納できる。リスニングエンティティ212は、連続イベントプロセッサ206によって出力された、一体化されたクエリ結果を連続的に受信して、それらを使用することができ、そのような結果を人間のユーザに潜在的に表示する。
一実施形態では、CQLクエリおよび対応するマップリデュース(たとえば、Hadoop)ジョブは、ユーザによって別々に手動で作成され、実行され得る。しかしながら、代替的な一実施形態では、CQLクエリおよび対応するマップリデュース・ジョブの作成および実行は、マップリデュース・ジョブ(またはプログラム)が、既存の対応するCQLクエリに基づいて自動的に生成され得るように、統合され得る。たとえば、一実施形態では、ユーザは、データストリームにおいて表わされた売買トランザクションイベントに基づいてベストセラーの製品を判断するCQLクエリを作成するために、CEPシステムを利用できる。次に、CQLクエリを入力として使用して、マップリデュース・プログラムが、マップリデュース・プログラムジェネレータによって自動的に生成され得る。プログラム(同じプログラム、または別個のプログラム)はまた、実行された各マップリデュース・ジョブによって返された結果を、CQLクエリの実行によって返された結果と連続的にマージするために、自動的に生成され得る。
マップリデュース・ジョブは、ピッグ・ラテン語(Pig Latin)と呼ばれるある特定の言語で表わすことができる。ピッグ・ラテン語とは、高レベルの記述言語である。たとえば、ピッグ・ラテン語では、データをロードし、そのデータをフィルタリングし、そのデータを他のデータと結合するといったジョブまたはプログラムを表わすことができる。ピッグ・ラテン語プログラムは、演算子の観点から表わすことができる。これらの演算子は、データをロードする、データをフィルタリングする、データを結合するといった演算を行なってもよい。この発明の一実施形態では、ピッグ・ラテン語プログラムジェネレータは、CQLクエリを入力として受信し、そのクエリを、そのコンポーネント演算子へと自動的に分解する。そのようなCQL演算子は、フィルター演算子、結合演算子、射影演算子などを含んでいてもよい。この発明の一実施形態では、ピッグ・ラテン語プログラムジェネレータは、CQL演算子とピッグ・ラテン語演算子との間のマッピングを利用して、1組の演算子から他のものに自動的に変換する。そのようなマッピングは、1つの演算子対1つの演算子のマッピング、1つの演算子対多くの演算子のマッピング、多くの演算子対1つの演算子のマッピング、および多くの演算子対多くの演算子のマッピングを含み得る。
一実施形態では、1組のピッグ・ラテン語演算子が、対応するCQL演算子に基づいて自動的に生成された後で、ピッグ・ラテン語プログラムジェネレータは、CQL演算子およびピッグ・ラテン語演算子の双方を含み得るフローを自動的に生成して格納する。このフローは、CQL演算子の出力がピッグ・ラテン語演算子への入力となること、および/または、ピッグ・ラテン語演算子の出力がCQL演算子への入力となることを示し得る。このため、ピッグ・ラテン語演算子およびCQL演算子の双方を含む、演算子の有向グラフを生成することができる。この有向グラフでは、演算子ノード間のエッジは、演算子から演算子までのデータのフローを示し得る。潜在的に、1つの演算子が複数の演算子にデータを出力でき、複数の演算子が単一の演算子にデータを出力できる。グラフにおけるリーフノード演算子は、CQL演算結果とマップリデュース演算結果との最終マージを行なうことができる。有向グラフがこのように自動的に生成された後で、それらの演算子が行なう演算子のタイプに基づいた、グラフにおけるいくつかの演算子ノードのマージを潜在的に伴う、グラフの何らかの最適化を自動的に行なうことができる。たとえば、双方ともフィルタリング演算を行なうCQL演算子およびピッグ・ラテン語演算子を、単一の演算子へとともにマージすることができる。
実行時、有向グラフは解釈され得る。ピッグ・ラテン語演算子、または1つ以上のエッジによってリンクされた1組のピッグ・ラテン語演算子がグラフに生じると、それらの演算子の演算を行なう対応するマップリデュース・プログラムが、自動的に実行され得る。マップリデュース・プログラムの結果は、入力イベントとして、有向グラフにおけるCQL演算子に対応するCQLクエリに送信され得る。
単一の言語を使用した連続処理およびバッチ処理の結果の結合
上述のように、一実施形態では、連続クエリプロセッサは、イベントストリームに現在到着しているイベントに対してCQLクエリを連続的に処理することができ、一方、マップリデュース・プログラムは、以前にストリームから受信され、格納されたイベントを同時に処理する。大きいデータセットについて比較的新鮮な結果を生成するために、連続クエリプロセッサによって行なわれた処理の結果を、マップリデュース・プログラムによって行なわれた処理の結果と周期的にマージすることができる。
一実施形態によれば、連続クエリプロセッサは、CQLなどの単一の高レベル言語で構成されるクエリを実行する。そのようなクエリのコンパイルの結果、2つの局面をランタイムで生成することができる。一方の局面は、イベントストリーム処理を行なう。同じコンパイル中、他方の局面として、追加の演算子を生成することができる。これらの追加の演算子は、Hadoopまたは何らかの他のマップリデュース・ツールへと統合され得る。マップリデュース・ツールは、バッチ系の処理を行なうことができる。ストリーム処理の結果は、バッチ処理の結果とマージされ得る。したがって、結果がリアルタイムで得られることも可能にしつつ、大きいデータ量が操作可能である。
オラクル・イベント・プロセッシング(Oracle Event Processing:OEP)などのイベント処理アプリケーションは、イベントをリアルタイムで処理するように設計されている。しかしながら、そのようなアプリケーションは従来、比較的短命なイベントを処理するように設計されたものである。そのような処理は従来、あまり深くなかった。イベント処理アプリケーションは従来、処理が発生すると、発生しているイベントを処理してきた。それらのイベント処理アプリケーションは従来、何年も前にデータベースに格納されたかもしれないデータを検査していなかった。
Hadoopなどのマップリデュース・ツールは、ハードディスクドライブ上に物理的に含まれ得るデータベースなどのリポジトリに格納された大量のデータに対して演算できる。そのようなデータベースに格納されたデータは、比較的古い場合があり、何年も前のものである場合もある。そのようなデータベースに格納されたデータは、数年前に生成され、格納されたものかもしれない。それはそのような長期間蓄積していたかもしれないため、そのようなデータベースに格納されたデータの量は比較的大きい場合がある。マップリデュース・ツールは、データベースに格納された大きいデータセットを、分散された態様で処理できる。マップリデュース・ツールは、マップタスクおよびリデュースタスクを作成できる。これらのタスクは、分散された態様で実行可能である。大きいデータセットの処理は別々の局面へと分解可能であり、各局面についての処理は別々の処理要素間で分散可能である。マップリデュース・ツールはその処理を、それが大きいデータセットに関して行なうバッチジョブが開始および完了の双方を有するように、バッチ系の態様で行なうことができる。
マップリデュース・ツールはその処理を、連続イベントプロセッサによって同時に行なわれている処理から隔離されたやり方で行なうことができる。マップリデュース・ツールはその処理を、明確なタスク開始および終了を有するバッチ系の態様で行なうが、連続イベントプロセッサはその処理を、終了なしで連続的に行なう。イベントストリームにおけるイベントは、連続イベントプロセッサに連続的に到着する。この発明の実施形態は、連続イベントプロセッサの連続タイプの処理の結果と、マップリデュース・ツールのバッチタイプの処理の結果とを、ともに結合できる。さらに、この発明の実施形態は、CQLなどの単一の高レベル言語を使用して、この結合を遂行できる。
代替的な一アプローチは、ストリーム処理を行なう1つのアプリケーションと、バッチ処理を行なうもう1つの別のアプリケーションとを伴い得る。異なるタイプの処理の結果をまとめようとして、第3のカスタムアプリケーションを書くことが可能である。そのようなアプローチは、1つはストリーム処理用、1つはバッチ処理用、1つは各タイプの処理の結果の結合用、といった3つの異なるプログラミング言語の使用を伴うかもしれない。
複数の異なる言語の使用を回避するために、この発明の一実施形態は、高レベルのCQLクエリを機能的に同等のマップリデュース・プログラムにコンパイルすることを伴う。CQLクエリの実行の結果は次に、マップリデュース・プログラムの結果とマージされる。CQLクエリは、結果をリアルタイムで生成でき、一方、マップリデュース・プログラムは、より大きいデータセットに対するより深い分析を行なうことができる。マージの結果はしたがって、リアルタイムであり、かつ深い。そのようなマージは、システムのリアルタイムコンポーネントおよび深い分析コンポーネントの双方を生成するためにコンパイルされる単一のユーザ指定クエリに基づいて達成可能である。異なる言語での別々のアプリケーションを構築する必要はない。
図5は、この発明の一実施形態に従った、単一のクエリに基づいて連続処理コンポーネントおよびバッチ処理コンポーネントを生成するための手法500の一例を示すフロー図である。ブロック502で、CQLで特定されたクエリが受信される。ブロック504で、コンパイラが、CQLクエリを、連続イベントプロセッサによって実行可能な連続イベント処理実行プランへとコンパイルする。ブロック506で、コンパイラは、CQLクエリを、連続イベント処理実行プランと機能的に同等であり、かつマップリデュース・プログラムによって分散された態様でバッチジョブとして実行可能な、マップタスクおよびリデュースタスクへとコンパイルする。ブロック508で、コンパイラは、連続イベントプロセッサによって生成された結果をマップリデュース・プログラムによって生成された結果と結合し得るマージコンポーネントを生成する。ブロック510で、連続イベントプロセッサは、イベントストリームからの現在到着しているイベントに関してプランを実行し、一方、マップリデュース・プログラムは、以前にデータベースに格納されたデータに関してマップタスクおよびリデュースタスクを実行する。ブロック512で、マージコンポーネントは、連続イベントプロセッサおよびマップリデュース・プログラムによって生成された結果を結合する。制御はブロック510に戻る。
対応するリアルタイム演算子およびバッチ演算子の生成
例示的なシナリオでは、ユーザは、1組のテキスト内のある特定の単語への言及の数量をカウントしたいかもしれない。Hadoopなどのマップリデュース・ツールは、特定の単語への言及の数量をカウントするために、1組のファイルにおける各ファイルを処理することができる。マップリデュース・ツールによって処理された1組のファイルは、数年前にイベントストリームから格納された短いテキストを含むかもしれない。たとえば、1組のファイルは、比較的最近の過去(たとえば、直近の1分)を除き、10年にわたってストリームから受信された短いテキストを含むかもしれない。これが生じている間、連続イベントプロセッサは、同様の短いリアルタイムテキストを、フェイスブック(Facebook:登録商標)またはツイッター(Twitter:登録商標)などのオンラインアプリケーションから受信できる。連続イベントプロセッサは、それらのリアルタイムテキストが生成された直後に(たとえば、ユーザがフェイスブックまたはツイッターを使用してそのようなテキストを投稿した直後に)、これらのリアルタイムテキスト内の特定の単語への言及の数量をカウントすることができる。マップリデュース・ツールによって計算されたカウントは、連続イベントプロセッサによって計算されたカウントと結合され得る。
行なうべき単語カウントタスクを特定するために、ユーザは、CQLを使用してクエリを特定できる。構文的には、CQLは構造化クエリ言語(SQL)に似ている。クエリは、大まかには、FROM location GROUP BY word SELECT countといった形をとるかもしれない。そのようなクエリは、特定された場所からすべての文を集め、それらの文からの特有の単語を異なるグループへとグループ分けし、次に各グループにおける単語の数量をカウントすることができる。このため、クエリは、比較的単純なフォーマットを使用して特定され得る。
ユーザ指定CQLクエリを受信したコンパイラは、クエリを別々の演算子へと分解できる。これらはたとえば、グループ分け演算子、カウントを行なうための集約演算子、ソース演算子としても作用する出力演算子、などを含み得る。この組の演算子に基づいて、コンパイラは、(a)リアルタイムイベント処理用のクエリ実行プラン、および(b)大きいデータセットの処理用のバッチジョブ、の双方を生成できる。上述の特定の例示的な単語カウントシナリオを参照すると、バッチジョブの生成は、さまざまな文を別々の特有の単語へとマップするマップ演算子の生成を伴い得る。バッチジョブの生成はさらに、各組の特有の単語を、それらの単語の数量を表わす対応する数へと減少させるリデュース演算子の生成を伴い得る。クエリ実行プランを生成する一環として、コンパイラは、バッチリデュース演算子の結果を連続集約演算子の結果とマージするマージ演算子を生成できる。バッチジョブは次に、リアルタイムの連続クエリと同時に実行され得る。マージ演算子は、マップリデュース・コンポーネントからバッチビューを、連続イベントプロセッサからリアルタイムビューを得る。
図6は、この発明の一実施形態に従った、クエリに基づいて機能的に同等の演算子を生成するための手法600の一例を示すフロー図である。ブロック602で、クエリの現在の要素が、クエリの第1の要素に設定される。ブロック604で、現在の要素のタイプ(たとえば、グループ分け、集約、選択など)が判断される。ブロック606で、現在の要素のタイプに基づいて、連続イベント処理演算子タイプが選択される。ブロック608で、現在の要素のタイプに基づいて、バッチ処理演算子タイプ(たとえば、マップ、リデュースなど)が選択される。ブロック610で、選択された連続イベント処理演算子タイプの演算子が生成され、連続イベント処理プランに追加される。ブロック612で、選択されたバッチ処理演算子タイプの演算子が生成され、バッチ処理プランに追加される。ブロック614で、クエリが現在の要素の後に要素を含むかどうかについて、判断が下される。要素を含む場合、制御はブロック616に進む。その他の場合、制御はブロック618に進む。
ブロック616で、クエリの現在の要素が、クエリの次の要素に設定される。
制御はブロック604に戻る。
また、これに代えて、ブロック618で、マージ演算子が生成され、連続イベント処理プランに追加される。図6で示す手法は次に終了する。
ステートレス演算子およびステートフル演算子
一般に、CQLには2つの異なる組の演算子がある。そのような1組の演算子はステートレスである。そのようなステートレス演算子では、典型的には、相互接続された演算子のグラフにおいて、1つの入力が1つ以上の出力にマップされる。この発明の一実施形態によれば、ステートレスCQL演算子は、バッチ処理ドメインにおけるマップ演算子に対応している。もう1つの組のCQL演算子はステートフルである。そのようなステートレス演算子では、典型的には、相互接続された演算子のグラフにおいて、複数の入力が1つの出力にマップされる。この発明の一実施形態によれば、ステートフルCQL演算子は、バッチ処理ドメインにおけるリデュース演算子に対応している。
このため、この発明の一実施形態では、コンパイラは、CQLクエリ要素が1つの入力を1つ以上の出力へとマップするかどうか判断する。マップする場合、コンパイラは、要素がステートレスイベント処理演算子に対応していると判断する。フィルター演算子は、ステートレスイベント処理演算子の一例である。イベント処理演算子がステートレス演算子であるという判断に応答して、コンパイラは、(選択されたマップリデュース言語で)バッチ処理ジョブに含むための機能的に同等のマップ演算子を生成する。また、これに代えて、コンパイラは、CQLクエリ要素が複数の入力を単一の出力へとマップするかどうか判断できる。マップする場合、コンパイラは、要素がステートフルイベント処理演算子に対応していると判断する。窓演算子は、ステートフルイベント処理演算子の一例である。イベント処理演算子がステートフル演算子であるという判断に応答して、コンパイラは、(選択されたマップリデュース言語で)バッチ処理ジョブに含むための機能的に同等のリデュース演算子を生成する。
CQLクエリの要素は、ある特定のタイプの集約機能(たとえば、合計、平均、カウントなど)を行なってもよい。この発明の一実施形態では、コンパイラは、特定の集約タイプのCQLクエリ集約演算子を判断し、それに応答して、同じタイプの集約機能を行なうリデュース演算子を生成する。このため、たとえば、連続イベント演算子が合計演算を行なう場合、コンパイラはそれに応答して、合計演算を行なうリデュース演算子を生成するが、連続イベント演算子がカウント演算を行なう場合、コンパイラはそれに応答して、カウント演算を行なう集約演算子を生成する。
マージされた結果における重複イベント処理の回避
この発明の一実施形態によれば、マージ演算子は、リアルタイムの連続処理結果と非リアルタイムのバッチ処理結果との間で重複が生成されないような態様で設計されている。マージ演算子は、リアルタイムの局面および非リアルタイムの局面双方による処理に起因してデータのあらゆる項目がそれ自体とマージされるのを防止する安全機能を含み得る。その結果、結合された結果の任意の特定の反復中、どの単一イベントも2回以上考慮されないであろう。この発明の一実施形態では、任意の特定の反復中、マージ演算子は、特定された時点(たとえば、1分前)よりも古い、非リアルタイムの(たとえば、マップリデュース)コンポーネントからの結果のみを受入れ、また、その特定された時点よりも古くない、リアルタイムの(たとえば、連続イベントプロセッサ)コンポーネントからの結果のみを受入れる。処理は繰り返し行なわれ得るため、時点は、反復が起こるたびに進み得る。
たとえば、第1の反復において、マージ演算子は、現在の日付での12時50分45秒までに生じたイベントのみを含むように、大きいデータセットの境界を規定できる。マージ演算子は、その第1の反復において、現在の日付での12時50分45秒よりも最近に生じたイベントのみを含むように、連続イベントプロセッサによって取扱われるデータセットの境界を規定する。連続イベントプロセッサ用の時間窓が10秒であると仮定すると、第2の反復については、この境界は、12時50分45秒から12時50分55秒へと10秒進み得る。第1の反復中に受信されたイベントは、12時50分45秒から12時50分55秒にわたる10秒の間隔において、それらが到着すると大きいデータセットに追加され、イベントストリームからのそれらの到着時間を示すためにタイムスタンプされている。各反復の終わりで、境界は、リアルタイムイベント処理の1単位に必要な時間量だけ進められ得る。この量は、連続イベントプロセッサが利用可能なメモリのサイズに基づいていてもよい。この発明の一実施形態では、この時間量は静的ではなく、異なる反復の後に境界が異なる量だけ進むことができるように、反復ごとに変わってもよい。そのような一実施形態では、各反復の境界は、一定時間の持続時間ではなく、連続イベントプロセッサによって処理すべき特定された量のイベントに基づいていてもよい。
その結果、任意の特定の反復中、マージ演算子は、その特定の反復中に連続イベントプロセッサによって処理されたどの組のイベントも、その同じ特定の反復中にバッチプロセッサによって処理されたイベントを含むことができない、ということを確実にする。ただし、そのようなイベントは後に、次の反復中にバッチプロセッサによって処理されるであろう一組のイベント内に含まれ得る。本質的に、マージ演算子は、一体化された組におけるイベントのタイムスタンプの重複は許されないことを除き、連続イベントプロセッサおよびバッチプロセッサによって生成された結果の組の和集合を計算することができる。
なお、ある状況下では、マージ演算子は、リアルタイム結果とバッチ結果とをただ連結するかまたは合計する以上のことをしてもよい。たとえば、平均演算子が処理に関与している場合、マージ演算子は、より複雑なマージを行なってもよい。より具体的な一例について、4個の数字の平均が4であると連続イベントプロセッサが判断した場合、かつ8個の数字の平均が10であるとバッチプロセッサが判断した場合、マージ演算子は、全部で12個の数字の平均は(4*4+8*10)/12=8であると判断するであろう。行なわれるマージの種類は、クエリで行なわれていた集約演算のタイプに依存していてもよい。
ピッグ・ラテン語プログラムへのCQLクエリのコンパイル
ピッグ・ラテン語は、マップリデュースによって使用され得る言語である。この発明の一実施形態では、CQLクエリのコンパイルは、ピッグ・ラテン語での類似演算子の生成を伴い得る。これらの類似演算子に基づいて、機能的に同等のピッグ・ラテン語プログラムが、連続クエリプロセッサによる使用のためのCQLクエリのコンパイルと同時に、コンパイラによって自動的に生成され得る。マップリデュース・ツールは、連続クエリプロセッサのCQLクエリの実行と同時に、ピッグ・ラテン語プログラムを実行できる。
しかしながら、この発明の代替的な一実施形態では、ピッグ・ラテン語演算子は生成されない。代わりに、マップリデュース・ツールによって使用可能なネイティブ演算子が生成され得る。この発明の実施形態は、ピッグ・ラテン語プログラムが生成される実施形態に限定されない。
ハードウェア概要
図3は、この発明の一実施形態に従った、使用され得るシステム環境300のコンポーネントを示す簡略化されたブロック図である。図示されているように、システム環境300は1つ以上のクライアントコンピューティング装置302、304、306、308を含み、それらは、ウェブブラウザ、専用クライアント(オラクル・フォームズ(Oracle Forms))などのクライアントアプリケーションを動作させるように構成されている。さまざまな実施形態では、クライアントコンピューティング装置302、304、306および308は、サーバ312とやり取りしてもよい。
クライアントコンピューティング装置302、304、306、308は、汎用パーソナルコンピュータ(たとえば、マイクロソフトウィンドウズ(登録商標)および/またはアップルマッキントッシュ(登録商標)オペレーティングシステムのさまざまなバージョンを作動させるパーソナルコンピュータおよび/またはラップトップコンピュータを含む)、携帯電話またはPDA(マイクロソフトウィンドウズモバイルなどのソフトウェアを作動させ、インターネット、eメール、SMS、ブラックベリー(登録商標)、または他の通信プロトコルに対応)、および/または、商業的に入手可能なさまざまなUNIX(登録商標)またはUNIX系オペレーティングシステムのうちのいずれかを作動させるワークステーションコンピュータ(さまざまなGNU/Linux(登録商標)オペレーティングシステムを限定なしで含む)であってもよい。また、これに代えて、クライアントコンピューティング装置302、304、306および308は、ネットワーク(たとえば、以下に説明するネットワーク310)を通して通信可能な、シンクライアントコンピュータ、インターネット対応ゲームシステム、および/または個人用メッセージング装置といった任意の他の電子装置であってもよい。例示的なシステム環境300は4つのクライアントコンピューティング装置を有して図示されているが、任意の数のクライアントコンピューティング装置がサポートされてもよい。センサ付き装置などの他の装置が、サーバ312とやり取りしてもよい。
システム環境300は、ネットワーク310を含んでいてもよい。ネットワーク310は、TCP/IP、SNA、IPX、AppleTalkなどを限定なしで含む商業的に入手可能なさまざまなプロトコルのうちのいずれかを使用してデータ通信をサポート可能な、当業者によく知られているあらゆるタイプのネットワークであってもよい。ほんの一例として、ネットワーク310は、イーサネット(登録商標)ネットワーク、トークンリングネットワークなどのローカルエリアネットワーク(local area network:LAN);ワイドエリアネットワーク;仮想プライベートネットワーク(virtual private network:VPN)を限定なしで含む仮想ネットワーク;インターネット;イントラネット;エクストラネット;公衆交換電話網(public switched telephone network:PSTN);赤外線ネットワーク;無線ネットワーク(たとえば、プロトコルのIEEE802.11スイートのいずれか、当該技術分野で公知のBluetooth(登録商標)プロトコル、および/または任意の他の無線プロトコルの下で動作するネットワーク);および/または、これらのおよび/または他のネットワークの組合せであってもよい。
システム環境300はまた、1つ以上のサーバコンピュータ312を含み、それは、汎用コンピュータ、特化サーバコンピュータ(たとえば、PCサーバ、UNIXサーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラック搭載サーバなどを含む)、サーバファーム、サーバクラスタ、もしくは任意の他の適切な構成および/または組合せであってもよい。さまざまな実施形態では、サーバ312は、前述の開示に記載された1つ以上のサービスまたはソフトウェアアプリケーションを作動させるように適合されてもよい。たとえば、サーバ312は、図2の連続イベントプロセッサ206またはマップリデュース・アルゴリズミックツール208に対応していてもよい。
サーバ312は、上述のいずれかを含むオペレーティングシステム、および商業的に入手可能なあらゆるサーバオペレーティングシステムを作動させてもよい。サーバ312はまた、HTTPサーバ、FTPサーバ、CGIサーバ、JAVA(登録商標)サーバ、データベースサーバなどを含む、さまざまな追加のサーバアプリケーションおよび/または中間層アプリケーションのうちのいずれかを作動させてもよい。例示的なデータベースサーバは、オラクル、マイクロソフト、サイベース(Sybase)、IBMなどから商業的に入手可能なものを限定なしで含む。
システム環境300はまた、1つ以上のデータベース314、316を含んでいてもよい。データベース314、316は、さまざまな場所に存在していてもよい。たとえば、データベース314、316のうちの1つ以上は、サーバ312にとってローカルな(および/またはサーバ312に常駐する)記憶媒体上に存在していてもよい。また、これに代えて、データベース314、316は、サーバ312からリモートであってもよく、ネットワークベースのまたは専用の接続を介してサーバ312と通信していてもよい。一組の実施形態では、データベース314、316は、当業者にはよく知られているストレージエリアネットワーク(storage area network:SAN)に存在していてもよい。同様に、サーバ312に起因する機能を行なうためのあらゆる必要なファイルが、サーバ312上にローカルにおよび/またはリモートで、適宜格納されてもよい。一組の実施形態では、データベース314、316は、SQLフォーマットのコマンドに応答してデータを格納し、更新し、検索するように適合された、オラクル10gなどのリレーショナルデータベースを含んでいてもよい。
図4は、この発明の実施形態に従った、使用され得るコンピュータシステム400の簡略化されたブロック図である。たとえば、図2の連続イベントプロセッサ206またはマップリデュース・アルゴリズミックツール208は、システム400などのシステムを用いて実現されてもよい。コンピュータシステム400は、バス424を介して電気的に連結され得るハードウェア要素を含んで図示されている。ハードウェア要素は、1つ以上の中央処理装置(CPU)402と、1つ以上の入力装置404(たとえば、マウス、キーボードなど)と、1つ以上の出力装置406(たとえば、表示装置、プリンタなど)とを含んでいてもよい。コンピュータシステム400はまた、1つ以上の記憶装置408を含んでいてもよい。たとえば、記憶装置408は、ディスクドライブ、光学記憶装置、ならびに、ランダムアクセスメモリ(random access memory:RAM)および/または読出し専用メモリ(read only memory:ROM)などのソリッドステート記憶装置などの装置を含んでいてもよく、それらはプログラム可能、フラッシュ更新可能なものなどであってもよい。
コンピュータシステム400は加えて、コンピュータ読取可能記憶媒体リーダ412と、通信サブシステム414(たとえば、モデム、ネットワークカード(無線または有線)、赤外線通信装置など)と、上述のようなRAM装置およびROM装置を含み得る作業メモリ418とを含んでいてもよい。いくつかの実施形態では、コンピュータシステム400はまた、処理加速ユニット416を含んでいてもよく、それは、デジタル信号プロセッサ(digital signal processor:DSP)、専用プロセッサなどを含んでいてもよい。
コンピュータ読取可能記憶媒体リーダ412はさらにコンピュータ読取可能記憶媒体410に接続可能であり、コンピュータ読取可能な情報を一時的におよび/またはより永続的に含むためのリモートの、ローカルの、固定された、および/またはリムーバブルの記憶装置プラス記憶媒体を、ともに(および、オプションで記憶装置408と組合されて)包括的に表わす。通信システム414は、データが、ネットワークおよび/または上述した任意の他のコンピュータと交換されることを許可してもよい。
コンピュータシステム400はまた、オペレーティングシステム420および/またはアプリケーションプログラム(クライアントアプリケーション、ウェブブラウザ、中間層アプリケーション、RDBMSなどであってもよい)などの他のコード422を含む、作業メモリ418内に現在位置するものとして図示されたソフトウェア要素を含んでいてもよい。例示的な一実施形態では、作業メモリ418は、上述の手法のために使用される(キャッシュなどの)実行可能コードおよび関連付けられたデータ構造を含んでいてもよい。コンピュータシステム400の代替的な実施形態は、上述のものからの多数の変形を有していてもよい、ということが理解されるべきである。たとえば、カスタマイズされたハードウェアも使用されてもよく、および/または、特定の要素がハードウェア、ソフトウェア(アプレットなどのポータブルソフトウェアを含む)、またはそれら双方で実現されてもよい。また、ネットワーク入力/出力装置などの他のコンピューティング装置への接続が採用されてもよい。
コードまたはコードの一部を含むための記憶媒体およびコンピュータ読取可能媒体は、当該技術分野で公知のまたは使用されるあらゆる適切な媒体を含んでいてもよく、コンピュータ読取可能な命令、データ構造、プログラムモジュール、もしくは他のデータといった情報の格納および/または送信のための任意の方法あるいは技術で実現される、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含むもののそれらに限定されない記憶媒体および通信媒体を含み、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(digital versatile disk:DVD)または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、データ信号、データ伝送、もしくは所望の情報を格納または送信するために使用可能であり、コンピュータによってアクセス可能な任意の他の媒体を含む。
図7は、この発明の実施形態に従った電子装置700の簡略化されたブロック図である。電子装置700は、第1の時間の時点で永続的データストアにすでに格納されているイベントデータに関して第1のクエリを実行する第1のバッチ演算を開始するように構成された開始ユニット702と、第1のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して第2のクエリを連続的に実行するように構成された実行ユニット704と、第1のバッチ演算の実行中、第2のクエリの結果を、完了した第2のバッチ演算の結果と連続的にマージするように構成されたマージユニット706と、マージの結果を連続的に出力するように構成された出力ユニット708と、第1のバッチ演算の完了に応答して、第2のバッチ演算の結果を第1のバッチ演算の結果と置換するように構成された置換ユニット710とを含んでいてもよい。
一例では、電子装置700は、第1のバッチ演算の実行中、永続的データストアに、データストリームから連続的に受信されているイベントデータを連続的に格納するように構成された格納ユニットと、第1のバッチ演算の完了に応答して、第1の時間よりも遅い第2の時間の時点で永続的データストアにすでに格納されているイベントデータに関して第1のクエリを実行する第3のバッチ演算を開始するように構成された第2の開始ユニットと、第3のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して第2のクエリを連続的に実行するように構成された第2の実行ユニットと、第3のバッチ演算の実行中、第2のクエリの結果を、完了した第1のバッチ演算の結果と連続的にマージするように構成された第2のマージユニットと、第2のクエリと完了した第1のバッチ演算の結果とのマージの結果を連続的に出力するように構成された第2の出力ユニットと、第3のバッチ演算の完了に応答して、第1のバッチ演算の結果を第3のバッチ演算の結果と置換するように構成された第2の置換ユニットとをさらに含む。
一例では、第1のバッチ演算はマップリデュース演算であり、第2のクエリは第1のクエリと同じ演算を行なう。
一例では、電子装置700は、第2のクエリとして連続クエリ言語(CQL)クエリを受信するように構成された受信ユニットと、CQLクエリに基づいて、CQLクエリの演算を行なうマップリデュース・プログラムを自動的に生成するように構成された生成ユニットとをさらに含む。
一例では、電子装置700は、第2のクエリとして連続クエリ言語(CQL)クエリを受信するように構成された第2の受信ユニットと、CQLクエリを自動的に構文解析するように構成された構文解析ユニットと、構文解析に基づいて、CQLクエリを第1の組の演算子へと自動的に分離するように構成された分離ユニットと、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成するように構成された第2の生成ユニットと、ピッグ・ラテン語演算子に基づいて、第1のバッチ演算を行なうマップリデュース・プログラムを自動的に生成するように構成された第3の生成ユニットとをさらに含む。
一例では、電子装置700は、第2のクエリとして連続クエリ言語(CQL)クエリを受信するように構成された第3の受信ユニットと、CQLクエリを自動的に構文解析するように構成された第2の構文解析ユニットと、構文解析に基づいて、CQLクエリを第1の組の演算子へと自動的に分離するように構成された第2の分離ユニットと、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成するように構成された第4の生成ユニットと、第1の組からの演算子、第2の組からの演算子、第1の組からの演算子を表わすノードから第2の組からの演算子を表わすノードまでのエッジ、および第2の組からの演算子を表わすノードから第1の組からの演算子までのエッジを含む、ノードの有向グラフを自動的に生成するように構成された第5の生成ユニットとをさらに含む。
ここに開示されたさまざまなユニットは、ハードウェア、ソフトウェア、またはそれらの組合せで実現または実行されてもよい。それらは、ここに説明された機能を行なうように設計された、汎用シングルまたはマルチチッププロセッサ、デジタル信号プロセッサ(digital signal processor:DSP)、特定用途向け集積回路(application specific integrated circuit:ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array:FPGA)または他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリートハードウェアコンポーネント、またはそれらの任意の組合せで実現または実行されてもよい。汎用プロセッサは、マイクロプロセッサ、もしくは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってもよい。プロセッサはまた、コンピューティング装置の組合せとして、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと併用される1つ以上のマイクロプロセッサ、または他のそのような構成として実現されてもよい。いくつかの実現化例では、ユニットは、所与の機能に特有の回路によって実現されてもよい。
この発明の特定の実施形態を説明してきたが、さまざまな修正、変更、代替的構成、および同等物もこの発明の範囲内に包含される。これらの修正、変更、代替的構成、および同等物は、開示された特徴のあらゆる関連する組合せを含む。この発明の実施形態は、ある特定のデータ処理環境内での演算に制限されず、複数のデータ処理環境内で自由に演算できる。加えて、この発明の実施形態は、ある特定の一連のトランザクションおよびステップを使用して説明されてきたが、この発明の範囲が上述の一連のトランザクションおよびステップに限定されないことは、当業者には明らかなはずである。
また、この発明の実施形態はハードウェアとソフトウェアとのある特定の組合せを用いて説明されてきたが、ハードウェアとソフトウェアとの他の組合せもこの発明の範囲内にあることが認識されるべきである。この発明の実施形態は、ハードウェアのみで、またはソフトウェアのみで、またはそれらの組合せを用いて実現されてもよい。
したがって、明細書および図面は、限定的ではなく例示的な意味であると考えられるべきである。しかしながら、請求項で述べられているようなより広い精神および範囲から逸脱することなく、追加、削減、削除、ならびに他の修正および変更がそれに行なわれてもよいことは、明らかであろう。

Claims (20)

  1. 第1の時間の時点で永続的データストアにすでに格納されているイベントデータに関して第1のクエリを実行する第1のバッチ演算を開始することと、
    前記第1のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して第2のクエリを連続的に実行することと、
    前記第1のバッチ演算の実行中、前記第2のクエリの結果を、完了した第2のバッチ演算の結果と連続的にマージすることと、
    マージの結果を連続的に出力することと、
    前記第1のバッチ演算の完了に応答して、前記第2のバッチ演算の結果を前記第1のバッチ演算の結果と置換することとを含む、コンピュータによって実現される方法。
  2. 前記第1のバッチ演算の実行中、前記永続的データストアに、前記データストリームから連続的に受信されている前記イベントデータを連続的に格納することと、
    前記第1のバッチ演算の完了に応答して、前記第1の時間よりも遅い第2の時間の時点で前記永続的データストアにすでに格納されているイベントデータに関して前記第1のクエリを実行する第3のバッチ演算を開始することと、
    前記第3のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して前記第2のクエリを連続的に実行することと、
    前記第3のバッチ演算の実行中、前記第2のクエリの結果を、完了した前記第1のバッチ演算の結果と連続的にマージすることと、
    前記第2のクエリと完了した前記第1のバッチ演算の結果とのマージの結果を連続的に出力することと、
    前記第3のバッチ演算の完了に応答して、前記第1のバッチ演算の結果を前記第3のバッチ演算の結果と置換することとをさらに含む、請求項1に記載のコンピュータによって実現される方法。
  3. 前記第1のバッチ演算はマップリデュース演算であり、前記第2のクエリは前記第1のクエリと同じ演算を行なう、請求項1または2に記載のコンピュータによって実現される方法。
  4. 前記第2のクエリとして連続クエリ言語(CQL)クエリを受信することと、
    前記CQLクエリに基づいて、前記CQLクエリの演算を行なうマップリデュース・プログラムを自動的に生成することとをさらに含む、請求項1〜3のいずれか1項に記載のコンピュータによって実現される方法。
  5. 前記第2のクエリとして連続クエリ言語(CQL)クエリを受信することと、
    前記CQLクエリを自動的に構文解析することと、
    構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離することと、
    CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成することと、
    前記ピッグ・ラテン語演算子に基づいて、前記第1のバッチ演算を行なうマップリデュース・プログラムを自動的に生成することとをさらに含む、請求項1〜4のいずれか1項に記載のコンピュータによって実現される方法。
  6. 前記第2のクエリとして連続クエリ言語(CQL)クエリを受信することと、
    前記CQLクエリを自動的に構文解析することと、
    構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離することと、
    CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成することと、
    前記第1の組からの演算子、前記第2の組からの演算子、前記第1の組からの演算子を表わすノードから前記第2の組からの演算子を表わすノードまでのエッジ、および前記第2の組からの演算子を表わすノードから前記第1の組からの演算子までのエッジを含む、ノードの有向グラフを自動的に生成することとをさらに含む、請求項1〜5のいずれか1項に記載のコンピュータによって実現される方法。
  7. 前記第2のクエリとして連続クエリ言語(CQL)クエリを受信することと、
    前記CQLクエリを自動的に構文解析することと、
    構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離することと、
    CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成することと、
    前記第1の組からの演算子、および前記第2の組からの演算子を含む、ノードの有向グラフを自動的に生成することと、
    前記有向グラフにおける2つ以上のノードを、前記2つ以上のノードによって行なわれる演算間の類似点に基づいて自動的にマージすることとをさらに含む、請求項1〜6のいずれか1項に記載のコンピュータによって実現される方法。
  8. 1つ以上のプロセッサに演算子を行なわせる特定の命令を格納する、コンピュータ読取可能メモリであって、前記特定の命令は、
    前記1つ以上のプロセッサに、第1の時間の時点で永続的データストアにすでに格納されているイベントデータに関して第1のクエリを実行する第1のバッチ演算を開始させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して第2のクエリを連続的に実行させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、前記第2のクエリの結果を、完了した第2のバッチ演算の結果と連続的にマージさせる命令と、
    前記1つ以上のプロセッサに、マージの結果を連続的に出力させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の完了に応答して、前記第2のバッチ演算の結果を前記第1のバッチ演算の結果と置換させる命令とを含む、コンピュータ読取可能メモリ。
  9. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、前記永続的データストアに、前記データストリームから連続的に受信されている前記イベントデータを連続的に格納させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の完了に応答して、前記第1の時間よりも遅い第2の時間の時点で前記永続的データストアにすでに格納されているイベントデータに関して前記第1のクエリを実行する第3のバッチ演算を開始させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して前記第2のクエリを連続的に実行させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の実行中、前記第2のクエリの結果を、完了した前記第1のバッチ演算の結果と連続的にマージさせる命令と、
    前記1つ以上のプロセッサに、前記第2のクエリと完了した前記第1のバッチ演算の結果とのマージの結果を連続的に出力させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の完了に応答して、前記第1のバッチ演算の結果を前記第3のバッチ演算の結果と置換させる命令とをさらに含む、請求項8に記載のコンピュータ読取可能メモリ。
  10. 前記第1のバッチ演算はマップリデュース演算であり、前記第2のクエリは前記第1のクエリと同じ演算を行なう、請求項8または9に記載のコンピュータ読取可能メモリ。
  11. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリに基づいて、前記CQLクエリの演算を行なうマップリデュース・プログラムを自動的に生成させる命令とをさらに含む、請求項8〜10のいずれか1項に記載のコンピュータ読取可能メモリ。
  12. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリを自動的に構文解析させる命令と、
    前記1つ以上のプロセッサに、構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離させる命令と、
    前記1つ以上のプロセッサに、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記ピッグ・ラテン語演算子に基づいて、前記第1のバッチ演算を行なうマップリデュース・プログラムを自動的に生成させる命令とをさらに含む、請求項8〜11のいずれか1項に記載のコンピュータ読取可能メモリ。
  13. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリを自動的に構文解析させる命令と、
    前記1つ以上のプロセッサに、構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離させる命令と、
    前記1つ以上のプロセッサに、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記第1の組からの演算子、前記第2の組からの演算子、前記第1の組からの演算子を表わすノードから前記第2の組からの演算子を表わすノードまでのエッジ、および前記第2の組からの演算子を表わすノードから前記第1の組からの演算子までのエッジを含む、ノードの有向グラフを自動的に生成させる命令とをさらに含む、請求項8〜12のいずれか1項に記載のコンピュータ読取可能メモリ。
  14. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリを自動的に構文解析させる命令と、
    前記1つ以上のプロセッサに、構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離させる命令と、
    前記1つ以上のプロセッサに、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記第1の組からの演算子、および前記第2の組からの演算子を含む、ノードの有向グラフを自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記有向グラフにおける2つ以上のノードを、前記2つ以上のノードによって行なわれる演算間の類似点に基づいて自動的にマージさせる命令とをさらに含む、請求項8〜13のいずれか1項に記載のコンピュータ読取可能メモリ。
  15. システムであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに演算子を行なわせる特定の命令を格納する、コンピュータ読取可能メモリとを含み、前記特定の命令は、
    前記1つ以上のプロセッサに、第1の時間の時点で永続的データストアにすでに格納されているイベントデータに関して第1のクエリを実行する第1のバッチ演算を開始させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して第2のクエリを連続的に実行させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、前記第2のクエリの結果を、完了した第2のバッチ演算の結果と連続的にマージさせる命令と、
    前記1つ以上のプロセッサに、マージの結果を連続的に出力させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の完了に応答して、前記第2のバッチ演算の結果を前記第1のバッチ演算の結果と置換させる命令とを含む、システム。
  16. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の実行中、前記永続的データストアに、前記データストリームから連続的に受信されている前記イベントデータを連続的に格納させる命令と、
    前記1つ以上のプロセッサに、前記第1のバッチ演算の完了に応答して、前記第1の時間よりも遅い第2の時間の時点で前記永続的データストアにすでに格納されているイベントデータに関して前記第1のクエリを実行する第3のバッチ演算を開始させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の実行中、データストリームから連続的に受信されているイベントデータに関して前記第2のクエリを連続的に実行させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の実行中、前記第2のクエリの結果を、完了した前記第1のバッチ演算の結果と連続的にマージさせる命令と、
    前記1つ以上のプロセッサに、前記第2のクエリと完了した前記第1のバッチ演算の結果とのマージの結果を連続的に出力させる命令と、
    前記1つ以上のプロセッサに、前記第3のバッチ演算の完了に応答して、前記第1のバッチ演算の結果を前記第3のバッチ演算の結果と置換させる命令とをさらに含む、請求項15に記載のシステム。
  17. 前記第1のバッチ演算はマップリデュース演算であり、前記第2のクエリは前記第1のクエリと同じ演算を行なう、請求項15または16に記載のシステム。
  18. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリに基づいて、前記CQLクエリの演算を行なうマップリデュース・プログラムを自動的に生成させる命令とをさらに含む、請求項15〜17のいずれか1項に記載のシステム。
  19. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリを自動的に構文解析させる命令と、
    前記1つ以上のプロセッサに、構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離させる命令と、
    前記1つ以上のプロセッサに、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記ピッグ・ラテン語演算子に基づいて、前記第1のバッチ演算を行なうマップリデュース・プログラムを自動的に生成させる命令とをさらに含む、請求項15〜18のいずれか1項に記載のシステム。
  20. 前記特定の命令は、
    前記1つ以上のプロセッサに、前記第2のクエリとして連続クエリ言語(CQL)クエリを受信させる命令と、
    前記1つ以上のプロセッサに、前記CQLクエリを自動的に構文解析させる命令と、
    前記1つ以上のプロセッサに、構文解析に基づいて、前記CQLクエリを第1の組の演算子へと自動的に分離させる命令と、
    前記1つ以上のプロセッサに、CQL演算子とピッグ・ラテン語演算子との間の特定されたマッピングに基づいて、第1の組のCQL演算子によって行なわれる演算子を行なう第2の組のピッグ・ラテン語演算子を自動的に生成させる命令と、
    前記1つ以上のプロセッサに、前記第1の組からの演算子、前記第2の組からの演算子、前記第1の組からの演算子を表わすノードから前記第2の組からの演算子を表わすノードまでのエッジ、および前記第2の組からの演算子を表わすノードから前記第1の組からの演算子までのエッジを含む、ノードの有向グラフを自動的に生成させる命令とをさらに含む、請求項15〜19のいずれか1項に記載のシステム。
JP2015545815A 2012-12-05 2013-12-04 イベント処理とマップリデュースとの統合 Active JP6250061B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261733844P 2012-12-05 2012-12-05
US61/733,844 2012-12-05
US201361806744P 2013-03-29 2013-03-29
US61/806,744 2013-03-29
US14/079,538 US10956422B2 (en) 2012-12-05 2013-11-13 Integrating event processing with map-reduce
US14/079,538 2013-11-13
PCT/US2013/073086 WO2014089190A1 (en) 2012-12-05 2013-12-04 Integrating event processing with map-reduce

Publications (3)

Publication Number Publication Date
JP2016504679A true JP2016504679A (ja) 2016-02-12
JP2016504679A5 JP2016504679A5 (ja) 2017-01-19
JP6250061B2 JP6250061B2 (ja) 2017-12-20

Family

ID=50826532

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015545815A Active JP6250061B2 (ja) 2012-12-05 2013-12-04 イベント処理とマップリデュースとの統合

Country Status (5)

Country Link
US (1) US10956422B2 (ja)
EP (1) EP2929467B1 (ja)
JP (1) JP6250061B2 (ja)
CN (1) CN104838377B (ja)
WO (1) WO2014089190A1 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9535761B2 (en) 2011-05-13 2017-01-03 Oracle International Corporation Tracking large numbers of moving objects in an event processing system
US9703836B2 (en) 2012-09-28 2017-07-11 Oracle International Corporation Tactical query to continuous query conversion
US9886486B2 (en) 2014-09-24 2018-02-06 Oracle International Corporation Enriching events with dynamically typed big data for event processing
US9934279B2 (en) 2013-12-05 2018-04-03 Oracle International Corporation Pattern matching across multiple input data streams
US9953059B2 (en) 2012-09-28 2018-04-24 Oracle International Corporation Generation of archiver queries for continuous queries over archived relations
KR101856454B1 (ko) * 2017-03-06 2018-05-10 주식회사 티맥스데이터 분산처리를 위한 컴퓨팅 장치
US9972103B2 (en) 2015-07-24 2018-05-15 Oracle International Corporation Visually exploring and analyzing event streams
US10120907B2 (en) 2014-09-24 2018-11-06 Oracle International Corporation Scaling event processing using distributed flows and map-reduce operations
JP2019531539A (ja) * 2016-09-06 2019-10-31 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 分散コンピューティングタスクを実行するための方法及び装置
US10956422B2 (en) 2012-12-05 2021-03-23 Oracle International Corporation Integrating event processing with map-reduce
JP2022058578A (ja) * 2016-09-15 2022-04-12 オラクル・インターナショナル・コーポレイション 分散イベント処理システムにおけるデータシリアライズ

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9430494B2 (en) 2009-12-28 2016-08-30 Oracle International Corporation Spatial data cartridge for event processing systems
US9305057B2 (en) 2009-12-28 2016-04-05 Oracle International Corporation Extensible indexing framework using data cartridges
US8713049B2 (en) 2010-09-17 2014-04-29 Oracle International Corporation Support for a parameterized query/view in complex event processing
US8990416B2 (en) 2011-05-06 2015-03-24 Oracle International Corporation Support for a new insert stream (ISTREAM) operation in complex event processing (CEP)
US9329975B2 (en) 2011-07-07 2016-05-03 Oracle International Corporation Continuous query language (CQL) debugger in complex event processing (CEP)
US10298444B2 (en) 2013-01-15 2019-05-21 Oracle International Corporation Variable duration windows on continuous data streams
US9098587B2 (en) 2013-01-15 2015-08-04 Oracle International Corporation Variable duration non-event pattern matching
US9390135B2 (en) 2013-02-19 2016-07-12 Oracle International Corporation Executing continuous event processing (CEP) queries in parallel
US9047249B2 (en) 2013-02-19 2015-06-02 Oracle International Corporation Handling faults in a continuous event processing (CEP) system
US9418113B2 (en) 2013-05-30 2016-08-16 Oracle International Corporation Value based windows on relations in continuous data streams
US9448851B2 (en) * 2013-06-19 2016-09-20 International Business Machines Corporation Smarter big data processing using collaborative map reduce frameworks
US9614740B2 (en) * 2014-05-13 2017-04-04 International Business Machines Corporation Multifusion of a stream operator in a streaming application
US9244978B2 (en) 2014-06-11 2016-01-26 Oracle International Corporation Custom partitioning of a data stream
US9712645B2 (en) 2014-06-26 2017-07-18 Oracle International Corporation Embedded event processing
US9767170B2 (en) * 2014-10-16 2017-09-19 International Business Machines Corporation Storage area network zone optimization
US9672082B2 (en) 2015-10-21 2017-06-06 Oracle International Corporation Guaranteeing the event order for multi-stage processing in distributed systems
US10514952B2 (en) * 2016-09-15 2019-12-24 Oracle International Corporation Processing timestamps and heartbeat events for automatic time progression
JP7005600B2 (ja) * 2016-09-15 2022-01-21 オラクル・インターナショナル・コーポレイション マイクロバッチストリーミングのための複合イベント処理
WO2018169429A1 (en) 2017-03-17 2018-09-20 Oracle International Corporation Framework for the deployment of event-based applications
WO2018169430A1 (en) 2017-03-17 2018-09-20 Oracle International Corporation Integrating logic in micro batch based event processing systems
US10120926B1 (en) * 2018-05-31 2018-11-06 Capital One Services, Llc Attribute sharing platform for data processing systems
EP4077675A1 (en) 2019-12-17 2022-10-26 Sigma-Aldrich Co. LLC Genome editing in bacteroides
US11429458B2 (en) * 2020-06-10 2022-08-30 Expedia, Inc. Architecture for large payload handling in event pipeline
US11947538B2 (en) * 2022-05-04 2024-04-02 International Business Machines Corporation Query processing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633867B1 (en) * 2000-04-05 2003-10-14 International Business Machines Corporation System and method for providing a session query within the context of a dynamic search result set
JP2006338432A (ja) * 2005-06-03 2006-12-14 Hitachi Ltd ストリームデータ処理システムのクエリ処理方法
JP2010108073A (ja) * 2008-10-28 2010-05-13 Hitachi Ltd ストリームデータ処理方法、及びシステム
US20110302164A1 (en) * 2010-05-05 2011-12-08 Saileshwar Krishnamurthy Order-Independent Stream Query Processing

Family Cites Families (502)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5051947A (en) 1985-12-10 1991-09-24 Trw Inc. High-speed single-pass textual search processor for locating exact and inexact matches of a search pattern in a textual stream
US4996687A (en) 1988-10-11 1991-02-26 Honeywell Inc. Fault recovery mechanism, transparent to digital system function
US5339392A (en) 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
US5761493A (en) 1990-04-30 1998-06-02 Texas Instruments Incorporated Apparatus and method for adding an associative query capability to a programming language
US5495600A (en) 1992-06-03 1996-02-27 Xerox Corporation Conversion of queries to monotonically increasing incremental form to continuously query a append only database
US5918225A (en) 1993-04-16 1999-06-29 Sybase, Inc. SQL-based database system with improved indexing methodology
EP0687089B1 (en) 1994-06-10 2003-05-28 Hewlett-Packard Company, A Delaware Corporation Event-processing system and method of constructing such a system
US5664172A (en) 1994-07-19 1997-09-02 Oracle Corporation Range-based query optimizer
EP0702294A3 (en) 1994-09-13 1997-05-02 Sun Microsystems Inc Method and device for diagnosing lexical errors
US6397262B1 (en) 1994-10-14 2002-05-28 Qnx Software Systems, Ltd. Window kernel
US5706494A (en) 1995-02-10 1998-01-06 International Business Machines Corporation System and method for constraint checking bulk data in a database
US5829006A (en) 1995-06-06 1998-10-27 International Business Machines Corporation System and method for efficient relational query generation and tuple-to-object translation in an object-relational gateway supporting class inheritance
US6158045A (en) 1995-11-13 2000-12-05 Object Technology Licensing Corporation Portable debugging services utilizing a client debugger object and a server debugger object with flexible addressing support
US5913214A (en) 1996-05-30 1999-06-15 Massachusetts Inst Technology Data extraction from world wide web pages
US5802523A (en) 1996-06-21 1998-09-01 Oracle Corporation Method and apparatus for reducing the memory required to store bind variable descriptors in a database
US5893104A (en) 1996-07-09 1999-04-06 Oracle Corporation Method and system for processing queries in a database system using index structures that are not native to the database system
US5920716A (en) 1996-11-26 1999-07-06 Hewlett-Packard Company Compiling a predicated code with direct analysis of the predicated code
US5937195A (en) 1996-11-27 1999-08-10 Hewlett-Packard Co Global control flow treatment of predicated code
US5937401A (en) 1996-11-27 1999-08-10 Sybase, Inc. Database system with improved methods for filtering duplicates from a tuple stream
US5857182A (en) 1997-01-21 1999-01-05 International Business Machines Corporation Database management system, method and program for supporting the mutation of a composite object without read/write and write/write conflicts
US6212673B1 (en) 1997-03-31 2001-04-03 International Business Machines Corporation Component-neutral builder interface
US6108666A (en) 1997-06-12 2000-08-22 International Business Machines Corporation Method and apparatus for pattern discovery in 1-dimensional event streams
US6041344A (en) 1997-06-23 2000-03-21 Oracle Corporation Apparatus and method for passing statements to foreign databases by using a virtual package
US5822750A (en) 1997-06-30 1998-10-13 International Business Machines Corporation Optimization of correlated SQL queries in a relational database management system
US6081801A (en) 1997-06-30 2000-06-27 International Business Machines Corporation Shared nothing parallel execution of procedural constructs in SQL
US6112198A (en) 1997-06-30 2000-08-29 International Business Machines Corporation Optimization of data repartitioning during parallel query optimization
US6278994B1 (en) 1997-07-10 2001-08-21 International Business Machines Corporation Fully integrated architecture for user-defined search
US6006220A (en) 1997-09-30 1999-12-21 International Business Machines Corporation Determining the optimal access path for a query at execution time using an actual value for each variable in a query for estimating a filter factor
US6006235A (en) 1997-11-26 1999-12-21 International Business Machines Corporation Method and apparatus for invoking a stored procedure or a user defined interpreted language function in a database management system
US6389436B1 (en) 1997-12-15 2002-05-14 International Business Machines Corporation Enhanced hypertext categorization using hyperlinks
US6092065A (en) 1998-02-13 2000-07-18 International Business Machines Corporation Method and apparatus for discovery, clustering and classification of patterns in 1-dimensional event streams
GB2335514B (en) 1998-03-18 2003-01-22 Ibm A method and component for serialisation of images
US6341281B1 (en) 1998-04-14 2002-01-22 Sybase, Inc. Database system with methods for optimizing performance of correlated subqueries by reusing invariant results of operator tree
US6011916A (en) 1998-05-12 2000-01-04 International Business Machines Corp. Java I/O toolkit for applications and applets
GB9812635D0 (en) 1998-06-11 1998-08-12 Olivetti Telemedia Spa Location system
US6477571B1 (en) 1998-08-11 2002-11-05 Computer Associates Think, Inc. Transaction recognition and prediction using regular expressions
US6263332B1 (en) 1998-08-14 2001-07-17 Vignette Corporation System and method for query processing of structured documents
US6367034B1 (en) 1998-09-21 2002-04-02 Microsoft Corporation Using query language for event filtering and aggregation
US6988271B2 (en) 1998-10-02 2006-01-17 Microsoft Corporation Heavyweight and lightweight instrumentation
US6546381B1 (en) 1998-11-02 2003-04-08 International Business Machines Corporation Query optimization system and method
US6763353B2 (en) 1998-12-07 2004-07-13 Vitria Technology, Inc. Real time business process analysis method and apparatus
US6108659A (en) 1998-12-22 2000-08-22 Computer Associates Think, Inc. Method and apparatus for executing stored code objects in a database
US6370537B1 (en) 1999-01-14 2002-04-09 Altoweb, Inc. System and method for the manipulation and display of structured data
US6427123B1 (en) 1999-02-18 2002-07-30 Oracle Corporation Hierarchical indexing for accessing hierarchically organized information in a relational system
US6438559B1 (en) 1999-04-02 2002-08-20 Sybase, Inc. System and method for improved serialization of Java objects
US7080062B1 (en) 1999-05-18 2006-07-18 International Business Machines Corporation Optimizing database queries using query execution plans derived from automatic summary table determining cost based queries
US6339772B1 (en) 1999-07-06 2002-01-15 Compaq Computer Corporation System and method for performing database operations on a continuous stream of tuples
US6453314B1 (en) 1999-07-30 2002-09-17 International Business Machines Corporation System and method for selective incremental deferred constraint processing after bulk loading data
JP2001060161A (ja) 1999-08-24 2001-03-06 Nec Ic Microcomput Syst Ltd デバッグ装置、方法及び記録媒体
US7457279B1 (en) 1999-09-10 2008-11-25 Vertical Communications Acquisition Corp. Method, system, and computer program product for managing routing servers and services
AU7123300A (en) 1999-09-10 2001-04-10 William C. Rodgers Web-based system to facilitate purchase, pick-up, and delivery of, and escrow and payment for, merchandise
US6766330B1 (en) 1999-10-19 2004-07-20 International Business Machines Corporation Universal output constructor for XML queries universal output constructor for XML queries
US6721727B2 (en) 1999-12-02 2004-04-13 International Business Machines Corporation XML documents stored as column data
US20020116371A1 (en) 1999-12-06 2002-08-22 David Dodds System and method for the storage, indexing and retrieval of XML documents using relation databases
US6418448B1 (en) 1999-12-06 2002-07-09 Shyam Sundar Sarkar Method and apparatus for processing markup language specifications for data and metadata used inside multiple related internet documents to navigate, query and manipulate information from a plurality of object relational databases over the web
JP3937380B2 (ja) 1999-12-14 2007-06-27 富士通株式会社 パスサーチ回路
US6615203B1 (en) 1999-12-17 2003-09-02 International Business Machines Corporation Method, computer program product, and system for pushdown analysis during query plan generation
US6594651B2 (en) 1999-12-22 2003-07-15 Ncr Corporation Method and apparatus for parallel execution of SQL-from within user defined functions
US6507834B1 (en) 1999-12-22 2003-01-14 Ncr Corporation Method and apparatus for parallel execution of SQL from stored procedures
US6353821B1 (en) 1999-12-23 2002-03-05 Bull Hn Information Systems Inc. Method and data processing system for detecting patterns in SQL to allow optimized use of multi-column indexes
WO2001052090A2 (en) 2000-01-14 2001-07-19 Saba Software, Inc. Method and apparatus for a web content platform
US20010047372A1 (en) 2000-02-11 2001-11-29 Alexander Gorelik Nested relational data model
US6996557B1 (en) 2000-02-15 2006-02-07 International Business Machines Corporation Method of optimizing SQL queries where a predicate matches nullable operands
US7072896B2 (en) 2000-02-16 2006-07-04 Verizon Laboratories Inc. System and method for automatic loading of an XML document defined by a document-type definition into a relational database including the generation of a relational schema therefor
AU2001239998A1 (en) 2000-02-28 2001-09-12 Fibercycle Networks, Inc. System and method for high speed string matching
US20020029207A1 (en) 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
US6449620B1 (en) 2000-03-02 2002-09-10 Nimble Technology, Inc. Method and apparatus for generating information pages using semi-structured data stored in a structured manner
US7823066B1 (en) 2000-03-03 2010-10-26 Tibco Software Inc. Intelligent console for content-based interactivity
US6751619B1 (en) 2000-03-15 2004-06-15 Microsoft Corporation Methods and apparatus for tuple management in data processing system
US20020038217A1 (en) 2000-04-07 2002-03-28 Alan Young System and method for integrated data analysis and management
US6523102B1 (en) 2000-04-14 2003-02-18 Interactive Silicon, Inc. Parallel compression/decompression system and method for implementation of in-memory compressed cache improving storage density and access speed for industry standard memory subsystems and in-line memory modules
US7020696B1 (en) 2000-05-20 2006-03-28 Ciena Corp. Distributed user management information in telecommunications networks
EP1311970A4 (en) 2000-05-24 2007-07-25 Haley Systems Inc SYSTEM FOR CORPORATE KNOWLEDGE MANAGEMENT AND AUTOMATION
US7076647B2 (en) 2000-06-09 2006-07-11 Hewlett-Packard Development Company, L.P. Dynamic kernel tunables
CA2311884A1 (en) 2000-06-16 2001-12-16 Cognos Incorporated Method of managing slowly changing dimensions
US6578032B1 (en) 2000-06-28 2003-06-10 Microsoft Corporation Method and system for performing phrase/word clustering and cluster merging
US7139844B2 (en) 2000-08-04 2006-11-21 Goldman Sachs & Co. Method and system for processing financial data objects carried on broadcast data streams and delivering information to subscribing clients
US7958025B2 (en) 2000-08-04 2011-06-07 Goldman Sachs & Co. Method and system for processing raw financial data streams to produce and distribute structured and validated product offering objects
US6708186B1 (en) 2000-08-14 2004-03-16 Oracle International Corporation Aggregating and manipulating dictionary metadata in a database system
US7095744B2 (en) 2000-11-22 2006-08-22 Dune Networks Method and system for switching variable sized packets
US20020156756A1 (en) 2000-12-06 2002-10-24 Biosentients, Inc. Intelligent molecular object data structure and method for application in heterogeneous data environments with high data density and dynamic application needs
US6925631B2 (en) 2000-12-08 2005-08-02 Hewlett-Packard Development Company, L.P. Method, computer system and computer program product for processing extensible markup language streams
US7062749B2 (en) 2000-12-15 2006-06-13 Promenix, Inc. Measuring, monitoring and tracking enterprise communications and processes
JP4259864B2 (ja) 2000-12-15 2009-04-30 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー エンティテイを検索する方法
US6954791B2 (en) 2001-01-23 2005-10-11 Intel Corporation Time-based network connections
US7139977B1 (en) 2001-01-24 2006-11-21 Oracle International Corporation System and method for producing a virtual online book
US8307197B2 (en) 2001-02-14 2012-11-06 University Of North Carolina At Charlotte Short-circuit evaluation of Boolean expression by rolling up sub-expression result in registers storing default value
US7577916B2 (en) 2001-02-21 2009-08-18 Fuji Xerox Co., Ltd. Method and apparatus for management and representation of dynamic context
US7185232B1 (en) 2001-02-28 2007-02-27 Cenzic, Inc. Fault injection methods and apparatus
WO2002071260A1 (en) 2001-03-01 2002-09-12 Aalborg Universitet Adaptable query optimization and evaluation in temporal middleware
US6542911B2 (en) 2001-03-01 2003-04-01 Sun Microsystems, Inc. Method and apparatus for freeing memory from an extensible markup language document object model tree active in an application cache
GB2377038A (en) 2001-04-10 2002-12-31 I2 Ltd Method for identifying patterns in sequential event streams
US6904019B2 (en) 2001-04-13 2005-06-07 Agilent Technologies, Inc. Identifying a pattern in a data stream
US6748386B1 (en) 2001-04-24 2004-06-08 Nec Corporation System and method for automated construction of URL, cookie, and database query mapping
US6785677B1 (en) 2001-05-02 2004-08-31 Unisys Corporation Method for execution of query to search strings of characters that match pattern with a target string utilizing bit vector
US6850925B2 (en) 2001-05-15 2005-02-01 Microsoft Corporation Query optimization by sub-plan memoization
US7540011B2 (en) 2001-06-11 2009-05-26 Arrowsight, Inc. Caching graphical interface for displaying video and ancillary data from a saved video
US7757225B2 (en) 2001-06-29 2010-07-13 Microsoft Corporation Linktime recognition of alternative implementations of programmed functionality
US8332502B1 (en) 2001-08-15 2012-12-11 Metavante Corporation Business to business network management event detection and response system and method
AU2002220130A1 (en) 2001-09-12 2003-03-24 Raqia Networks, Inc. High speed data stream pattern recognition
US7203927B2 (en) 2001-09-20 2007-04-10 International Business Machines Corporation SQL debugging using XML dataflows
AU2002334721B2 (en) 2001-09-28 2008-10-23 Oracle International Corporation An index structure to access hierarchical data in a relational database system
US20030065655A1 (en) 2001-09-28 2003-04-03 International Business Machines Corporation Method and apparatus for detecting query-driven topical events using textual phrases on foils as indication of topic
US6915290B2 (en) 2001-12-11 2005-07-05 International Business Machines Corporation Database query optimization apparatus and method that represents queries as graphs
US7475058B2 (en) 2001-12-14 2009-01-06 Microsoft Corporation Method and system for providing a distributed querying and filtering system
US20030135304A1 (en) 2002-01-11 2003-07-17 Brian Sroub System and method for managing transportation assets
US7117200B2 (en) 2002-01-11 2006-10-03 International Business Machines Corporation Synthesizing information-bearing content from multiple channels
WO2003060771A1 (en) 2002-01-14 2003-07-24 Jerzy Lewak Identifier vocabulary data access method and system
US7225188B1 (en) 2002-02-13 2007-05-29 Cisco Technology, Inc. System and method for performing regular expression matching with high parallelism
US6985904B1 (en) 2002-02-28 2006-01-10 Oracle International Corporation Systems and methods for sharing of execution plans for similar database statements
US7567953B2 (en) 2002-03-01 2009-07-28 Business Objects Americas System and method for retrieving and organizing information from disparate computer network information sources
CA2374271A1 (en) 2002-03-01 2003-09-01 Ibm Canada Limited-Ibm Canada Limitee Redundant join elimination and sub-query elimination using subsumption
US7107285B2 (en) 2002-03-16 2006-09-12 Questerra Corporation Method, system, and program for an improved enterprise spatial system
US20080010241A1 (en) 2002-04-02 2008-01-10 Mcgoveran David O Computer-implemented method for managing through symbolic abstraction of a membership expression multiple logical representations and storage structures
US20040024773A1 (en) 2002-04-29 2004-02-05 Kilian Stoffel Sequence miner
EP1361526A1 (en) 2002-05-08 2003-11-12 Accenture Global Services GmbH Electronic data processing system and method of using an electronic processing system for automatically determining a risk indicator value
US7457810B2 (en) 2002-05-10 2008-11-25 International Business Machines Corporation Querying markup language data sources using a relational query processor
US20030236766A1 (en) 2002-05-14 2003-12-25 Zenon Fortuna Identifying occurrences of selected events in a system
US7093023B2 (en) 2002-05-21 2006-08-15 Washington University Methods, systems, and devices using reprogrammable hardware for high-speed processing of streaming data to find a redefinable pattern and respond thereto
WO2003104990A1 (en) 2002-06-05 2003-12-18 Sap Aktiengesellschaft Apparatus and method for integrating variable subsidiary information with main office information in an enterprise system
AU2003263987A1 (en) 2002-08-05 2004-02-23 John Campbell System of finite state machines
US7840550B2 (en) 2002-08-13 2010-11-23 International Business Machines Corporation System and method for monitoring database queries
US7451143B2 (en) 2002-08-28 2008-11-11 Cisco Technology, Inc. Programmable rule processing apparatus for conducting high speed contextual searches and characterizations of patterns in data
US8165993B2 (en) 2002-09-06 2012-04-24 Oracle International Corporation Business intelligence system with interface that provides for immediate user action
US20040060054A1 (en) 2002-09-20 2004-03-25 International Business Machines Corporation Composition service for autonomic computing
US7120645B2 (en) 2002-09-27 2006-10-10 Oracle International Corporation Techniques for rewriting XML queries directed to relational database constructs
US7043476B2 (en) 2002-10-11 2006-05-09 International Business Machines Corporation Method and apparatus for data mining to discover associations and covariances associated with data
FR2846181B1 (fr) 2002-10-16 2005-09-02 Canon Kk Procede et dispositif de selection de donnees dans un reseau de communication
US7213040B1 (en) 2002-10-29 2007-05-01 Novell, Inc. Apparatus for policy based storage of file data and meta-data changes over time
US7653645B1 (en) 2002-10-29 2010-01-26 Novell, Inc. Multi-epoch method for saving and exporting file system events
US20040088404A1 (en) 2002-11-01 2004-05-06 Vikas Aggarwal Administering users in a fault and performance monitoring system using distributed data gathering and storage
US7134143B2 (en) 2003-02-04 2006-11-07 Stellenberg Gerald S Method and apparatus for data packet pattern matching
GB0228447D0 (en) 2002-12-06 2003-01-08 Nicholls Charles M System for detecting and interpreting transactions events or changes in computer systems
US7051034B1 (en) 2002-12-18 2006-05-23 Oracle International Corporation Dynamic optimization for processing a restartable sub-tree of a query execution plan
US20050096124A1 (en) 2003-01-21 2005-05-05 Asip Holdings, Inc. Parimutuel wagering system with opaque transactions
US7954109B1 (en) 2003-01-24 2011-05-31 Jds Uniphase Corporation Systems and methods for time based sorting and display of captured data events in a multi-protocol communications system
US7437675B2 (en) 2003-02-03 2008-10-14 Hewlett-Packard Development Company, L.P. System and method for monitoring event based systems
US7634501B2 (en) 2003-02-05 2009-12-15 Next Generation Software Method and apparatus for mediated cooperation
WO2004072797A2 (en) 2003-02-07 2004-08-26 Safenet, Inc. System and method for determining the start of a match of a regular expression
US7062507B2 (en) 2003-02-24 2006-06-13 The Boeing Company Indexing profile for efficient and scalable XML based publish and subscribe system
US7185315B2 (en) 2003-02-25 2007-02-27 Sheet Dynamics, Ltd. Graphical feedback of disparities in target designs in graphical development environment
US7693810B2 (en) 2003-03-04 2010-04-06 Mantas, Inc. Method and system for advanced scenario based alert generation and processing
US7324108B2 (en) 2003-03-12 2008-01-29 International Business Machines Corporation Monitoring events in a computer network
JP2004280283A (ja) 2003-03-13 2004-10-07 Hitachi Ltd 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
US7392239B2 (en) 2003-04-14 2008-06-24 International Business Machines Corporation System and method for querying XML streams
US6986019B1 (en) 2003-04-21 2006-01-10 Maxtor Corporation Method and apparatus for detection and management of data streams
US20040220896A1 (en) 2003-04-30 2004-11-04 International Business Machines Corporation System and method for optimizing queries on views defined by conditional expressions having mutually exclusive conditions
US7386568B2 (en) 2003-05-01 2008-06-10 Oracle International Corporation Techniques for partial rewrite of XPath queries in a relational database
US7103611B2 (en) 2003-05-01 2006-09-05 Oracle International Corporation Techniques for retaining hierarchical information in mapping between XML documents and relational data
US6836778B2 (en) 2003-05-01 2004-12-28 Oracle International Corporation Techniques for changing XML content in a relational database
US7222123B2 (en) 2003-05-28 2007-05-22 Oracle International Corporation Technique for using a current lookup for performing multiple merge operations using source data that is modified in between the merge operations
US7546284B1 (en) 2003-06-11 2009-06-09 Blue Titan Software, Inc. Virtual message persistence service
US7146352B2 (en) 2003-06-23 2006-12-05 Microsoft Corporation Query optimizer system and method
US7519577B2 (en) 2003-06-23 2009-04-14 Microsoft Corporation Query intermediate language method and system
CA2433750A1 (en) 2003-06-27 2004-12-27 Ibm Canada Limited - Ibm Canada Limitee Automatic collection of trace detail and history data
US20050010896A1 (en) 2003-07-07 2005-01-13 International Business Machines Corporation Universal format transformation between relational database management systems and extensible markup language using XML relational transformation
US7430549B2 (en) 2003-07-07 2008-09-30 Netezza Corporaton Optimized SQL code generation
WO2005010727A2 (en) 2003-07-23 2005-02-03 Praedea Solutions, Inc. Extracting data from semi-structured text documents
US20080077780A1 (en) 2003-07-25 2008-03-27 Zingher Arthur R System and Method for Software Debugging
US7873645B2 (en) 2003-09-05 2011-01-18 Oracle International Corporation Method and mechanism for handling arbitrarily-sized XML in SQL operator tree
US20050071217A1 (en) 2003-09-30 2005-03-31 General Electric Company Method, system and computer product for analyzing business risk using event information extracted from natural language sources
US20050108368A1 (en) 2003-10-30 2005-05-19 Aditya Mohan Method and apparatus for representing data available in a peer-to-peer network using bloom-filters
US20050097128A1 (en) 2003-10-31 2005-05-05 Ryan Joseph D. Method for scalable, fast normalization of XML documents for insertion of data into a relational database
US7167848B2 (en) 2003-11-07 2007-01-23 Microsoft Corporation Generating a hierarchical plain-text execution plan from a database query
GB0327589D0 (en) 2003-11-27 2003-12-31 Ibm Searching in a computer network
US7047252B2 (en) 2003-12-02 2006-05-16 Oracle International Corporation Complex computation across heterogenous computer systems
US7702676B2 (en) 2006-12-29 2010-04-20 Teradata Us, Inc. Parallel virtual optimization
US7508985B2 (en) 2003-12-10 2009-03-24 International Business Machines Corporation Pattern-matching system
US7308561B2 (en) 2003-12-12 2007-12-11 Alcatel Lucent Fast, scalable pattern-matching engine
US7440461B2 (en) 2003-12-23 2008-10-21 Intel Corporation Methods and apparatus for detecting patterns in a data stream
US7672964B1 (en) 2003-12-31 2010-03-02 International Business Machines Corporation Method and system for dynamically initializing a view for a streaming data base system
US8775412B2 (en) 2004-01-08 2014-07-08 International Business Machines Corporation Method and system for a self-healing query access plan
US7526804B2 (en) 2004-02-02 2009-04-28 Microsoft Corporation Hardware assist for pattern matches
US7376656B2 (en) 2004-02-10 2008-05-20 Microsoft Corporation System and method for providing user defined aggregates in a database system
US7194451B2 (en) 2004-02-26 2007-03-20 Microsoft Corporation Database monitoring system
US20050204340A1 (en) 2004-03-10 2005-09-15 Ruminer Michael D. Attribute-based automated business rule identifier and methods of implementing same
US7218325B1 (en) 2004-03-31 2007-05-15 Trading Technologies International, Inc. Graphical display with integrated recent period zoom and historical period context data
US7398265B2 (en) 2004-04-09 2008-07-08 Oracle International Corporation Efficient query processing of XML data using XML index
US20050273352A1 (en) 2004-05-07 2005-12-08 Lombardi Software, Inc. Business method for continuous process improvement
US20050273450A1 (en) 2004-05-21 2005-12-08 Mcmillen Robert J Regular expression acceleration engine and processing model
US7552365B1 (en) 2004-05-26 2009-06-23 Amazon Technologies, Inc. Web site system with automated processes for detecting failure events and for selecting failure events for which to request user feedback
US7516121B2 (en) 2004-06-23 2009-04-07 Oracle International Corporation Efficient evaluation of queries using translation
US7599924B2 (en) 2004-06-25 2009-10-06 International Business Machines Corporation Relationship management in a data abstraction model
US7370273B2 (en) 2004-06-30 2008-05-06 International Business Machines Corporation System and method for creating dynamic folder hierarchies
US20060007308A1 (en) 2004-07-12 2006-01-12 Ide Curtis E Environmentally aware, intelligent surveillance device
US7668806B2 (en) 2004-08-05 2010-02-23 Oracle International Corporation Processing queries against one or more markup language sources
US20060047696A1 (en) 2004-08-24 2006-03-02 Microsoft Corporation Partially materialized views
US7263464B1 (en) 2004-08-27 2007-08-28 Tonic Software, Inc. System and method for monitoring events in a computing environment
GB0420097D0 (en) 2004-09-10 2004-10-13 Cotares Ltd Apparatus for and method of providing data to an external application
US20060064438A1 (en) 2004-09-17 2006-03-23 International Business Machines Corporation Methods and apparartus for monitoring abnormalities in data stream
US7668856B2 (en) 2004-09-30 2010-02-23 Alcatel-Lucent Usa Inc. Method for distinct count estimation over joins of continuous update stream
US7310638B1 (en) 2004-10-06 2007-12-18 Metra Tech Method and apparatus for efficiently processing queries in a streaming transaction processing system
US7519962B2 (en) 2004-10-07 2009-04-14 Thomson Financial Llc Command script parsing using local and extended storage for command lookup
US20080077570A1 (en) 2004-10-25 2008-03-27 Infovell, Inc. Full Text Query and Search Systems and Method of Use
WO2006047654A2 (en) 2004-10-25 2006-05-04 Yuanhua Tang Full text query and search systems and methods of use
US7403945B2 (en) 2004-11-01 2008-07-22 Sybase, Inc. Distributed database system providing data and space management methodology
US7533087B2 (en) 2004-11-05 2009-05-12 International Business Machines Corporation Method, system, and program for executing a query having a union all operator and data modifying operations
US20060100969A1 (en) 2004-11-08 2006-05-11 Min Wang Learning-based method for estimating cost and statistics of complex operators in continuous queries
US7493304B2 (en) 2004-11-12 2009-02-17 International Business Machines Corporation Adjusting an amount of data logged for a query based on a change to an access plan
US7526461B2 (en) 2004-11-17 2009-04-28 Gm Global Technology Operations, Inc. System and method for temporal data mining
JP2006155404A (ja) 2004-11-30 2006-06-15 Toshiba Corp 時間情報抽出装置、時間情報抽出方法、及び時間情報抽出プログラム
US7383253B1 (en) 2004-12-17 2008-06-03 Coral 8, Inc. Publish and subscribe capable continuous query processor for real-time data streams
US20060155719A1 (en) 2005-01-10 2006-07-13 International Business Machines Corporation Complex event discovery in event databases
EP1684192A1 (en) 2005-01-25 2006-07-26 Ontoprise GmbH Integration platform for heterogeneous information sources
US20060166704A1 (en) 2005-01-26 2006-07-27 Benco David S Method for alerting a subscriber of an emergency call request
WO2006081474A2 (en) 2005-01-27 2006-08-03 Intel Corp. Multi-path simultaneous xpath evaluation over data streams
US8396886B1 (en) 2005-02-03 2013-03-12 Sybase Inc. Continuous processing language for real-time data streams
JP5188817B2 (ja) 2005-02-22 2013-04-24 コネクティフ ソリューションズ インク. 分散型資産管理システム及び方法
KR100690787B1 (ko) 2005-02-25 2007-03-09 엘지전자 주식회사 무선통신 시스템에서 이벤트 통지방법
US7917299B2 (en) 2005-03-03 2011-03-29 Washington University Method and apparatus for performing similarity searching on a data stream with respect to a query string
US8126870B2 (en) 2005-03-28 2012-02-28 Sybase, Inc. System and methodology for parallel query optimization using semantic-based partitioning
US8463801B2 (en) 2005-04-04 2013-06-11 Oracle International Corporation Effectively and efficiently supporting XML sequence type and XQuery sequence natively in a SQL system
US7428555B2 (en) 2005-04-07 2008-09-23 Google Inc. Real-time, computer-generated modifications to an online advertising program
US7685150B2 (en) 2005-04-19 2010-03-23 Oracle International Corporation Optimization of queries over XML views that are based on union all operators
US8145686B2 (en) 2005-05-06 2012-03-27 Microsoft Corporation Maintenance of link level consistency between database and file system
US20060294095A1 (en) 2005-06-09 2006-12-28 Mantas, Inc. Runtime thresholds for behavior detection
US9792351B2 (en) 2005-06-10 2017-10-17 International Business Machines Corporation Tolerant and extensible discovery of relationships in data using structural information and data analysis
US9747560B2 (en) 2005-07-13 2017-08-29 Sap Se Method and system for combination of independent demand data streams
US7818313B1 (en) 2005-07-18 2010-10-19 Sybase, Inc. Method for distributing processing of queries over a cluster of servers in a continuous processing system
JP4723301B2 (ja) 2005-07-21 2011-07-13 株式会社日立製作所 ストリームデータ処理システムおよびストリームデータ処理方法
US7962616B2 (en) 2005-08-11 2011-06-14 Micro Focus (Us), Inc. Real-time activity monitoring and reporting
WO2007022560A1 (en) 2005-08-23 2007-03-01 Position Networks Pty Ltd A stream-oriented database machine and method
US7990646B2 (en) 2005-09-30 2011-08-02 Seagate Technology Llc Data pattern detection using adaptive search windows
US7937257B2 (en) 2005-10-10 2011-05-03 Oracle International Corporation Estimating performance of application based on automatic resizing of shared memory for messaging
KR100813000B1 (ko) 2005-12-01 2008-03-13 한국전자통신연구원 데이터 중복 처리 방지 기능을 가지는 스트림 데이터 처리시스템 및 그 방법
US7702629B2 (en) 2005-12-02 2010-04-20 Exegy Incorporated Method and device for high performance regular expression pattern matching
US20070136254A1 (en) 2005-12-08 2007-06-14 Hyun-Hwa Choi System and method for processing integrated queries against input data stream and data stored in database using trigger
US7730023B2 (en) 2005-12-22 2010-06-01 Business Objects Sotware Ltd. Apparatus and method for strategy map validation and visualization
US20070168154A1 (en) 2005-12-23 2007-07-19 Ericson Richard E User interface for statistical data analysis
US7502889B2 (en) 2005-12-30 2009-03-10 Intel Corporation Home node aware replacement policy for caches in a multiprocessor system
US7814111B2 (en) 2006-01-03 2010-10-12 Microsoft International Holdings B.V. Detection of patterns in data records
US7844829B2 (en) 2006-01-18 2010-11-30 Sybase, Inc. Secured database system with built-in antivirus protection
WO2007095619A2 (en) 2006-02-15 2007-08-23 Encirq Corporation Systems and methods for indexing and searching data records based on distance metrics
US20070198479A1 (en) 2006-02-16 2007-08-23 International Business Machines Corporation Streaming XPath algorithm for XPath expressions with predicates
US7446352B2 (en) 2006-03-09 2008-11-04 Tela Innovations, Inc. Dynamic array architecture
US7689582B2 (en) 2006-03-10 2010-03-30 International Business Machines Corporation Data flow system and method for heterogeneous data integration environments
US7536396B2 (en) 2006-03-21 2009-05-19 At&T Intellectual Property Ii, L.P. Query-aware sampling of data streams
US7877381B2 (en) 2006-03-24 2011-01-25 International Business Machines Corporation Progressive refinement of a federated query plan during query execution
US20070226188A1 (en) 2006-03-27 2007-09-27 Theodore Johnson Method and apparatus for data stream sampling
US7644066B2 (en) 2006-03-31 2010-01-05 Oracle International Corporation Techniques of efficient XML meta-data query using XML table index
WO2007113533A1 (en) 2006-03-31 2007-10-11 British Telecommunications Public Limited Company Xml-based transfer and a local storage of java objects
GB0606776D0 (en) 2006-04-03 2006-05-10 Novartis Pharma Ag Predictive biomarkers for chronic allograft nephropathy
US7974984B2 (en) * 2006-04-19 2011-07-05 Mobile Content Networks, Inc. Method and system for managing single and multiple taxonomies
WO2007122347A1 (fr) 2006-04-20 2007-11-01 France Telecom Procede d'optimisation de la collecte d'evenements, procede de supervision, produits programmes d'ordinateur et dispositifs correspondants
US7636703B2 (en) 2006-05-02 2009-12-22 Exegy Incorporated Method and apparatus for approximate pattern matching
US7548937B2 (en) 2006-05-04 2009-06-16 International Business Machines Corporation System and method for scalable processing of multi-way data stream correlations
US8131696B2 (en) 2006-05-19 2012-03-06 Oracle International Corporation Sequence event processing using append-only tables
JP4804233B2 (ja) 2006-06-09 2011-11-02 株式会社日立製作所 ストリームデータ処理方法
US7613848B2 (en) 2006-06-13 2009-11-03 International Business Machines Corporation Dynamic stabilization for a stream processing system
US20070294217A1 (en) 2006-06-14 2007-12-20 Nec Laboratories America, Inc. Safety guarantee of continuous join queries over punctuated data streams
US7921046B2 (en) 2006-06-19 2011-04-05 Exegy Incorporated High speed processing of financial information using FPGA devices
US20080010093A1 (en) 2006-06-30 2008-01-10 Laplante Pierre System and Method for Processing Health Information
US7499909B2 (en) 2006-07-03 2009-03-03 Oracle International Corporation Techniques of using a relational caching framework for efficiently handling XML queries in the mid-tier data caching
US20080016095A1 (en) 2006-07-13 2008-01-17 Nec Laboratories America, Inc. Multi-Query Optimization of Window-Based Stream Queries
US8077059B2 (en) 2006-07-21 2011-12-13 Eric John Davies Database adapter for relational datasets
US7496683B2 (en) 2006-07-27 2009-02-24 International Business Machines Corporation Maximization of sustained throughput of distributed continuous queries
US20080034427A1 (en) 2006-08-02 2008-02-07 Nec Laboratories America, Inc. Fast and scalable process for regular expression search
US8671091B2 (en) 2006-08-02 2014-03-11 Hewlett-Packard Development Company, L.P. Optimizing snowflake schema queries
WO2008018080A2 (en) 2006-08-11 2008-02-14 Bizwheel Ltd. Smart integration engine and metadata-oriented architecture for automatic eii and business integration
US8099400B2 (en) 2006-08-18 2012-01-17 National Instruments Corporation Intelligent storing and retrieving in an enterprise data system
KR100778314B1 (ko) 2006-08-21 2007-11-22 한국전자통신연구원 사용자 정의 공유 트리거를 이용한 데이터 스트림과 저장데이터에 대한 통합 연속 질의 처리 시스템 및 그 방법
US8099452B2 (en) 2006-09-05 2012-01-17 Microsoft Corporation Event stream conditioning
US8260910B2 (en) 2006-09-19 2012-09-04 Oracle America, Inc. Method and apparatus for monitoring a data stream to detect a pattern of data elements using bloom filters
US20080082484A1 (en) 2006-09-28 2008-04-03 Ramot At Tel-Aviv University Ltd. Fast processing of an XML data stream
US20080098359A1 (en) 2006-09-29 2008-04-24 Ventsislav Ivanov Manipulation of trace sessions based on address parameters
US20080082514A1 (en) 2006-09-29 2008-04-03 International Business Machines Corporation Method and apparatus for integrating relational and hierarchical data
US8645176B2 (en) 2006-10-05 2014-02-04 Trimble Navigation Limited Utilizing historical data in an asset management environment
US7921416B2 (en) * 2006-10-20 2011-04-05 Yahoo! Inc. Formal language and translator for parallel processing of data
JP4933222B2 (ja) 2006-11-15 2012-05-16 株式会社日立製作所 インデックス処理方法及び計算機システム
US9436779B2 (en) 2006-11-17 2016-09-06 Oracle International Corporation Techniques of efficient XML query using combination of XML table index and path/value index
US20080120283A1 (en) 2006-11-17 2008-05-22 Oracle International Corporation Processing XML data stream(s) using continuous queries in a data stream management system
US10152687B2 (en) 2006-12-01 2018-12-11 Goldman Sachs & Co. LLC Application directory
US7899977B2 (en) 2006-12-08 2011-03-01 Pandya Ashish A Programmable intelligent search memory
US7716210B2 (en) 2006-12-20 2010-05-11 International Business Machines Corporation Method and apparatus for XML query evaluation using early-outs and multiple passes
US7895187B2 (en) 2006-12-21 2011-02-22 Sybase, Inc. Hybrid evaluation of expressions in DBMS
US20080195577A1 (en) 2007-02-09 2008-08-14 Wei Fan Automatically and adaptively determining execution plans for queries with parameter markers
US7630982B2 (en) 2007-02-24 2009-12-08 Trend Micro Incorporated Fast identification of complex strings in a data stream
US20090327102A1 (en) 2007-03-23 2009-12-31 Jatin Maniar System and method for providing real time asset visibility
US7827146B1 (en) 2007-03-30 2010-11-02 Symantec Operating Corporation Storage system
US8065319B2 (en) 2007-04-01 2011-11-22 Nec Laboratories America, Inc. Runtime semantic query optimization for event stream processing
US8098248B2 (en) 2007-04-02 2012-01-17 International Business Machines Corporation Method for semantic modeling of stream processing components to enable automatic application composition
US8370812B2 (en) 2007-04-02 2013-02-05 International Business Machines Corporation Method and system for automatically assembling processing graphs in information processing systems
US7818292B2 (en) 2007-04-05 2010-10-19 Anil Kumar Nori SQL change tracking layer
JP2008262046A (ja) 2007-04-12 2008-10-30 Hitachi Ltd 会議可視化システム、会議可視化方法、及び集計処理サーバ
US7899904B2 (en) 2007-04-30 2011-03-01 Lsi Corporation Hardware processing of regular expressions
US7788206B2 (en) 2007-04-30 2010-08-31 Lsi Corporation State machine compression using multi-character state transition instructions
US7945540B2 (en) 2007-05-04 2011-05-17 Oracle International Corporation Method to create a partition-by time/tuple-based window in an event processing service
US7912853B2 (en) 2007-05-07 2011-03-22 International Business Machines Corporation Query processing client-server database system
US7953728B2 (en) 2007-05-18 2011-05-31 Oracle International Corp. Queries with soft time constraints
US20080301125A1 (en) 2007-05-29 2008-12-04 Bea Systems, Inc. Event processing query language including an output clause
US7975109B2 (en) 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US7792784B2 (en) 2007-05-31 2010-09-07 International Business Machines Corporation Streaming multidimensional data by bypassing multidimensional query processor
US7984040B2 (en) 2007-06-05 2011-07-19 Oracle International Corporation Methods and systems for querying event streams using multiple event processors
US7933894B2 (en) 2007-06-15 2011-04-26 Microsoft Corporation Parameter-sensitive plans for structural scenarios
US7689622B2 (en) 2007-06-28 2010-03-30 Microsoft Corporation Identification of events of search queries
US8832073B2 (en) 2007-06-29 2014-09-09 Alcatel Lucent Method and apparatus for efficient aggregate computation over data streams
US7676461B2 (en) 2007-07-18 2010-03-09 Microsoft Corporation Implementation of stream algebra over class instances
US7984043B1 (en) 2007-07-24 2011-07-19 Amazon Technologies, Inc. System and method for distributed query processing using configuration-independent query plans
FR2919939B1 (fr) * 2007-08-07 2013-04-05 Alstom Transport Sa Systeme et procede de gestion d'informations.
US8055653B2 (en) 2007-08-09 2011-11-08 International Business Machines Corporation Processing overlapping continuous queries
US7827299B2 (en) 2007-09-11 2010-11-02 International Business Machines Corporation Transitioning between historical and real time data streams in the processing of data change messages
US20090070786A1 (en) 2007-09-11 2009-03-12 Bea Systems, Inc. Xml-based event processing networks for event server
US20090076899A1 (en) 2007-09-14 2009-03-19 Gbodimowo Gbeminiyi A Method for analyzing, searching for, and trading targeted advertisement spaces
US20090089078A1 (en) 2007-09-28 2009-04-02 Great-Circle Technologies, Inc. Bundling of automated work flow
US7979420B2 (en) 2007-10-16 2011-07-12 Oracle International Corporation Handling silent relations in a data stream management system
US8335767B2 (en) 2007-10-17 2012-12-18 Oracle International Corporation Maintaining and utilizing SQL execution plan histories
US7996388B2 (en) 2007-10-17 2011-08-09 Oracle International Corporation Adding new continuous queries to a data stream management system operating on existing queries
US8296316B2 (en) 2007-10-17 2012-10-23 Oracle International Corporation Dynamically sharing a subtree of operators in a data stream management system operating on existing queries
US8073826B2 (en) 2007-10-18 2011-12-06 Oracle International Corporation Support for user defined functions in a data stream management system
US7739265B2 (en) 2007-10-18 2010-06-15 Oracle International Corporation Deleting a continuous query from a data stream management system continuing to operate on other queries
US8307343B2 (en) 2007-10-19 2012-11-06 Microsoft Corporation Application and database context correlation for database application developers
US8521867B2 (en) 2007-10-20 2013-08-27 Oracle International Corporation Support for incrementally processing user defined aggregations in a data stream management system
US7673065B2 (en) 2007-10-20 2010-03-02 Oracle International Corporation Support for sharing computation between aggregations in a data stream management system
US7991766B2 (en) 2007-10-20 2011-08-02 Oracle International Corporation Support for user defined aggregations in a data stream management system
US20090112809A1 (en) 2007-10-24 2009-04-30 Caterpillar Inc. Systems and methods for monitoring health of computing systems
US7827127B2 (en) 2007-10-26 2010-11-02 Microsoft Corporation Data scoping and data flow in a continuation based runtime
JP5377897B2 (ja) 2007-10-29 2013-12-25 株式会社日立製作所 ストリームデータのランキングクエリ処理方法およびランキングクエリ処理機構を有するストリームデータ処理システム
US8335782B2 (en) 2007-10-29 2012-12-18 Hitachi, Ltd. Ranking query processing method for stream data and stream data processing system having ranking query processing mechanism
US8019747B2 (en) 2007-10-30 2011-09-13 Oracle International Corporation Facilitating flexible windows in data stream management systems
US8103655B2 (en) 2007-10-30 2012-01-24 Oracle International Corporation Specifying a family of logics defining windows in data stream management systems
US8315990B2 (en) 2007-11-08 2012-11-20 Microsoft Corporation Consistency sensitive streaming operators
US20090125550A1 (en) 2007-11-08 2009-05-14 Microsoft Corporation Temporal event stream model
KR100894910B1 (ko) 2007-11-09 2009-04-30 한국전자통신연구원 이기종 센서 네트워크 환경에서 다중 질의 처리 장치 및방법
US9275353B2 (en) 2007-11-09 2016-03-01 Oracle America, Inc. Event-processing operators
US7870167B2 (en) 2007-11-09 2011-01-11 Oracle America, Inc. Implementing event processors
WO2009114615A1 (en) 2008-03-11 2009-09-17 Virtual Agility, Inc. Techniques for integrating parameterized information request into a system for collaborative work
US8191074B2 (en) 2007-11-15 2012-05-29 Ericsson Ab Method and apparatus for automatic debugging technique
US8156134B2 (en) 2007-11-15 2012-04-10 International Business Machines Corporation Using different groups of query graph transform modules to generate execution plans for queries for different database types
US8429601B2 (en) 2007-11-29 2013-04-23 Red Hat, Inc. Code completion for object relational mapping query language (OQL) queries
US7870124B2 (en) 2007-12-13 2011-01-11 Oracle International Corporation Rewriting node reference-based XQuery using SQL/SML
BRPI0822100A2 (pt) 2007-12-20 2015-06-30 Hsbc Technologies Inc Método e sistema para administrar automaticamente processos no desenvolvimento paralelo de um aplicativo por uma interface de usuário gráfica, sistema de desenvolvimento de aplicativo de computador, e, meio legível por computador de instruções
US7882087B2 (en) 2008-01-15 2011-02-01 At&T Intellectual Property I, L.P. Complex dependencies for efficient data warehouse updates
JP2009171193A (ja) 2008-01-16 2009-07-30 Kyocera Mita Corp 通信装置、通信方法及び通信制御プログラム
US20090192981A1 (en) 2008-01-29 2009-07-30 Olga Papaemmanouil Query Deployment Plan For A Distributed Shared Stream Processing System
US9489495B2 (en) 2008-02-25 2016-11-08 Georgetown University System and method for detecting, collecting, analyzing, and communicating event-related information
KR101510355B1 (ko) 2008-02-26 2015-04-14 아브 이니티오 테크놀로지 엘엘시 데이터 관계의 그래픽 표현
US8812487B2 (en) 2008-03-06 2014-08-19 Cisco Technology, Inc. Addition and processing of continuous SQL queries in a streaming relational database management system
US8055649B2 (en) 2008-03-06 2011-11-08 Microsoft Corporation Scaled management system
JP5589837B2 (ja) 2008-03-28 2014-09-17 日本電気株式会社 情報再構成システム、情報再構成方法及び情報再構成用プログラム
US7958114B2 (en) 2008-04-04 2011-06-07 Microsoft Corporation Detecting estimation errors in dictinct page counts
US7872948B2 (en) 2008-04-14 2011-01-18 The Boeing Company Acoustic wide area air surveillance system
US8122050B2 (en) 2008-04-16 2012-02-21 International Business Machines Corporation Query processing visualization system and method of visualizing query processing
JP5198929B2 (ja) 2008-04-25 2013-05-15 株式会社日立製作所 ストリームデータ処理方法及び計算機システム
US8155880B2 (en) 2008-05-09 2012-04-10 Locomatix Inc. Location tracking optimizations
US8886637B2 (en) 2008-05-12 2014-11-11 Enpulz, L.L.C. Web browser accessible search engine which adapts based on user interaction
US7818370B2 (en) 2008-05-20 2010-10-19 Bea Systems, Inc. Event server using clustering
US8850409B2 (en) 2008-05-21 2014-09-30 Optumsoft, Inc. Notification-based constraint set translation to imperative execution
US7930322B2 (en) 2008-05-27 2011-04-19 Microsoft Corporation Text based schema discovery and information extraction
US8291006B2 (en) 2008-05-30 2012-10-16 International Business Machines Corporation Method for generating a distributed stream processing application
US8918507B2 (en) 2008-05-30 2014-12-23 Red Hat, Inc. Dynamic grouping of enterprise assets
US8112378B2 (en) 2008-06-17 2012-02-07 Hitachi, Ltd. Methods and systems for performing root cause analysis
US20100030896A1 (en) 2008-06-19 2010-02-04 Microsoft Corporation Estimating latencies for query optimization in distributed stream processing
US20090319501A1 (en) 2008-06-24 2009-12-24 Microsoft Corporation Translation of streaming queries into sql queries
US8316012B2 (en) 2008-06-27 2012-11-20 SAP France S.A. Apparatus and method for facilitating continuous querying of multi-dimensional data streams
JPWO2010001512A1 (ja) 2008-07-03 2011-12-15 パナソニック株式会社 印象度抽出装置および印象度抽出方法
US8086644B2 (en) 2008-07-10 2011-12-27 International Business Machines Corporation Simplifying complex data stream problems involving feature extraction from noisy data
US8447739B2 (en) 2008-07-16 2013-05-21 SAP France S.A. Systems and methods to create continuous queries via a semantic layer
US9135583B2 (en) 2008-07-16 2015-09-15 Business Objects S.A. Systems and methods to create continuous queries associated with push-type and pull-type data
US8185508B2 (en) 2008-08-08 2012-05-22 Oracle International Corporation Adaptive filter index for determining queries affected by a DML operation
US8037040B2 (en) 2008-08-08 2011-10-11 Oracle International Corporation Generating continuous query notifications
US8335793B2 (en) 2008-08-22 2012-12-18 Disney Enterprises, Inc. System and method for optimized filtered data feeds to capture data and send to multiple destinations
US9305238B2 (en) 2008-08-29 2016-04-05 Oracle International Corporation Framework for supporting regular expression-based pattern matching in data streams
US20110173235A1 (en) 2008-09-15 2011-07-14 Aman James A Session automated recording together with rules based indexing, analysis and expression of content
US8032544B2 (en) 2008-09-24 2011-10-04 The Boeing Company Methods and apparatus for generating dynamic program files based on input queries that facilitate use of persistent query services
US20100094838A1 (en) 2008-10-10 2010-04-15 Ants Software Inc. Compatibility Server for Database Rehosting
JP5465413B2 (ja) 2008-10-29 2014-04-09 株式会社日立製作所 ストリームデータ処理方法、及びそのシステム
CN102202911B (zh) 2008-10-31 2014-04-09 都美工业株式会社 汽车用轮辐
US8296303B2 (en) 2008-11-20 2012-10-23 Sap Ag Intelligent event query publish and subscribe system
US7945565B2 (en) * 2008-11-20 2011-05-17 Yahoo! Inc. Method and system for generating a hyperlink-click graph
US8392402B2 (en) 2008-12-03 2013-03-05 International Business Machines Corporation Hybrid push/pull execution of continuous SQL queries
US8145621B2 (en) 2008-12-19 2012-03-27 Ianywhere Solutions, Inc. Graphical representation of query optimizer search space in a database management system
CN101493838B (zh) * 2009-01-23 2010-09-29 前卫视讯(北京)科技发展有限公司 一种事件录像处理装置和系统
US8935293B2 (en) 2009-03-02 2015-01-13 Oracle International Corporation Framework for dynamically generating tuple and page classes
US8145859B2 (en) 2009-03-02 2012-03-27 Oracle International Corporation Method and system for spilling from a queue to a persistent store
US8352517B2 (en) 2009-03-02 2013-01-08 Oracle International Corporation Infrastructure for spilling pages to a persistent store
US8725707B2 (en) 2009-03-26 2014-05-13 Hewlett-Packard Development Company, L.P. Data continuous SQL process
US8713038B2 (en) 2009-04-02 2014-04-29 Pivotal Software, Inc. Integrating map-reduce into a distributed relational database
US8285709B2 (en) 2009-05-12 2012-10-09 Teradata Us, Inc. High-concurrency query operator and method
US8161035B2 (en) 2009-06-04 2012-04-17 Oracle International Corporation Query optimization by specifying path-based predicate evaluation in a path-based query operator
US8868725B2 (en) 2009-06-12 2014-10-21 Kent State University Apparatus and methods for real-time multimedia network traffic management and control in wireless networks
US20100332401A1 (en) 2009-06-30 2010-12-30 Anand Prahlad Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites
US8572589B2 (en) 2009-06-30 2013-10-29 Agilent Technologies, Inc. Programming language translator and enabling translation of machine-centric commands for controlling instrument
US8180801B2 (en) 2009-07-16 2012-05-15 Sap Ag Unified window support for event stream data management
US8880524B2 (en) 2009-07-17 2014-11-04 Apple Inc. Scalable real time event stream processing
US8321450B2 (en) 2009-07-21 2012-11-27 Oracle International Corporation Standardized database connectivity support for an event processing server in an embedded context
US8387076B2 (en) 2009-07-21 2013-02-26 Oracle International Corporation Standardized database connectivity support for an event processing server
US8572016B2 (en) 2009-07-31 2013-10-29 International Business Machines Corporation Match engine for detection of multi-pattern rules
US8386466B2 (en) 2009-08-03 2013-02-26 Oracle International Corporation Log visualization tool for a data stream processing server
US8527458B2 (en) 2009-08-03 2013-09-03 Oracle International Corporation Logging framework for a data stream processing server
US20110035253A1 (en) 2009-08-07 2011-02-10 onFucus Healthcare Systems and Methods for Optimizing Enterprise Performance Relationships to Other Applications
CA2754159C (en) 2009-08-11 2012-05-15 Certusview Technologies, Llc Systems and methods for complex event processing of vehicle-related information
JP4925143B2 (ja) 2009-08-12 2012-04-25 株式会社日立製作所 ストリームデータ処理システム、ストリームデータ処理方法及びストリームデータ処理プログラム
JP5395565B2 (ja) 2009-08-12 2014-01-22 株式会社日立製作所 ストリームデータ処理方法及び装置
US8204873B2 (en) 2009-08-26 2012-06-19 Hewlett-Packard Development Company, L.P. System and method for query expression optimization
JP4992945B2 (ja) 2009-09-10 2012-08-08 株式会社日立製作所 ストリームデータ生成方法、ストリームデータ生成装置及びストリームデータ生成プログラム
US20110084967A1 (en) 2009-10-09 2011-04-14 International Business Machines Corporation Visualization of Datasets
US8195648B2 (en) 2009-10-21 2012-06-05 Microsoft Corporation Partitioned query execution in event processing systems
US9977702B2 (en) 2009-11-23 2018-05-22 International Business Machines Corporation Event processing networks
US20110131588A1 (en) 2009-12-01 2011-06-02 International Business Machines Corporation Software architecture that can sense and respond to contextual and state information
US8959106B2 (en) 2009-12-28 2015-02-17 Oracle International Corporation Class loading using java data cartridges
US9305057B2 (en) 2009-12-28 2016-04-05 Oracle International Corporation Extensible indexing framework using data cartridges
US9430494B2 (en) 2009-12-28 2016-08-30 Oracle International Corporation Spatial data cartridge for event processing systems
US9307038B2 (en) 2009-12-29 2016-04-05 Motorola Solutions, Inc. Method for presence notification based on a sequence of events
US8423576B2 (en) 2010-01-11 2013-04-16 International Business Machines Corporation System and method for querying data streams
EP2348416A1 (en) 2010-01-21 2011-07-27 Software AG Analysis system and method for analyzing continuous queries for data streams
US9805101B2 (en) 2010-02-26 2017-10-31 Ebay Inc. Parallel data stream processing system
JP5331737B2 (ja) 2010-03-15 2013-10-30 株式会社日立製作所 ストリームデータ処理障害回復方法および装置
CN102859517B (zh) 2010-05-14 2016-07-06 株式会社日立制作所 时序数据管理装置、系统以及方法
US8762297B2 (en) 2010-05-17 2014-06-24 Microsoft Corporation Dynamic pattern matching over ordered and disordered data streams
US8595234B2 (en) 2010-05-17 2013-11-26 Wal-Mart Stores, Inc. Processing data feeds
US10380186B2 (en) 2010-05-26 2019-08-13 Entit Software Llc Virtual topological queries
US8595840B1 (en) 2010-06-01 2013-11-26 Trend Micro Incorporated Detection of computer network data streams from a malware and its variants
US20120116982A1 (en) 2010-06-02 2012-05-10 Salesforce. com. Inc. Method and system for escalating content of discussions to particular memory locations
US8442863B2 (en) 2010-06-17 2013-05-14 Microsoft Corporation Real-time-ready behavioral targeting in a large-scale advertisement system
US20110314019A1 (en) 2010-06-18 2011-12-22 Universidad Politecnica De Madrid Parallel processing of continuous queries on data streams
US8627329B2 (en) 2010-06-24 2014-01-07 International Business Machines Corporation Multithreaded physics engine with predictive load balancing
US8719207B2 (en) 2010-07-27 2014-05-06 Oracle International Corporation Method and system for providing decision making based on sense and respond
US8326821B2 (en) 2010-08-25 2012-12-04 International Business Machines Corporation Transforming relational queries into stream processing
US8713049B2 (en) 2010-09-17 2014-04-29 Oracle International Corporation Support for a parameterized query/view in complex event processing
US8260803B2 (en) 2010-09-23 2012-09-04 Hewlett-Packard Development Company, L.P. System and method for data stream processing
WO2012050555A1 (en) 2010-10-11 2012-04-19 Hewlett-Packard Development Company, L.P. System and method for querying a data stream
US9195708B2 (en) 2010-10-14 2015-11-24 Hewlett-Packard Development Company, L.P. Continuous querying of a data stream
US9189280B2 (en) 2010-11-18 2015-11-17 Oracle International Corporation Tracking large numbers of moving objects in an event processing system
US20120130963A1 (en) 2010-11-24 2012-05-24 Teradata Us, Inc. User defined function database processing
US8510284B2 (en) 2010-12-20 2013-08-13 Microsoft Corporation Large-scale event evaluation using realtime processors
EP2469420B1 (en) 2010-12-22 2019-11-27 Software AG CEP engine and method for processing CEP queries
US8478743B2 (en) 2010-12-23 2013-07-02 Microsoft Corporation Asynchronous transfer of state information between continuous query plans
US8788484B2 (en) 2010-12-27 2014-07-22 Software Ag Systems and/or methods for user feedback driven dynamic query rewriting in complex event processing environments
US9201754B2 (en) 2011-01-19 2015-12-01 Red Hat, Inc. Recording application consumption details
US9350567B2 (en) 2011-01-25 2016-05-24 International Business Machines Corporation Network resource configurations
US8799271B2 (en) 2011-01-25 2014-08-05 Hewlett-Packard Development Company, L.P. Range predicate canonization for translating a query
US8655825B2 (en) 2011-03-10 2014-02-18 Sap Ag Efficient management of data quality for streaming event data
US8751639B2 (en) 2011-04-27 2014-06-10 Rackspace Us, Inc. Event queuing and distribution system
US8990416B2 (en) 2011-05-06 2015-03-24 Oracle International Corporation Support for a new insert stream (ISTREAM) operation in complex event processing (CEP)
EP2707812A1 (en) 2011-05-10 2014-03-19 Telefonaktiebolaget LM Ericsson (PUBL) Optimised data stream management system
US8738572B2 (en) 2011-05-24 2014-05-27 Red Lambda, Inc. System and method for storing data streams in a distributed environment
US9965520B2 (en) 2011-06-17 2018-05-08 Microsoft Corporation Efficient logical merging over physically divergent streams
US20120323941A1 (en) 2011-06-17 2012-12-20 Microsoft Corporation Processing Queries for Event Data in a Foreign Representation
US9449030B2 (en) 2011-06-30 2016-09-20 International Business Machines Corporation Method for native program to inherit same transaction content when invoked by primary program running in separate environment
US9329975B2 (en) 2011-07-07 2016-05-03 Oracle International Corporation Continuous query language (CQL) debugger in complex event processing (CEP)
US20130031567A1 (en) 2011-07-25 2013-01-31 Microsoft Corporation Local event processing
US9286354B2 (en) 2011-08-15 2016-03-15 Software Ag Systems and/or methods for forecasting future behavior of event streams in complex event processing (CEP) environments
US9298773B2 (en) 2011-09-12 2016-03-29 Hewlett Packard Enterprise Development Lp Nested complex sequence pattern queries over event streams
US8880493B2 (en) 2011-09-28 2014-11-04 Hewlett-Packard Development Company, L.P. Multi-streams analytics
US8635208B2 (en) 2011-11-03 2014-01-21 Sap Ag Multi-state query migration in data stream management
US9424150B2 (en) 2011-12-06 2016-08-23 Sap Se Fault tolerance based query execution
US10055483B2 (en) 2012-03-08 2018-08-21 Telefonaktiebolaget Lm Ericsson (Publ) Data stream management systems
US9201911B2 (en) 2012-03-29 2015-12-01 International Business Machines Corporation Managing test data in large scale performance environment
US9239864B2 (en) 2012-04-17 2016-01-19 Cisco Technology, Inc. Distributing and processing streams over one or more networks
US20130332240A1 (en) 2012-06-08 2013-12-12 University Of Southern California System for integrating event-driven information in the oil and gas fields
US10931735B2 (en) 2012-06-28 2021-02-23 Netflix, Inc. Application discovery
EP2868045B1 (en) 2012-06-29 2018-08-08 Telefonaktiebolaget LM Ericsson (publ) A method of and network server for detecting data patterns in an input data stream
US20140019194A1 (en) 2012-07-12 2014-01-16 Bank Of America Predictive Key Risk Indicator Identification Process Using Quantitative Methods
US9009213B2 (en) 2012-08-27 2015-04-14 Sap Se Distributing pre-rendering processing tasks
US20140082013A1 (en) 2012-09-20 2014-03-20 Sap Ag Query templates for queries in data stream management systems
US9262479B2 (en) 2012-09-28 2016-02-16 Oracle International Corporation Join operations for continuous queries over archived views
US9563663B2 (en) 2012-09-28 2017-02-07 Oracle International Corporation Fast path evaluation of Boolean predicates
US8892484B2 (en) 2012-09-28 2014-11-18 Sphere Of Influence, Inc. System and method for predicting events
US9183271B2 (en) 2012-12-04 2015-11-10 Pivotal Software, Inc. Big-fast data connector between in-memory database system and data warehouse system
US10956422B2 (en) 2012-12-05 2021-03-23 Oracle International Corporation Integrating event processing with map-reduce
US9053210B2 (en) 2012-12-14 2015-06-09 Microsoft Technology Licensing, Llc Graph query processing using plurality of engines
US20140172506A1 (en) 2012-12-17 2014-06-19 Microsoft Corporation Customer segmentation
KR20140090769A (ko) 2013-01-10 2014-07-18 한국전자통신연구원 연속질의 언어 기반의 네트워크 제어 시스템
US10298444B2 (en) 2013-01-15 2019-05-21 Oracle International Corporation Variable duration windows on continuous data streams
US9098587B2 (en) 2013-01-15 2015-08-04 Oracle International Corporation Variable duration non-event pattern matching
US20140237487A1 (en) 2013-02-15 2014-08-21 University Of Southern California Complex event processing for dynamic data
US10318533B2 (en) 2013-02-15 2019-06-11 Telefonaktiebolaget Lm Ericsson (Publ) Optimized query execution in a distributed data stream processing environment
US9047249B2 (en) 2013-02-19 2015-06-02 Oracle International Corporation Handling faults in a continuous event processing (CEP) system
US9390135B2 (en) 2013-02-19 2016-07-12 Oracle International Corporation Executing continuous event processing (CEP) queries in parallel
US9674249B1 (en) 2013-03-11 2017-06-06 DataTorrent, Inc. Distributed streaming platform for real-time applications
US9298788B1 (en) 2013-03-11 2016-03-29 DataTorrent, Inc. Checkpointing in distributed streaming platform for real-time applications
US20140324530A1 (en) 2013-04-30 2014-10-30 Liveops, Inc. Method and system for detecting patters in data streams
US9418113B2 (en) 2013-05-30 2016-08-16 Oracle International Corporation Value based windows on relations in continuous data streams
US10091282B2 (en) 2013-06-12 2018-10-02 Sap Se Metadata-driven dynamic load balancing in multi-tenant systems
CN104252469B (zh) 2013-06-27 2017-10-20 国际商业机器公司 用于模式匹配的方法、设备和电路
WO2015044374A1 (de) 2013-09-27 2015-04-02 Petri Rudolf Markus Verfahren und einrichtung zur automatisierten erzeugung und bereitstellung wenigstens einer softwareanwendung
US9313134B2 (en) 2013-10-15 2016-04-12 Cisco Technology, Inc. Leveraging hardware accelerators for scalable distributed stream processing in a network environment
US9934279B2 (en) 2013-12-05 2018-04-03 Oracle International Corporation Pattern matching across multiple input data streams
US9405854B2 (en) 2013-12-16 2016-08-02 Sybase, Inc. Event stream processing partitioning
US11314808B2 (en) 2013-12-19 2022-04-26 Micro Focus Llc Hybrid flows containing a continous flow
US9838512B2 (en) 2014-10-30 2017-12-05 Splunk Inc. Protocol-based capture of network data using remote capture agents
US9244978B2 (en) 2014-06-11 2016-01-26 Oracle International Corporation Custom partitioning of a data stream
US9712645B2 (en) 2014-06-26 2017-07-18 Oracle International Corporation Embedded event processing
US10235436B2 (en) 2014-08-29 2019-03-19 Microsoft Technology Licensing, Llc Event stream transformations
US10025802B2 (en) 2014-09-19 2018-07-17 Amazon Technologies, Inc. Automated configuration of log-coordinated storage groups
US9886486B2 (en) 2014-09-24 2018-02-06 Oracle International Corporation Enriching events with dynamically typed big data for event processing
US10120907B2 (en) 2014-09-24 2018-11-06 Oracle International Corporation Scaling event processing using distributed flows and map-reduce operations
US9613110B2 (en) 2014-12-12 2017-04-04 Sap Se Fast serialization for data transfer
US9894147B1 (en) 2014-12-23 2018-02-13 EMC IP Holding Company LLC Application plugin framework for big-data clusters
WO2016130626A1 (en) 2015-02-11 2016-08-18 Ab Initio Technology Llc Filtering data lineage diagrams
US10095547B1 (en) 2015-03-13 2018-10-09 Twitter, Inc. Stream processing at scale
US20160306827A1 (en) 2015-04-15 2016-10-20 International Business Machines Corporation Synchronizing data rules and corresponding metadata to implement data governance
US20160328432A1 (en) 2015-05-06 2016-11-10 Squigglee LLC System and method for management of time series data sets
WO2017018901A1 (en) 2015-07-24 2017-02-02 Oracle International Corporation Visually exploring and analyzing event streams
US10198298B2 (en) 2015-09-16 2019-02-05 Salesforce.Com, Inc. Handling multiple task sequences in a stream processing framework
US10303695B2 (en) 2015-10-21 2019-05-28 Oracle International Corporation Query decomposition for scalability of continuous query processing
US10437635B2 (en) 2016-02-10 2019-10-08 Salesforce.Com, Inc. Throttling events in entity lifecycle management
US10402256B2 (en) 2016-05-03 2019-09-03 Gopro, Inc. Systems and methods for micro-batch processing of data
US10628424B2 (en) 2016-09-15 2020-04-21 Oracle International Corporation Graph generation for a distributed event processing system
JP7005600B2 (ja) 2016-09-15 2022-01-21 オラクル・インターナショナル・コーポレイション マイクロバッチストリーミングのための複合イベント処理
WO2018169430A1 (en) 2017-03-17 2018-09-20 Oracle International Corporation Integrating logic in micro batch based event processing systems
WO2018169429A1 (en) 2017-03-17 2018-09-20 Oracle International Corporation Framework for the deployment of event-based applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633867B1 (en) * 2000-04-05 2003-10-14 International Business Machines Corporation System and method for providing a session query within the context of a dynamic search result set
JP2006338432A (ja) * 2005-06-03 2006-12-14 Hitachi Ltd ストリームデータ処理システムのクエリ処理方法
JP2010108073A (ja) * 2008-10-28 2010-05-13 Hitachi Ltd ストリームデータ処理方法、及びシステム
US20110302164A1 (en) * 2010-05-05 2011-12-08 Saileshwar Krishnamurthy Order-Independent Stream Query Processing

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9535761B2 (en) 2011-05-13 2017-01-03 Oracle International Corporation Tracking large numbers of moving objects in an event processing system
US10025825B2 (en) 2012-09-28 2018-07-17 Oracle International Corporation Configurable data windows for archived relations
US9946756B2 (en) 2012-09-28 2018-04-17 Oracle International Corporation Mechanism to chain continuous queries
US10042890B2 (en) 2012-09-28 2018-08-07 Oracle International Corporation Parameterized continuous query templates
US11093505B2 (en) 2012-09-28 2021-08-17 Oracle International Corporation Real-time business event analysis and monitoring
US10102250B2 (en) 2012-09-28 2018-10-16 Oracle International Corporation Managing continuous queries with archived relations
US9953059B2 (en) 2012-09-28 2018-04-24 Oracle International Corporation Generation of archiver queries for continuous queries over archived relations
US9990401B2 (en) 2012-09-28 2018-06-05 Oracle International Corporation Processing events for continuous queries on archived relations
US9703836B2 (en) 2012-09-28 2017-07-11 Oracle International Corporation Tactical query to continuous query conversion
US9715529B2 (en) 2012-09-28 2017-07-25 Oracle International Corporation Hybrid execution of continuous and scheduled queries
US10956422B2 (en) 2012-12-05 2021-03-23 Oracle International Corporation Integrating event processing with map-reduce
US9934279B2 (en) 2013-12-05 2018-04-03 Oracle International Corporation Pattern matching across multiple input data streams
US9886486B2 (en) 2014-09-24 2018-02-06 Oracle International Corporation Enriching events with dynamically typed big data for event processing
US10120907B2 (en) 2014-09-24 2018-11-06 Oracle International Corporation Scaling event processing using distributed flows and map-reduce operations
US9972103B2 (en) 2015-07-24 2018-05-15 Oracle International Corporation Visually exploring and analyzing event streams
JP2019531539A (ja) * 2016-09-06 2019-10-31 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 分散コンピューティングタスクを実行するための方法及び装置
US11379499B2 (en) 2016-09-06 2022-07-05 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for executing distributed computing task
JP2022058578A (ja) * 2016-09-15 2022-04-12 オラクル・インターナショナル・コーポレイション 分散イベント処理システムにおけるデータシリアライズ
JP2022062036A (ja) * 2016-09-15 2022-04-19 オラクル・インターナショナル・コーポレイション 分散イベント処理システムのためのグラフ生成
JP7333424B2 (ja) 2016-09-15 2023-08-24 オラクル・インターナショナル・コーポレイション 分散イベント処理システムのためのグラフ生成
US11977549B2 (en) 2016-09-15 2024-05-07 Oracle International Corporation Clustering event processing engines
KR101856454B1 (ko) * 2017-03-06 2018-05-10 주식회사 티맥스데이터 분산처리를 위한 컴퓨팅 장치

Also Published As

Publication number Publication date
EP2929467B1 (en) 2020-07-01
EP2929467A1 (en) 2015-10-14
CN104838377A (zh) 2015-08-12
US20140156683A1 (en) 2014-06-05
CN104838377B (zh) 2019-11-26
JP6250061B2 (ja) 2017-12-20
US10956422B2 (en) 2021-03-23
WO2014089190A1 (en) 2014-06-12

Similar Documents

Publication Publication Date Title
JP6250061B2 (ja) イベント処理とマップリデュースとの統合
US11036735B2 (en) Dimension context propagation techniques for optimizing SQL query plans
US10644932B2 (en) Variable duration windows on continuous data streams
US20200401606A1 (en) Database replication based on data access scores
US10242041B2 (en) Dynamic filter processing
JP6404820B2 (ja) 連続クエリをチェーン接続するための機構
JP7410919B2 (ja) 系統メタデータの生成、アクセス、及び表示
US10031943B1 (en) Imputing data for temporal data store joins
Pathirage et al. SamzaSQL: Scalable fast data management with streaming SQL
CN107391528B (zh) 前端组件依赖信息搜索方法及设备
Chardonnens Big data analytics on high velocity streams
US11003690B1 (en) Aggregator systems for storage of data segments
US9323812B2 (en) Hybrid bifurcation of intersection nodes
US10769164B2 (en) Simplified access for core business with enterprise search
Khatiwada Architectural issues in real-time business intelligence
US11023485B2 (en) Cube construction for an OLAP system
Corrao Near real-time clickstream analysis: a journey in big data systems and architectures
JP2015125726A (ja) 分散クエリ処理装置、クエリ処理方法及びクエリ処理プログラム
Eriksson Providing a scalable architecture to support low-latency ad-hoc funnel analysis on custom defined events for an A/B testing use case
Büchi et al. Relational Data Access on Big Data

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161202

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171121

R150 Certificate of patent or registration of utility model

Ref document number: 6250061

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250