JP5864583B2 - 複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート - Google Patents

複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート Download PDF

Info

Publication number
JP5864583B2
JP5864583B2 JP2013529376A JP2013529376A JP5864583B2 JP 5864583 B2 JP5864583 B2 JP 5864583B2 JP 2013529376 A JP2013529376 A JP 2013529376A JP 2013529376 A JP2013529376 A JP 2013529376A JP 5864583 B2 JP5864583 B2 JP 5864583B2
Authority
JP
Japan
Prior art keywords
query
parameter set
bind
cep
processor
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.)
Active
Application number
JP2013529376A
Other languages
English (en)
Other versions
JP2013540308A (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 JP2013540308A publication Critical patent/JP2013540308A/ja
Application granted granted Critical
Publication of JP5864583B2 publication Critical patent/JP5864583B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/2452Query translation
    • G06F16/24524Access plan code generation and invalidation; Reuse of access plans
    • 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/2452Query translation
    • 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/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation

Description

相互参照
本PCT出願は、2011年7月28日に出願された米国特許出願番号第13/193,377号の優先権を主張し、この米国特許出願番号第13/193,377号は、「複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート("SUPPORT FOR PARAMETERIZED QUERY/VIEW IN COMPLEX EVENT PROCESSING")」と題された、2010年9月17日に出願された同時係属米国仮特許出願番号第61/384,182号からの優先権を主張する。同時係属米国仮特許出願番号第61/384,182号は、すべての目的のために、あたかも全文において述べられたかのように、引用により本明細書に援用される。
背景
本発明に係る実施形態は、データ処理システムに関し、より特定的には、時間の意味論(temporal semantics)を有するストリーミングデータに関するシステムおよびアプリケーションに関する。
概して、複合イベント処理(Complex Event Processing:CEP)は、分散型メッセージベースのシステム、データベース、およびアプリケーションからリアルタイムに情報を集計するアプローチであり、さもなければ注目されずに終わってしまうであろうパターンおよび傾向を識別するためのルールを動的に適用する。これにより、企業は、非常に複雑な、分散型の、異種IT環境の全域にわたって、一見関係のないイベントによって表わされる例外および機会を識別し、また予測さえもすることが可能となる。CEPは、ニアリアルタイムで高速ストリーミングデータにおけるパターンを相互に関連付け、集計し、強化し、そして検知するために利用されてもよい。
さらに、継続的クエリ言語(Continuous Query Language:CQL)ステートメントは、イベントを含むイベントストリームを処理するために利用される。イベントストリームは、データ部を参照するタプル(tuple)を含んだ、一連の<tuple,timestamp>対と考えられ得る。ストリームは、複数のタプルを有し得るし、タイムスタンプは、イベントストリーム内のタプルについて順序を定義し得る。Oracle(登録商標)Complex Event Processing(OCEP)は、そのようなイベントストリームを処理するために利用される。
さらに、CEPアプリケーションは、複数のクエリおよびビューを有することができ、そして、これらはプロセッサによって実行される。あらゆる現実世界のアプリケーションは、範囲パラメータのように、ある値が異なるのみである何百ものクエリおよびビューから構成されていてもよい。ベースクエリまたはベースビューにおけるわずかな変化が、何百もの従属クエリおよび従属ビューに影響を及ぼすことになるため、そのようなシナリオにおいては、何百ものクエリおよびビューを維持することは悪夢になり得る。
ある形式のパラメータ化またはワイルドカードプレースホルダ(wildcard placeholder)機能の利用は、アプリケーション開発者が、基準が少し異なるだけで類似するクエリおよびビューを書く際の手助けとなる。一実施形態では、ユーザは、ランタイム時の値でバインドされ得るワイルドカードプレースホルダを置くことができる。パラメータ化されたクエリまたはビューは、異なる値で利用され得るテンプレートとして見なされ得る。これにより、ユーザは、バインディング(binding)において設定される異なる値についてマルチプルCQLステートメントを内部で生成可能なシングルCQLステートメントを書くことができる。たとえば、
上述したクエリは、プロジェクトリストの一定値またはWHERE条件の一定値のいずれが異なるということに留意すべきである。そのようなクエリが何百も存在する場合には、どんなビジネスユーザであってもそのような何百ものクエリおよびビューを書かなくてはならないかもしれない。したがって、これらおよび他の理由で、技術の向上が必要とされている。
概要
本発明に係る実施形態は、あらゆる種類の型(type)検査などもせずに、CEPストリング置換を利用して、バインド変数について設定されるパラメータセットにバインド変数を置き換えることを含む。これは、バインド変数でも型検査などを通過する必要があるという点で標準データベースとは異なる。結果として、CEPコンテキスト内でのバインド変数は、より柔軟で、より強力な解決手段を提供し、当該バインド変数によりユーザは任意の述語を挿入することができる。したがって、CEP環境内でのバインド変数は型がなくてもよい。
本発明は、複合イベント処理(CEP)内でパラメータ化されたクエリを設定する方法を含む。方法は、1つ以上のバインド変数を含むクエリテンプレートを設定するステップと、1つ以上のバインド変数に対応するパラメータセットを設定するステップと、1つ以上のバインド変数の位置を判断するためにクエリテンプレートを解析するステップとを含む。方法は、さらに、設定されたパラメータセットをスキャンして、どのパラメータセットが1つ以上のバインド変数にバインドされるのかを判断するステップと、パラメータセットにバインドされると判断された1つ以上のバインド変数をバインドするステップと、バインドされた1つ以上のバインド変数を対応するパラメータセットに置換するステップとを含む。
方法は、さらに、1つ以上のバインド変数の当該判断された位置のマップを構築するステップを含む。1つ以上のバインド変数を対応するパラメータセットに置換するステップは、1つ以上のバインド変数の当該判断された位置のマップを用いて、バインドされたパラメータセットをクエリテンプレート内に置くステップを含む。1つ以上のバインド変数に対応するパラメータセットを設定するステップは、静的または動的に実行される。
さらに他の実施形態では、1つ以上のバインド変数に対応するパラメータセットを設定するステップは、クエリテンプレートの展開時にコンフィグファイルを用いることで静的に実行され、1つ以上のバインド変数に対応するパラメータセットを設定するステップは、モジュールマネージメントソリューションを用いることで動的に実行される。コンフィグファイルは、アプリケーションアソシエーション(application association)、プロセッサアソシエーション(processor association)、クエリルール、クエリテンプレート、パラメータセット、またはバインディングのうち、1つ以上のものを含む。
方法は、さらに、1つ以上のバインド変数が置換されたパラメータセットを含むクエリテンプレートに基づいて新しいクエリのインスタンスを生成するステップと、新しいクエリのインスタンスを生成するステップと、新しいクエリをCEPサーバに注入するステップとを含む。方法は、さらに、新しいクエリに基づいてクエリ実行計画を構築するステップと、継続クエリとしてランタイム環境にクエリ実行計画を追加するステップと、継続クエリを実行するステップとを含む。
方法は、さらに、多数のパラメータセットが同じバインド変数に対応しているということを判断するステップと、同じバインド変数に対応している多数のパラメータセットの各々について、独立した新しいクエリのインスタンスを生成するステップとを含む。
他の実施形態では、複合イベント処理(CEP)内でパラメータ化されたクエリを設定するためのシステムが説明される。システムは、メモリと、メモリに結合されたプロセッサとを含む。メモリは、命令セットを内部に格納させており、命令セットは、プロセッサによって実行されると、プロセッサに、イベントストリームを処理するためのパラメータ化されたクエリ内で生じるプレースホルダを判断させ、プレースホルダのためのパラメータを判断させ、プレースホルダをパラメータに置き換えることでパラメータ化されたクエリからクエリを生成させ、当該クエリを生成させ、イベントストリームを処理させる。
システムは、さらに、CQLエンジンを含むCEPサーバを含む。CQLエンジンは、CEPアプリケーションのインスタンスを生成する。システムは、CEPサーバと通信するビジュアライザ(visualizer)をも含む。ビジュアライザは、処理されたイベントストリームからの結果情報を表示するように構成されている。
さらに他の実施形態では、コンピュータ可読媒体が説明される。コンピュータ可読媒体は、1つ以上のバインド変数を含むクエリテンプレートを設定するための命令と、1つ以上のバインド変数に対応するパラメータセットを設定するための命令と、1つ以上のバインド変数の位置を判断するためにクエリテンプレートを解析するための命令とを含む。コンピュータ可読媒体は、さらに、設定されたパラメータセットをスキャンしてどのパラメータセットが1つ以上のバインド変数にバインドされるのかを判断するための命令と、パラメータセットにバインドされると判断された1つ以上のバインド変数をバインドするための命令と、バインドされた1つ以上のバインド変数を対応するパラメータセットに置換するための命令とを含む。
コンピュータ可読媒体は、さらに、新しいパラメータセットがバインディングのために指定されていることを判断するための命令と、新しいパラメータセットで指定される前に、パラメータセットを用いてインスタンスが生成されたクエリを特定するための命令と、新しいパラメータセットで指定される前に、パラメータセットを用いてインスタンスが生成されたクエリを削除するための命令と、ランタイムシステムのために新しいパラメータセットを用いてクエリのインスタンスを生成するための命令とを含む。
コンピュータ可読媒体は、さらに、パラメータセットをストリングに変換するための命令と、パラメータセットのストリングを確認してパラメータセットのフォームを判断するための命令と、パラメータセットの判断されたタイプと対応するバインド変数のタイプとを比較するための命令と、対応するバインド変数のタイプにマッチするパラメータセットの判断されたタイプに応じて、パラメータセットを検証するための命令とを含む。対応するバインド変数およびパラメータセットのタイプは、INT,FLOAT,LONG,BIGDECIMAL,DOUBLE,およびSTRINGのうち、1つ以上のものを含んでもよい。
本発明の実施形態に従うイベント処理サーバのブロック図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのフロー図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのフロー図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのフロー図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのフロー図である。 本発明の実施形態に従うCEPにおけるパラメータ化されたクエリのブロック図である。 本発明の実施形態に従うCEPにおけるパラメータ化されたクエリのブロック図である。 本発明の実施形態に従うCEPにおけるパラメータ化されたクエリのブロック図である。 本発明の実施形態に従うCEPにおけるパラメータ化されたクエリのブロック図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのブロック図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのブロック図である。 本発明の実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのユーザインターフェイスである。 本発明の実施形態に従って利用され得るシステム環境の簡略ブロック図である。 本発明の実施形態に従って利用され得るコンピュータシステムの簡略ブロック図である。
詳細な説明
以下の記載では、説明を目的として、本発明のさまざまな実施形態の理解のために多くの詳細が説明される。しかしながら、ある実施形態が、これらの詳細の一部なしに実行され得るということは当業者にとっては明らかであろう。
本発明のある局面は、いくつかの特定の値が異なるCEPにおいてクエリおよび/またはビューを書くための簡易な方法をユーザに提供するパラメータ化アプローチを含む。たとえば、上述したクエリは、テンプレートとして機能することができ、後に、バインディングのための可能値を設定することができる単一のパラメータ化されたクエリを有することができる。当該バインディングは、内部で多数のクエリおよびビューを生成してもよい。
以下のクエリ:
では、:1と:2とはプレースホルダとして機能する。異なる値が展開時またはランタイム時にこれらのプレースホルダにバインドされ得る。さらに、そのようなクエリを処理するように構成されたプロセッサ構成要素に関連付けられたコンフィグファイルは、次のように記載されてもよい:
上記の例では、MarketQuery CQLクエリは、2つのプレースホルダを含む。1つは、SELECT節の中に、もう1つはWHERE節の中に含まれる。この実施形態では、これらのプレースホルダのための値は、コンフィグファイル自体にも含まれる(または、これらのプレースホルダのための値はランタイム中に設定されてもよい)。<binding id="MarketQuery">要素は、ランタイム時にMarketQueryに引き継がれるパラメータセットのリストを指定している。各々のパラメータセットは、単一の<params>要素で指定される。パラメータ化されたクエリ内には2つのプレースホルダが存在しているので、各々の<params>要素が、コンマで分離された2つの値を指定する。
ランタイム時に、プレースホルダが対応するパラメータ値に置き換えられた後、前にパラメータ化されたクエリが事実上次の3つのクエリに分解される:
さらに、本発明に係るある局面は、パラメータセットを操作するためにJava(登録商標)MBean API'sを利用することを含む。一実施形態では、パラメータ化されたクエリおよびビューは、展開時またはランタイム時にクライアントから追加され得る。さらに、Java(登録商標)Management Extensions(JMX)アーキテクチャベースのMBean APIsが、パラメータ化されたクエリまたはビューに対応するバインディングにアクセスするために、または当該バインディングを修正するために設定されてもよい。クライアントは、同じことをするためにMBean APIsを呼び出すこともできる。一実施形態では、次のMBean APIsがそのようなバインディングをサポートするために設定されてもよい:
したがって、本発明に係る実施形態によると、ユーザは、展開時またはランタイム時に異なるバインディングにバインドされ得る単一のパラメータ化されたクエリテンプレートまたはビューテンプレートを書くことができる。ユーザは、内部で新しいクエリを生成し、それを実行する新しいバインディングを設定することができる。このクエリおよびビューのテンプレートバージョンは、いくつかの定数だけが異なるクエリを追加および/または削除するための効果的な方法を提供する。さらに、クエリおよびビューのそのようなパラメータ化またはテンプレートスタイルは、何百ものクエリを動的に修正/追加/削除するための非常にユーザフレンドリな方法を提供する。それは、CQLクエリを書くためのユーザフレンドリな方法を提供し、同様の多くのルールを作る際の使いやすさを提供し、そのようなルールの簡易な管理方法を提供する。
本発明のさらに他の局面では、イベントストリームを処理するためのパラメータ化されたクエリ内に存在するプレースホルダを判断するための技術を提供する。次に、プレースホルダのためのパラメータが判断されてもよい。これは、展開時(たとえば、上述したようにコンフィグファイル内で指定される)またはランタイム中に提供されてもよい。次に、プレースホルダをパラメータに置換することによって、クエリが、パラメータ化されたクエリから生成されてもよい。プレースホルダのためのパラメータセットが多数存在する場合には、多数のクエリが単一のパラメータ化されたクエリから生成されてもよい。次に、置換から生成されたクエリは、クエリに関する実行可能な命令を生成するように構成されているCQLエンジンに設定されてもよい。次に、実行可能な命令が、イベントストリームを処理するために実行されてもよい。
次に図1を参照すると、本発明に係る実施形態を具体化し得るシステム100の簡略ブロック図が示されている。図1に示されているように、システム100は、イベント処理サーバ102を含み、イベント処理サーバ102は、1つ以上の入力データまたはイベントストリーム104,106,および108を処理するように構成されている。ストリーム104,106,および108は、各種ソースから受信されてもよく、その各種ソースは、データベース、ファイル、メッセージサービス、さまざまなアプリケーション、さまざまな種類のセンサのような装置(たとえば、RFIDセンサ、温度センサなど)、ティッカー(ticker)などを含む。サーバ102は、プッシュ型機構、またはプル型機構または他の機構を介してストリームを受信してもよい。
データまたはイベントストリームは、リアルタイムな一連のイベントである。多数のイベントがストリーム内で受信されてもよい。したがって、データストリームはバインドされていないデータセットのストリームとして考えることができる。一実施形態では、データストリームは、一連の<tuple, timestamp>対である。タプルとはストリームのデータ部のことを言う。タプルは、テーブルのロー(row)と同様なものとして考えられてもよい。ストリーム内のタプルは、スキーマを有する。ストリームは、多数のタプルを含み得る。タイムスタンプは、データストリーム内のタプルについて順序を定義する。データストリーム内のタイムスタンプは、アプリケーションの時間の概念を反映し得る。たとえば、タイムスタンプは、イベントストリームを受信するシステム上のアプリケーションによってセットされ得る。受信システムは、たとえば、イベントストリームの構成と、タイムスタンプとしてアプリケーション時間またはシステム時間を利用するために用いられる機構とを定義するために用いられるCREATE STREAM DDLにおいて指定された場合には、アプリケーションによって構成されるように受信時にイベントをタイムスタンプしてもよい。他の実施形態では、タプルと関連付けられたタイムスタンプは、データイベントを送るアプリケーションの時間に対応していてもよい。タイムスタンプは、ストリームのスキーマの一部である。ストリーム内には1または多数のタプルが同じタイムスタンプで存在し得る。ストリーム内のタプルは、一連のイベントとして見ることができ、したがって、データストリームは、イベントストリームとも呼ばれる。そのため、イベントストリームは、各々が関連付けられたタイムスタンプに一連のイベントを含むと考えることができる。たとえば、イベントストリームは、センサから読み取られた10度、15度、20度などのような一連の温度と、関連付けられたタイムスタンプとを含んでいてもよい。このアプリケーションの目的のために、“タプル”および“イベント”という用語は互換的に使用されている。
システム100は、イベントストリームを処理するように構成されたイベント処理サーバ102を含む。イベント処理サーバ102は、1つ以上のイベントストリームを受信してもよい。図1に示すように、イベント処理サーバ102は、ストリーム104、106、および108を受信する。各々のイベントストリームは、1つ以上のイベントを含む。ストリーム内のイベントは、特定の時点で順にサーバ102によって受信される。サーバ102は、入力ストリーム上でさまざまな種類の処理を実行するように構成されている。本発明に係る実施形態に従うと、サーバ102は、サーバ102によって受信されたイベントストリーム内のイベントに基づいて、入力イベントストリーム内のパターンを検知するように構成されている。一実施形態では、サーバ102は、サーバ102がイベントを受信するときに分析されているストリームのイベント上でバックトラッキング処理を実行せずに、パターンマッチングを実行する。パターンマッチングは、入力ストリームに適用されるある種類の継続クエリを利用して実行されてもよい。サーバ102は、また、入力イベントストリーム上および他の操作上で他の継続クエリを実行するなど、入力ストリーム上で他の種類の処理を実行してもよい。イベント処理サーバの例としては、Oracle(登録商標)社のOracle Complex Event Processorがある。あるいは、MATCH_RECOGNIZEも、パターンマッチングを実行するために用いられてもよい。
図1に示された実施形態では、サーバ102は、パターンマッチングモジュール110を含み、パターンマッチングモジュール110は、1つ以上のイベントストリームのためのパターンマッチングに関連する処理を実行するように構成されている。図1に示すように、パターンマッチングモジュール110は、パターン入力インターフェイス112、クラステクニックデタミネータ(class-technique determinator)113、オートマトンジェネレータ(automaton generator)114、およびマッチャー(matcher)116を含む。パターン入力インターフェイス112は、イベントストリーム内でマッチさせる対象のパターンを指定する情報を受信するためのインターフェイスを提供する。パターン入力インターフェイス112は、マッチさせる対象の1つ以上のパターンを指定する情報を入力可能にするグラフィカル・ユーザ・インターフェイス、マッチさせる対象のパターンを指定するためのコマンドラインインターフェイス、または他のインターフェイスを提供してもよい。マッチさせる対象のパターンは、サーバ102のユーザによって指定されてもよい。マッチさせる対象のパターンを特定する情報は、他のソースから受信されてもよく、たとえば、他の構成要素もしくはイベント処理サーバ102のモジュール、または、他のシステムもしくはアプリケーションから受信されてもよい。
一実施形態では、マッチさせる対象のパターンは、正規表現を用いて指定される。正規表現は、マッチさせる対象のパターンを表す記号のストリング(相関名または相関変数とも称される)である。正規表現は、1つ以上の記号を用いて構築され、1つ以上の演算子を利用してもよい。演算子の例としては、連結(concatenation)演算子(たとえば、正規表現における記号間での“AND”演算子は、記号間のAND関係を示すために用いられてもよい)、代替演算子(たとえば、縦棒'|'は、記号に関するOR条件を示す正規表現において記号を分離してもよい)、1つ以上の限定記号、グループ化演算子(たとえば、丸括弧で示される)などを含むがこれらに限定されない。限定記号の例としては、限定記号が関連付けられる記号の0以上のオカレンス(occurrence)を意味するアスタリスク'*'、限定記号が関連付けられる記号の1以上のオカレンスを意味するプラス記号'+'、限定記号が関連付けられる記号の0または1のオカレンスを意味するクエスチョンマーク'?'、リラクタント(reluctant)限定記号などを含む。正規表現のための関連付けられたシンタックスを含む、利用され得る演算子および限定記号の例は、Fred Zemkeらによる“Pattern Matching in Sequence of Rows (12)”、ISO/IEC JTCi/SC32 WG3:URC-nnn、2007年7月31日付けANSI NCITS H2-2006-nnnにおいて提供および記載されている。その全内容は、すべての目的のために、引用により本明細書に援用される。
従来、正規表現は、主に、ストリング内のパターンを見つけるために利用されてきた。本発明に係る実施形態では、正規表現力は、イベント処理サーバ102で受信されるイベントストリーム内のパターンにマッチさせるために利用される。正規表現は、マッチさせる対象のパターンを特定するための単純、かつ簡潔、かつ柔軟性のある方法を提供する。図1に示される実施形態では、イベント処理サーバ102は、1以上のイベントストリーム内でマッチさせる対象の正規表現を指定するパターン情報118を受信してもよい。一実施形態では、パターンは、パターンマッチングモジュール110のパターン入力インターフェイス112を用いて指定されてもよい。
パターン情報118は、異なる言語を用いて設定されてもよい。一実施形態では、データベースをクエリするために一般に用いられるSQLのようなプログラミング言語が利用されてもよい。イベントストリームに関して、マッチさせる対象のパターンを表現するためのSQLが拡張されてもよい。たとえば、パターン情報118は、SQLクエリを指定してもよく、当該SQLクエリは、イベント処理サーバ102によって受信された1以上のイベントストリーム内においてマッチさせる対象のパターンを指定する正規表現を含む。
Oracleは、複合イベント処理(CEP)製品においてCQL言語(継続クエリ言語)をサポートする。CQLは、ストリーム処理のために拡張したSQLと極めて類似している。パターンマッチング構成は、イベントストリームに関してのパターンマッチング要件を特定する目的のために、CQLを拡張するためCQLにおいて採用されてきた正規表現(たとえば、Fred Zemkeらによる“Pattern Matching in Sequence of Rows (12)”、 ISO/IEC JTCi/SC32 WG3:URC-nnn、2007年7月31日付けANSI NCITS H2-2006-nnnに記載された構成であり、その全内容は、すべての目的のために、引用により本明細書に援用される)を介してパターンマッチングを指定するためにSQLを拡張するよう提案している。
典型的には、クエリパターンに関するパターンマッチングは、単一の入力ストリーム上でのみ行なわれる。また、パターンマッチングは、たとえば、CQLを用いて、多数のイベントストリーム上で実行されてもよい。一実施形態では、これは、まず関連するすべての入力ストリームのUNIONを実行することでなされてもよい。当該入力ストリーム上では、パターンマッチングは、中間ストリームに対応しているビューを定義する結果に伴ってなされるようになっており、マッチさせる対象のパターンがこの単一の中継ストリーム上で指定され得る。次に、そのパターンをビューに含まれているすべてのストリームにマッチさせる。
次に、図2Aを参照して、本発明に係る実施形態に従う、CEPにおいてパラメータ化されたクエリを実行する方法200を説明する。ブロック205のプロセスでは、1つ以上のバインド変数を含むクエリテンプレートが設定される。バインド変数に対応するパラメータセット(すなわち、バインド変数がバインドされたもの)が設定される(ブロック210のプロセス)。一実施形態では、パラメータセットが静的に(たとえば、コンフィグファイルを介して典型的には展開時になされる)またはランタイム時に動的に(たとえば、JMXもしくは他の機構を用いて)設定されてもよい。その結果、JMXを用いる動的プロビジョニングはランタイム中に利用され、また、それは、パラメータセットの削除のため、新しいパラメータセットの設定のためなどに利用され得る。
ブロック215のプロセスでは、クエリテンプレートがバインド変数の位置を判断するために解析される。一実施形態では、バインド変数は、たとえば、:1、:2、:3などで識別されてもよい。クエリ内のバインド変数の順序は、1、2、3などの順序でなくてもよい。その結果、バインド変数の当該判断された位置のマップが構築されてもよい(ブロック220のプロセス)。
ブロック225のプロセスでは、設定されたパラメータリストセットをスキャンして、対応するバインド変数にバインドされたパラメータセットを判断してもよく、それから、バインディングが起こってもよい(ブロック230のプロセス)。ブロック235のプロセスでは、バインド変数がパラメータセットに置換されてもよい。
図2Aの‘A’点から図2Bの‘A’点に移動して、本発明に係る実施形態に従うと、CEPにおいてパラメータ化されたクエリを実行する方法201が説明される。ブロック240の決定では、同じバインド変数セットに関する多数のパラメータセットが存在するかどうかを判断する。たとえば:
さらに、多数組のパラメータセットが同じバインド変数に対応していないと判断された場合、単一の新しいクエリが複数組のパラメータセットで生成される(ブロック245のプロセス)。多数のパラメータセットが同じバインド変数に対して設定されていると判断された場合、各々のパラメータのために、独立した新しいクエリのインスタンスが生成される(ブロック250のプロセス)。
したがって、ブロック255のプロセスで、インスタンスが生成されたクエリは、CEPサーバ内に注入される(クエリはCQLエンジンに送られる)。次に、CQLエンジンは、クエリ実行計画を構築し(ブロック260のプロセス)、ランタイム環境にクエリを継続クエリとして追加する(ブロック265のプロセス)。最後に、ブロック270のプロセスで、インスタンスが生成された1または複数のクエリが実行される。
次に図2Cを参照して、本発明に係る実施形態に従うCEPにおいてパラメータ化されたクエリを実行する方法202が説明される。ブロック275のプロセスで、新しいパラメータ(古いパラメータの代わりに)がバインドパラメータに対して指定されてもよい。そのような場合には、古いパラメータでインスタンスが生成されたクエリが特定される(ブロック280のプロセス)。
したがって、古いパラメータを用いて特定されたクエリは、ランタイム環境から削除される(ブロック285のプロセス)。ブロック290のプロセスで、ランタイムシステムに対して新しいパラメータセットを用いるクエリのインスタンスが生成される。上述したような処理は、隣接したパラメータセットを用いてされてもよい。たとえば、バインド変数の位置マップがすでに作成されている場合には、これまでのステップを繰り返す必要はなく、新しいパラメータセットがスキャンされ、置換が実行される処理が継続できる。要するに、終了するクエリは、新しいパラメータセットを有する、インスタンスが生成された新しいクエリに置換される。
さらに、パラメータセットは、クエリテンプレートを含むルールに拘束されてもよい。一実施形態では、ビュー定義(たとえば、CQLを用いてされる)は、バインド変数を用いてもよい。継続クエリ、“パラメータ化されたクエリ”、または“クエリテンプレート”のコンテキスト内でのパラメータ化は、少なくとも1つのバインド変数を有するクエリを含む。
次に、図3を参照して、本発明に係る実施形態に従うCQLおよびビジネスクエリのライフサイクルを表わすための方法300が説明される。ブロック305aでITロール(role)が作り出され、それは、プロジェクトリスト、パラメータセット、および条件305bを含む。さらに、ブロック305cで、ITユーザ/ビジネスユーザアナリストの共同ルールが作り出される。
ブロック310で、クエリおよびビューがパラメータ化される。たとえば、自然言語+0...1パラメータ化されたクエリ+0...nパラメータ化されたビュー、および自動ビュー/クエリ、従属トラッキング310aが、生成されてもよい。ブロック315で、ビジネステンプレートが、ビジネスアナリストロール315aのために作り出される。ブロック315bで、ハイパーリンクなどを介して新しいクエリのインスタンスが生成される。
したがって、ブロック320で、ビジネスクエリが作り出される。次に、ビジネスユーザロールは、クエリを単一の論理演算子としてみなし320a、CQLクエリおよびビューを修正でき320b、CQLクエリおよびビュー305に戻ることができる。
図4Aは、ハードコードされた(hard-coded)値に永続的にバインドされたクエリ405の例を含む。図4Bは、パラメータ化されたクエリ410、バインディング415、およびビジネスルール420を含み、図4Cは、テンプレート425、パラメータ化されたビュー430、およびパラメータ化されたクエリ435を含む。さらに、図4Dは、パラメータ化されたビューおよびクエリ440、テンプレート445、ならびにビジネスクエリ450を含む。
図4A〜図4Dでの情報を用いた一例は以下の通りである。
したがって、これらのクエリは、特定された統計値の合計と、イベント名E1、パスP1、および統計値countValueに対して、30分以内に2回以上、当該特定された統計値の合計が1000未満である時間とを返す。
次に、図5Aを参照して、本発明に係る実施形態に従うCEPにおいてパラメータ化されたクエリを実行するためのシステム500が説明される。一実施形態では、システム500は、CQLエンジン510およびコンフィグファイル520を有するCEPサーバ505を含んでもよい。さらに、CEPサーバ505は、ビジュアライザ525と通信する。
一実施形態では、CQLエンジン510は、すべてのクエリを同時に実行する。CQLエンジン510に対する実行計画は、結び付けられたノードセットを含み、すべてのクエリは、実行計画の一部であり、そのため、独立していない。したがって、CEPストリング置換は、あらゆる種類の型(タイプ)検査などを行なうことなく、バインド変数に対して設定されるパラメータセットにバインド変数を置き換えるために利用される。これは、バインド変数でも型検査などを通過する必要がある標準データベースとは異なる。結果として、CEPコンテキスト内のバインド変数は、より柔軟でより強力な解決手段を提供する。そして、当該バインド変数によりユーザは任意の述語を挿入することができる。したがって、CEP環境内でのバインド変数は、型がなくてもよい。
CQLエンジン510は、多数のCEPアプリケーション515a、515b〜515nを実行するように構成されている。たとえば、多数のCEPアプリケーションは書き込み可能であり、その各々は異なる処理を実行し、それらはすべて同じCEPサーバ505上に展開可能である。また、CEPサーバ505は、CQLエンジン510を含み、多数の展開されたCEPアプリケーション(515a、515b〜515n)を有することができる。
ビジュアライザ525は、ビジネスユーザがパラメータセットを設定できるインターフェイスである。さらに、コンフィグファイル520は、アプリケーション内のプロセッサに関連付けられている。コンフィグファイル520は、展開時、展開前、または展開後のいつであっても作り出すことができる。そして、CEPアプリケーション(515a、515bまたは515n)がランタイム環境内に存在する場合には、それは関連付けられたコンフィグファイル520を有していてもよい。当該コンフィグファイル520は、クエリテンプレート(すなわち、バインド変数を有するクエリ)、およびバインド変数が置換されたパラメータセットを特定する。
図5Bは、コンフィグファイル520の一実施形態を示している。コンフィグファイル520は、ファイルが関連付けられたアプリケーション520aの識別(identification)、プロセッサ520bの識別、ルール520cの識別、クエリテンプレート520d、パラメータセット520eの識別、およびバインディング520fを含んでもよい。コンフィグファイルの他の実施形態が用いられてもよい。
次に、図6を参照して、CEP内においてパラメータ化されたクエリのためのユーザインターフェイスの実施形態600が示されている。そのようなユーザインターフェイスの利点は、使いやすさを提供するというニーズを改善するための支援を含む。大抵のビジネスユーザは、クエリを書きたくない。たとえば、CQLはプログラマーではない人にとっては理解するのが難しいので、CEPの場合、ビジネスユーザのニーズを理解した上でIT部門の人がクエリを設計する。クエリはバインド変数を含んでいてもよい。クエリは、読みやすいフォーマット(たとえば、ビジネスユーザが理解しやすい英語版のクエリ)でビジネスユーザの目の触れるところとなる。英語版は、ランタイム時に実値をバインドするパラメータバインドセット(これは、URLリンクを介して示されてもよい)を含んでいてもよい。ランタイム時には、バインド変数が置換されるように設定されたパラメータ値で新しいクエリのインスタンスが生成され、インスタンスが生成されたクエリは、CEPシステム内に注入されて、実行される。これは、ユーザに対して使い易さを提供する。ビジネスユーザは、低水準言語のCQLを気にする必要はない。
図7は、本発明に係る実施形態に従って利用され得るシステム環境700の構成要素を示す簡略ブロック図である。図に示すように、システム環境700は、1以上のクライアントコンピューティング装置702、704、706、708を含み、これらは、ウェブブラウザ、または専用のクライアント(たとえば、Oracle Forms)などのクライアントアプリケーションを操作するように構成されている。さまざまな実施形態では、クライアントコンピューティング装置702、704、706、および708は、イベント処理システム712と情報をやり取りしてもよい。
クライアントコンピューティング装置702、704、706、708は、汎用のパーソナルコンピュータ(例として、Microsoft Windows(登録商標)および/またはApple Macintoshオペレーティングシステムのさまざまなバージョンを実行するパーソナルコンピュータおよび/またはラップトップコンピュータを含む)、携帯電話もしくはPDA(Microsoft Windows Mobileなどのソフトウェアを実行し、インターネット、電子メール、SMS、ブラックベリー(Blackberry)、またはその他の通信プロトコルを有効にする)、および/またはさまざまな市販のUNIX(登録商標)もしくはUNIXのようなオペレーティングシステム(さまざまなGNU/Linux(登録商標)オペレーティングシステムを含むがこれに限定されない)のいずれかを実行するワークステーションコンピュータであってもよい。あるいは、クライアントコンピューティング装置702、704、706、および708は、ネットワーク(たとえば、以下に示すネットワーク710)を介して通信可能なシンクライアント(thin-client)コンピュータ、インターネットを使用可能なゲーム機、および/またはパーソナルメッセージ(personal messaging)デバイスなどのその他の電子デバイスであってもよい。典型的なシステム環境700は、4つのクライアントコンピューティング装置を有することが示されているが、クライアントコンピューティング装置はいくつであってもよい。センサなどを有する装置のような他の装置が、システム712と情報をやり取りしてもよい。
システム環境700は、ネットワーク710を含んでいてもよい。ネットワーク710は、当業者によく知られており、さまざまな市販のプロトコル(TCP/IP、SNA、IPX、AppleTalkなどを含むがこれらに限定されない)のいずれかを用いたデータ通信をサポートできるネットワークであれば、どのような種類のネットワークであってもよい。単なる例として、ネットワーク710は、イーサネット(Ethernet)(登録商標)ネットワーク、トークンリング(Token-Ring)ネットワークなどのローカルエリアネットワーク(LAN)、ワイドエリアネットワーク、バーチャルネットワーク(バーチャルプライベートネットワーク(VPN)を含むがこれに限定されない)、インターネット、イントラネット、エクストラネット、公衆電話交換回線網(PSTN)、赤外線ネットワーク、ワイヤレスネットワーク(たとえば、IEEE 802.11プロトコル群のいずれかの下で動作するネットワーク、当該技術分野において公知のBluetooth(登録商標)プロトコル、および/またはその他のワイヤレスプロトコル)、および/またはこれらの任意の組み合わせ、および/または他のネットワークであってもよい。
システム712は、1以上のサーバコンピュータを含んでいてもよく、当該1以上のサーバコンピュータは、汎用コンピュータ、専用のサーバコンピュータ(例として、PCサーバ、UNIXサーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウント式(rack-mounted)のサーバなどを含む)、サーバファーム、サーバクラスタ、またはその他の適切な配置および/または組み合わせであってもよい。さまざまな実施形態では、システム712は、本願に記載されている1以上のサービスまたはソフトウェアアプリケーションを実行するように適合されていてもよい。
システム712は、上述したオペレーティングシステムのいずれかおよび任意の市販のサーバオペレーティングシステムを含むオペレーティングシステムを実行してもよい。また、システム712は、HTTPサーバ、FTPサーバ、CGIサーバ、Javaサーバ、およびデータベースサーバなどを含むさまざまな追加的なサーバアプリケーション、および/またはミッドティア(mid-tier)アプリケーションのいずれかを実行してもよい。典型的なデータベースサーバは、Oracle、Microsoft、Sybase、IBMなどから市販されているものを含むがこれらに限定されない。
また、システム環境700は、1以上のデータベース714および716を含んでいてもよい。データベース714および716は、さまざまな場所に存在していてもよい。例として、1以上のデータベース714および716は、システム712にローカルな(および/またはシステム712内に常駐している)記憶媒体に存在していてもよい。あるいは、データベース714および716は、システム712から離れており、ネットワークベースまたは専用回線を介してシステム712と通信してもよい。一連の実施形態では、データベース714および716は、当業者によく知られているストレージエリアネットワーク(SAN)に存在してもよい。同様に、システム712による機能を実行するために必要なあらゆるファイルは、必要に応じて、システム712にローカルにおよび/またはリモートで記憶されてもよい。一連の実施形態では、データベース714および716は、SQLフォーマットのコマンドに応答してデータを記憶し、更新し、読み出すように適合されているOracle lOgおよび1lgのようなリレーショナルデータベースを含んでもよい。
図8は、本発明に係る実施形態に従って利用され得るコンピュータシステム800の簡略ブロック図である。たとえば、システム800は、図1のイベント処理サーバ102を実行するために利用されてもよい。コンピュータシステム800は、バス824を介して電気的に接続され得たハードウェア構成要素を含んでいることが示されている。ハードウェア構成は、1以上の中央処理部(CPU)802、1以上の入力装置804(たとえば、マウス、キーボードなど)、および1以上の出力装置806(たとえば、ディスプレイ装置、プリンタなど)を含んでいてもよい。また、コンピュータシステム800は、1以上の記憶装置808を含んでいてもよい。例として、記憶装置808は、ディスクドライブ、光学式記憶装置などの装置を含み、さらに、プログラム可能で、一瞬で更新可能で(flash-updateable)、および/またはそれと同じようなことが可能であるランダムアクセスメモリ(RAM)および/またはリードオンリーメモリ(ROM)などのソリッドステート(solid-state)記憶装置を含んでいてもよい。
コンピュータシステム800は、さらに、コンピュータ可読記憶媒体リーダ812、通信サブシステム814(たとえば、モデム、ネットワークカード(無線もしくは有線)、赤外線通信装置など)、ワーキングメモリ818を含んでいてもよく、ワーキングメモリ818は、上述したようなRAMおよびROM装置を含んでいてもよい。いくつかの実施形態では、コンピュータシステム800は、デジタルシグナルプロセッサ(DSP)、専用のプロセッサ、および/またはそれと同様のものを含み得る処理加速部816を含んでいてもよい。
コンピュータ可読記憶媒体リーダ812は、さらに、コンピュータ可読記憶媒体810に接続され得る。コンピュータ可読記憶媒体810は、(任意に、記憶装置808と組み合わせて)リモート式、ローカル式、固定式および/または着脱交換式の記憶装置、および、一時的および/またはより永続的にコンピュータ可読情報を収容するための記憶媒体を総合的に意味している。通信サブシステム814は、ネットワーク710および/またはシステム環境700に関する上述したその他のコンピュータと、データをやり取りすることが可能であってもよい。
また、コンピュータシステム800は、ワーキングメモリ818内に現在位置しているように示されているソフトウェア構成要素を含んでいてもよい。ワーキングメモリ818は、オペレーティングシステム820、および/または、アプリケーションプログラム(クライアントアプリケーション、ウェブブラウザ、ミッドティアアプリケーション、RDBMSなどであってもよい)などのその他のコード822を含む。典型的な実施形態では、ワーキングメモリ818は、実行可能なコードと、イベントを処理し上述したようなデータカートリッジに関連する処理を実行するために利用される関連データ構造(キャッシュなど)とを含んでいてもよい。代替の実施形態に係るコンピュータシステム800は、上述したものからの多くの変形例を有し得るということが理解されよう。
たとえば、カスタマイズされたハードウェアが用いられてもよく、および/または特定の構成要素は、ハードウェア内、ソフトウェア内(アプレットなどのポータブルソフトウェアを含む)またはそれら両方で実行されてもよい。さらに、ネットワーク入力/出力装置などの他のコンピューティング装置への接続が利用されてもよい。
コードまたはコードの一部を収容するための記憶媒体およびコンピュータ可読媒体は、当該技術分野において公知のは利用されているあらゆる適切な媒体を含み得る。適切な媒体は記憶媒体および通信媒体を含み、その記憶媒体および通信媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくはその他のメモリ技術、CD−ROM、DVDもしくはその他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくはその他の磁気記憶装置、または、所望の情報を格納もしくは送信するために利用可能でありコンピュータによってアクセス可能なその他の媒体を含む、コンピュータ可読命令、データ構造、プログラムモジュール、もしくはその他のデータなどの情報を格納しおよび/もしくは送信するための方法もしくは技術において実行される揮発的および不揮発的、着脱可能および着脱不可能な媒体などであるが、それらに限定されない。
本発明に係る具体的な実施形態が説明されてきたが、さまざまな修正、変更、代替構成、および均等物もまた本発明の範囲内に包含される。本発明に係る実施形態は、ある特定のデータ処理環境内での動作に限定されるものではなく、複数のデータ処理環境内で動作可能である。さらに、本発明に係る実施形態は、特定の一連のトランザクションおよびステップを用いて説明されてきたが、本発明の範囲が、記載された一連のトランザクションおよびステップに限定されないということは当業者にとって明らかであろう。
さらに、本発明に係る実施形態は、特定のハードウェアおよびソフトウェアの組み合わせを用いて説明されてきたが、他のハードウェアおよびソフトウェアの組み合わせも、本発明の範囲内であるということが認識されるであろう。本発明に係る実施形態は、ハードウェアのみで実行されてもよいし、ソフトウェアのみで実行されてもよいし、それらの組み合わせを用いて実行されてもよい。
したがって、明細書および図面は、限定的意味ではなく例示のためであると見なされるべきである。しかしながら、特許請求の範囲に記載のより広い精神および範囲から逸脱することなく追加、置換、削除、その他の修正および変更が可能であることは明らかであろう。

Claims (10)

  1. 複合イベント処理(CEP)内でパラメータ化されたクエリを設定するためのシステムであって、
    メモリと、
    前記メモリに結合されたプロセッサとを備え、
    前記メモリは、命令セットを内部に格納させており、前記命令セットは、前記プロセッサによって実行されると、前記プロセッサに、
    1つ以上のバインド変数を含むクエリテンプレートを設定させ、
    前記1つ以上のバインド変数に対応するパラメータセットを設定させ、
    前記1つ以上のバインド変数の位置を判断するために前記クエリテンプレートを解析させ、
    設定された前記パラメータセットをスキャンして、どの前記パラメータセットが前記1つ以上のバインド変数にバインドされるのかを判断させ、
    前記パラメータセットにバインドされると判断された前記1つ以上のバインド変数をバインドさせ、
    前記クエリテンプレートに、タイプを有しない前記1つ以上のバインド変数に基づきユーザの述語を挿入させ、
    バインドされた前記1つ以上のバインド変数を対応する前記パラメータセットに置換させ
    イベントストリームを処理するためのパラメータ化されたクエリ内で生じるプレースホルダを判断させ、
    ランタイム時に、判断された前記プレースホルダを、前記パラメータセットに対応するパラメータ値に置換させ、
    前記バインド変数の置換と前記プレースホルダの置換に基づき、1以上の変数が異なる複数のクエリを生成させる、システム。
  2. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、前記1つ以上のバインド変数の前記判断された位置のマップを構築させ、
    前記1つ以上のバインド変数を対応する前記パラメータセットに置換させることは、前記1つ以上のバインド変数の前記判断された位置のマップを用いて、バインドされた前記パラメータセットを前記クエリテンプレート内に置くことをさらに含み、
    前記1つ以上のバインド変数に対応する前記パラメータセットを設定することは、静的または動的に実行される、請求項1に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  3. 前記1つ以上のバインド変数に対応する前記パラメータセットを設定することは、前記クエリテンプレートの展開時にコンフィグファイルを用いることで静的に実行される、請求項2に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  4. 前記1つ以上のバインド変数に対応する前記パラメータセットを設定することは、モジュールマネージメントソリューションを用いることで動的に実行され、
    コンフィグファイルは、アプリケーションアソシエーション、プロセッサアソシエーション、クエリルール、前記クエリテンプレート、前記パラメータセット、または前記バインディングのうち、1つ以上のものを含む、請求項2に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  5. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、
    前記1つ以上のバインド変数が置換された前記パラメータセットを含む前記クエリテンプレートに基づいて、新しいクエリのインスタンスを生成させ、
    ランタイムシステムのために新しい前記パラメータセットを用いて前記新しいクエリのインスタンスを生成させ、
    前記新しいクエリをCEPサーバに注入させ、
    前記新しいクエリに基づいて、クエリ実行計画を構築させ、
    継続クエリとしてランタイム環境に前記クエリ実行計画を追加させ、
    前記継続クエリを実行させる、請求項1に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  6. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、
    多数のパラメータセットが同じバインド変数に対応しているということを判断させ、
    同じ前記バインド変数に対応している前記多数のパラメータセットの各々について、独立した新しいクエリのインスタンスを生成させる、請求項1に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  7. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、
    前記パラメータセットをストリングに変換させ、
    前記パラメータセットの前記ストリングを確認して前記パラメータセットのフォームを判断させ、
    前記パラメータセットの判断されたタイプと対応するバインド変数のタイプとを比較させ、
    対応する前記バインド変数および前記パラメータセットの前記タイプは、INT、FLOAT、LONG、BIGDECIMAL、DOUBLE、およびSTRINGのうち、1つ以上のものを含み、
    前記プロセッサに、さらに、
    前記対応するバインド変数の前記タイプにマッチする前記パラメータセットの判断された前記タイプに応じて、前記パラメータセットを検証させる、請求項1に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  8. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、
    新しいパラメータセットがバインディングのために指定されていることを判断させ、
    新しいパラメータセットで指定される前に、パラメータセットを用いてインスタンスが生成されたクエリを特定させ、
    新しいパラメータセットで指定される前に、パラメータセットを用いてインスタンスが生成された前記クエリを削除させる、請求項1に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  9. 前記命令セットは、前記プロセッサによってさらに実行されると、前記プロセッサに、
    前記クエリを生成させ、
    前記イベントストリームを処理させ、
    前記システムは、CQLエンジンを含むCEPサーバをさらに備え、
    前記CQLエンジンは、複数のCEPアプリケーションのインスタンスを生成し、
    前記CEPサーバと通信するビジュアライザをさらに備え、
    前記ビジュアライザは、処理された前記イベントストリームからの結果情報を表示するように構成されている、請求項に記載のCEP内でパラメータ化されたクエリを設定するためのシステム。
  10. コンピュータに、複合イベント処理(CEP)内でパラメータ化されたクエリを設定する方法を実行させるためのプログラムであって、
    前記方法は、
    1つ以上のバインド変数を含むクエリテンプレートを設定し、
    前記1つ以上のバインド変数に対応するパラメータセットを設定し、
    前記1つ以上のバインド変数の位置を判断するために前記クエリテンプレートを解析し、
    設定された前記パラメータセットをスキャンして、どの前記パラメータセットが前記1つ以上のバインド変数にバインドされるのかを判断し、
    前記パラメータセットにバインドされると判断された前記1つ以上のバインド変数をバインドし、
    前記クエリテンプレートに、タイプを有しない前記1つ以上のバインド変数に基づきユーザの述語を挿入し、
    バインドされた前記1つ以上のバインド変数を対応する前記パラメータセットに置換し、
    イベントストリームを処理するためのパラメータ化されたクエリ内で生じるプレースホルダを判断し、
    ランタイム時に、判断された前記プレースホルダを、前記パラメータセットに対応するパラメータ値に置換し、
    前記バインド変数の置換と前記プレースホルダの置換に基づき、1以上の変数が異なる複数のクエリを生成させる、プログラム。
JP2013529376A 2010-09-17 2011-09-16 複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート Active JP5864583B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US38418210P 2010-09-17 2010-09-17
US61/384,182 2010-09-17
US13/193,377 2011-07-28
US13/193,377 US8713049B2 (en) 2010-09-17 2011-07-28 Support for a parameterized query/view in complex event processing
PCT/US2011/052019 WO2012037511A1 (en) 2010-09-17 2011-09-16 Support for a parameterized query/view in complex event processing

Publications (2)

Publication Number Publication Date
JP2013540308A JP2013540308A (ja) 2013-10-31
JP5864583B2 true JP5864583B2 (ja) 2016-02-17

Family

ID=44720152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013529376A Active JP5864583B2 (ja) 2010-09-17 2011-09-16 複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート

Country Status (5)

Country Link
US (2) US8713049B2 (ja)
EP (1) EP2616965B1 (ja)
JP (1) JP5864583B2 (ja)
CN (1) CN106599164B (ja)
WO (1) WO2012037511A1 (ja)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9305238B2 (en) * 2008-08-29 2016-04-05 Oracle International Corporation Framework for supporting regular expression-based pattern matching in data streams
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
US9189280B2 (en) 2010-11-18 2015-11-17 Oracle International Corporation Tracking large numbers of moving objects in an event processing 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)
US9329975B2 (en) 2011-07-07 2016-05-03 Oracle International Corporation Continuous query language (CQL) debugger in complex event processing (CEP)
US9213735B1 (en) * 2012-01-25 2015-12-15 Google Inc. Flow control in very large query result sets using a release message to confirm that a client computer is ready to receive the data associated with a data collection operation
US9330117B2 (en) * 2012-06-08 2016-05-03 24/7 Customer, Inc. Business rules manager
US9002822B2 (en) * 2012-06-21 2015-04-07 Sap Se Cost monitoring and cost-driven optimization of complex event processing system
US9002823B2 (en) * 2012-06-28 2015-04-07 Sap Se Elastic complex event processing
US9836509B2 (en) 2012-09-20 2017-12-05 Sap Se Generic query templates for complex event processing and data stream systems
US20140082013A1 (en) * 2012-09-20 2014-03-20 Sap Ag Query templates for queries in data stream management systems
US9563663B2 (en) 2012-09-28 2017-02-07 Oracle International Corporation Fast path evaluation of Boolean predicates
US9262479B2 (en) 2012-09-28 2016-02-16 Oracle International Corporation Join operations for continuous queries over archived views
US9020840B2 (en) * 2012-10-19 2015-04-28 International Business Machines Corporation System and method for custom-fitting services to consumer requirements
US10956422B2 (en) 2012-12-05 2021-03-23 Oracle International Corporation Integrating event processing with map-reduce
US9098587B2 (en) 2013-01-15 2015-08-04 Oracle International Corporation Variable duration non-event pattern matching
US10298444B2 (en) 2013-01-15 2019-05-21 Oracle International Corporation Variable duration windows on continuous data streams
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
US9934279B2 (en) 2013-12-05 2018-04-03 Oracle International Corporation Pattern matching across multiple input data streams
EP2887236A1 (en) * 2013-12-23 2015-06-24 D square N.V. System and method for similarity search in process data
JP6167187B2 (ja) * 2013-12-25 2017-07-19 株式会社日立製作所 クエリ生成方法及びクエリ生成装置
US9652497B2 (en) * 2014-04-23 2017-05-16 International Business Machines Corporation Processing queries using hybrid access paths
US9921881B2 (en) * 2014-05-27 2018-03-20 Sybase, Inc. Optimizing performance in CEP systems via CPU affinity
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
US10120907B2 (en) 2014-09-24 2018-11-06 Oracle International Corporation Scaling event processing using distributed flows and map-reduce operations
US9886486B2 (en) 2014-09-24 2018-02-06 Oracle International Corporation Enriching events with dynamically typed big data for event processing
US20160140190A1 (en) * 2014-11-04 2016-05-19 Spatial Information Systems Research Limited Data representation
US10810200B2 (en) 2015-01-07 2020-10-20 International Business Machines Corporation Technology for join processing
US20160259825A1 (en) * 2015-03-06 2016-09-08 Dell Products L.P. Discovery of potential problematic execution plans in a bind-sensitive query statement
US10345783B2 (en) 2015-04-27 2019-07-09 Honeywell International Inc. Auto binding of templates into exiting systems
US10341432B2 (en) 2015-04-27 2019-07-02 Honeywell International Inc. System for optimizing web page loading
WO2017018901A1 (en) 2015-07-24 2017-02-02 Oracle International Corporation Visually exploring and analyzing event streams
WO2017037773A1 (ja) * 2015-08-28 2017-03-09 株式会社日立製作所 クエリ開発支援方法及びクエリ開発支援装置
US10936600B2 (en) 2015-10-23 2021-03-02 Oracle International Corporation Sensor time series data: functional segmentation for effective machine learning
US10318528B2 (en) * 2016-02-25 2019-06-11 Microsoft Technology Licensing, Llc Query response using mapping to parameterized report
CN107800490B (zh) * 2016-08-29 2021-06-11 大唐联仪科技有限公司 一种参数处理方法和系统
US10628424B2 (en) * 2016-09-15 2020-04-21 Oracle International Corporation Graph generation for a distributed event processing system
US10747592B2 (en) * 2016-12-09 2020-08-18 Sas Institute Inc. Router management by an event stream processing cluster manager
CA3009354C (en) * 2016-12-09 2019-01-08 Sas Institute Inc. Event stream processing cluster manager
US10642805B1 (en) * 2016-12-12 2020-05-05 Amazon Technologies, Inc. System for determining queries to locate data objects
US10642589B2 (en) * 2017-03-13 2020-05-05 Memsql, Inc. Extensibility in a database system
EP3407210A1 (en) * 2017-05-22 2018-11-28 Fujitsu Limited Apparatus and method for generating a multiple-event pattern query
US10346142B1 (en) * 2017-12-21 2019-07-09 Sas Institute Inc. Automated streaming data model generation
CN108304517A (zh) * 2018-01-23 2018-07-20 西南大学 基于复杂事件处理系统的高效嵌套查询方法
US11176183B2 (en) * 2018-03-05 2021-11-16 Honeywell International Inc. System and method to configure a flow algorithm automatically by using a primary element data sheet in multivariable smart line transmitters
CN110969001B (zh) * 2018-09-27 2023-05-02 阿里巴巴集团控股有限公司 反馈信息的生成方法及装置、存储介质、处理器和终端
EP3796167B1 (en) * 2019-09-23 2023-05-03 SAS Institute Inc. Router management by an event stream processing cluster manager
CN111880977B (zh) * 2020-07-16 2022-02-08 北京天维信通科技有限公司 故障自愈方法和装置、设备及存储介质
US20220035661A1 (en) * 2020-07-30 2022-02-03 Fujitsu Limited Task generation
JPWO2022054269A1 (ja) * 2020-09-14 2022-03-17
US20220310268A1 (en) * 2021-03-26 2022-09-29 Oracle International Corporation System and method for use of pattern detection in assessing self-reported symptom data
US11550643B1 (en) 2021-08-06 2023-01-10 Sas Institute Inc. Automated streaming data model generation with parallel processing capability

Family Cites Families (365)

* 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
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
US5937401A (en) 1996-11-27 1999-08-10 Sybase, Inc. Database system with improved methods for filtering duplicates from a tuple stream
US5937195A (en) 1996-11-27 1999-08-10 Hewlett-Packard Co Global control flow treatment of predicated code
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
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
US6112198A (en) 1997-06-30 2000-08-29 International Business Machines Corporation Optimization of data repartitioning during parallel query optimization
US6081801A (en) 1997-06-30 2000-06-27 International Business Machines Corporation Shared nothing parallel execution of procedural constructs in SQL
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
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
US6507834B1 (en) 1999-12-22 2003-01-14 Ncr Corporation Method and apparatus for parallel execution of SQL from stored procedures
US6594651B2 (en) 1999-12-22 2003-07-15 Ncr Corporation Method and apparatus for parallel execution of SQL-from within user defined functions
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
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
AU2001239998A1 (en) 2000-02-28 2001-09-12 Fibercycle Networks, Inc. System and method for high speed string matching
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
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
US7076647B2 (en) * 2000-06-09 2006-07-11 Hewlett-Packard Development Company, L.P. Dynamic kernel tunables
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
JP4259864B2 (ja) 2000-12-15 2009-04-30 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー エンティテイを検索する方法
US7062749B2 (en) 2000-12-15 2006-06-13 Promenix, Inc. Measuring, monitoring and tracking enterprise communications and processes
US7185232B1 (en) 2001-02-28 2007-02-27 Cenzic, Inc. Fault injection methods and apparatus
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
WO2002071260A1 (en) 2001-03-01 2002-09-12 Aalborg Universitet Adaptable query optimization and evaluation in temporal middleware
GB2377038A (en) 2001-04-10 2002-12-31 I2 Ltd Method for identifying patterns in sequential event streams
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
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
CA2374271A1 (en) 2002-03-01 2003-09-01 Ibm Canada Limited-Ibm Canada Limitee Redundant join elimination and sub-query elimination using subsumption
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
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
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
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
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
US7653645B1 (en) 2002-10-29 2010-01-26 Novell, Inc. Multi-epoch method for saving and exporting file system events
US7213040B1 (en) 2002-10-29 2007-05-01 Novell, Inc. Apparatus for policy based storage of file data and meta-data changes over time
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
US7392239B2 (en) 2003-04-14 2008-06-24 International Business Machines Corporation System and method for querying XML 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
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
US7386568B2 (en) 2003-05-01 2008-06-10 Oracle International Corporation Techniques for partial rewrite of XPath queries in a relational database
US7546284B1 (en) 2003-06-11 2009-06-09 Blue Titan Software, Inc. Virtual message persistence service
US7519577B2 (en) 2003-06-23 2009-04-14 Microsoft Corporation Query intermediate language method and system
US7146352B2 (en) 2003-06-23 2006-12-05 Microsoft Corporation Query optimizer system and method
CA2433750A1 (en) 2003-06-27 2004-12-27 Ibm Canada Limited - Ibm Canada Limitee Automatic collection of trace detail and history data
US7430549B2 (en) 2003-07-07 2008-09-30 Netezza Corporaton Optimized SQL code generation
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
WO2005010727A2 (en) 2003-07-23 2005-02-03 Praedea Solutions, Inc. Extracting data from semi-structured text documents
US7873645B2 (en) 2003-09-05 2011-01-18 Oracle International Corporation Method and mechanism for handling arbitrarily-sized XML in SQL operator tree
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
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
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
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
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
GB0420097D0 (en) 2004-09-10 2004-10-13 Cotares Ltd Apparatus for and method of providing data to an external application
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
WO2006047654A2 (en) 2004-10-25 2006-05-04 Yuanhua Tang Full text query and search systems and methods of use
US20080077570A1 (en) 2004-10-25 2008-03-27 Infovell, Inc. Full Text Query and Search Systems and Method 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
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
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
JP4687253B2 (ja) 2005-06-03 2011-05-25 株式会社日立製作所 ストリームデータ処理システムのクエリ処理方法
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
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
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
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
WO2007113533A1 (en) 2006-03-31 2007-10-11 British Telecommunications Public Limited Company Xml-based transfer and a local storage of java objects
US7644066B2 (en) 2006-03-31 2010-01-05 Oracle International Corporation Techniques of efficient XML meta-data query using XML table index
CN101060422A (zh) * 2006-04-17 2007-10-24 华为技术有限公司 一种查询和修改cpe参数的方法
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
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
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 한국전자통신연구원 사용자 정의 공유 트리거를 이용한 데이터 스트림과 저장데이터에 대한 통합 연속 질의 처리 시스템 및 그 방법
CN101136906B (zh) * 2006-08-31 2010-07-21 华为技术有限公司 移动IPv6中的通讯方法和移动IPv6通讯系统
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
US7988817B2 (en) 2006-11-10 2011-08-02 Adp Engineering Co., Ltd. Lift pin driving device and a flat panel display manufacturing apparatus having same
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
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
US8370812B2 (en) 2007-04-02 2013-02-05 International Business Machines Corporation Method and system for automatically assembling processing graphs in information processing systems
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
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 会議可視化システム、会議可視化方法、及び集計処理サーバ
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
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
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
US7979420B2 (en) 2007-10-16 2011-07-12 Oracle International Corporation Handling silent relations in a data stream management system
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
US8335767B2 (en) 2007-10-17 2012-12-18 Oracle International Corporation Maintaining and utilizing SQL execution plan histories
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
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
US8521867B2 (en) 2007-10-20 2013-08-27 Oracle International Corporation Support for incrementally processing user defined aggregations in a data stream management system
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
WO2009114615A1 (en) * 2008-03-11 2009-09-17 Virtual Agility, Inc. Techniques for integrating parameterized information request into a system for collaborative work
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
US9489495B2 (en) 2008-02-25 2016-11-08 Georgetown University System and method for detecting, collecting, analyzing, and communicating event-related information
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
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
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
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
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
US8572103B2 (en) * 2008-09-29 2013-10-29 Sap Ag Method and system for benchmarking RFID data against SLA data
US20100094838A1 (en) 2008-10-10 2010-04-15 Ants Software Inc. Compatibility Server for Database Rehosting
JP5465413B2 (ja) 2008-10-29 2014-04-09 株式会社日立製作所 ストリームデータ処理方法、及びそのシステム
US8296303B2 (en) 2008-11-20 2012-10-23 Sap Ag Intelligent event query publish and subscribe system
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
US8145859B2 (en) 2009-03-02 2012-03-27 Oracle International Corporation Method and system for spilling from a queue to a persistent store
US8935293B2 (en) 2009-03-02 2015-01-13 Oracle International Corporation Framework for dynamically generating tuple and page classes
US8352517B2 (en) 2009-03-02 2013-01-08 Oracle International Corporation Infrastructure for spilling pages to a persistent store
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
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
US8387076B2 (en) 2009-07-21 2013-02-26 Oracle International Corporation Standardized database connectivity support for an event processing server
US8321450B2 (en) 2009-07-21 2012-11-27 Oracle International Corporation Standardized database connectivity support for an event processing server in an embedded context
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
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 株式会社日立製作所 ストリームデータ処理システム、ストリームデータ処理方法及びストリームデータ処理プログラム
US8204873B2 (en) 2009-08-26 2012-06-19 Hewlett-Packard Development Company, L.P. System and method for query expression optimization
CN102045162A (zh) * 2009-10-16 2011-05-04 电子科技大学 一种三模态生物特征持证人身份鉴别系统及其控制方法
US8195648B2 (en) 2009-10-21 2012-06-05 Microsoft Corporation Partitioned query execution in event processing systems
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
US8959106B2 (en) 2009-12-28 2015-02-17 Oracle International Corporation Class loading using java data cartridges
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
US8484243B2 (en) 2010-05-05 2013-07-09 Cisco Technology, Inc. Order-independent stream query processing
US8762297B2 (en) 2010-05-17 2014-06-24 Microsoft Corporation Dynamic pattern matching over ordered and disordered data streams
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
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
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
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
US9965520B2 (en) 2011-06-17 2018-05-08 Microsoft Corporation Efficient logical merging over physically divergent streams
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
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
US20130332240A1 (en) 2012-06-08 2013-12-12 University Of Southern California System for integrating event-driven information in the oil and gas fields
US9563663B2 (en) 2012-09-28 2017-02-07 Oracle International Corporation Fast path evaluation of Boolean predicates
US9262479B2 (en) 2012-09-28 2016-02-16 Oracle International Corporation Join operations for continuous queries over archived views
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
US9098587B2 (en) 2013-01-15 2015-08-04 Oracle International Corporation Variable duration non-event pattern matching
US10298444B2 (en) 2013-01-15 2019-05-21 Oracle International Corporation Variable duration windows on continuous data streams
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

Also Published As

Publication number Publication date
US8713049B2 (en) 2014-04-29
CN106599164A (zh) 2017-04-26
US20140136514A1 (en) 2014-05-15
EP2616965A1 (en) 2013-07-24
CN106599164B (zh) 2020-03-03
JP2013540308A (ja) 2013-10-31
US9110945B2 (en) 2015-08-18
EP2616965B1 (en) 2019-07-24
WO2012037511A1 (en) 2012-03-22
US20120072455A1 (en) 2012-03-22

Similar Documents

Publication Publication Date Title
JP5864583B2 (ja) 複合イベント処理におけるパラメータ化されたクエリ/ビューへのサポート
US11741396B1 (en) Efficient command execution using aggregated compute units
US11567959B2 (en) Self-contained files for generating a visualization of query results
US8447744B2 (en) Extensibility platform using data cartridges
US11782987B1 (en) Using an augmented process model to track process instances
US11651012B1 (en) Coding commands using syntax templates
US8959106B2 (en) Class loading using java data cartridges
US20130227573A1 (en) Model-based data pipeline system optimization
GB2450989A (en) Graphical user interface tool
AU2017254893A1 (en) Adapting database queries for data virtualization over combined database stores
JP2006318146A (ja) 情報管理システム
US20230015186A1 (en) Partially typed semantic based query execution optimization
CN103189866A (zh) 复杂事件处理中对于参数化的查询/视图的支持
US10534588B2 (en) Data processing simulator with simulator module and data elements
US10853366B2 (en) Cooperative expression visitors
JP2016194907A (ja) キャッシュメモリを更新する装置、プログラム、及び方法
US11977523B1 (en) Enhanced data extraction via efficient extraction rule matching

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151118

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: 20151215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151224

R150 Certificate of patent or registration of utility model

Ref document number: 5864583

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250