JP7023718B2 - リアルタイムデータストリームに対して実行するためのクエリの選択 - Google Patents
リアルタイムデータストリームに対して実行するためのクエリの選択 Download PDFInfo
- Publication number
- JP7023718B2 JP7023718B2 JP2017567783A JP2017567783A JP7023718B2 JP 7023718 B2 JP7023718 B2 JP 7023718B2 JP 2017567783 A JP2017567783 A JP 2017567783A JP 2017567783 A JP2017567783 A JP 2017567783A JP 7023718 B2 JP7023718 B2 JP 7023718B2
- Authority
- JP
- Japan
- Prior art keywords
- query
- data
- component
- graph
- execution
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本願は、データストリーム、とりわけリアルタイムデータストリームに対して実行するためのクエリを選択するためのコンピュータシステム、方法、及び機械可読ハードウェア記憶域に関する。とりわけ実装形態は、データ源の分散ネットワークから生じ得るデータストリームに対して実行される複数のアクティブクエリを実装するデータフローグラフベースの計算に関する。
多くのネットワーク化されたデータ処理システムは意思決定のために重要情報への適時のアクセスを必要とする。かかる要件を満たすための従来の手法は、データウェアハウス、データマート、及びレポーティングアプリケーションを構築することである。これらの手法は、パターン又は条件を検索しながら連続して到着するデータストリームをモニタすることができないので、不正検出、サービスモニタリング、ゲーム、リアルタイムトレンディング等、真にリアルタイムのアプリケーションのための厳格なサービスレベル合意書(SLA)の要件を満たすことができなかった。
一実装形態では、クエリが実行されているとき、クエリの(例えばほぼリアルタイムの)中間結果を与えるために(例えばほぼリアルタイムの)データストリーム内の様々な場所に位置するデータ項目に対してクエリを実行するためのコンピュータによって実装される方法が、任意選択的に2つ以上のデータ項目が2つ以上のデータ項目のそれぞれに対してほぼリアルタイムでアクセスされる状態で、ストリーム内の様々な場所に位置するデータ項目の2つ以上に対するクエリを1つ又は複数のコンピュータシステムによって時々(例えば周期的に)実行すること、クエリの実行結果を示す情報を生成すること、クエリが実行され続けるとき、(例えばほぼリアルタイムの)データストリーム内で前に登場したデータ項目に対してクエリを実行した過去の結果とその結果を集約することによってクエリ実行の中間結果を生成すること、及びクエリの実行が完了する前にクエリ実行の中間結果を1つ又は複数のクライアント装置に伝送することを含む。動作中にシステムに特定の操作又は動作を実行させるソフトウェア、ファームウェア、ハードウェア、又はそれらの組合せをシステム上にインストールすることにより、それらの動作を実行するように1台又は複数台のコンピュータのシステムを構成することができる。データ処理機器によって実行されるとき機器に特定の操作又は動作を実行させる命令を含めることにより、それらの動作を実行するように1つ又は複数のコンピュータプログラムを構成することができる。
本開示と合致するシステムは、リアルタイムトランザクショントラッカ(RTTT)を実装する。概して、RTTTは長い(且つ未知の)期間にわたってデータストリームから情報を得るための操作(例えばクエリ)を実装するソフトウェアプログラムである。RTTTは、リアルタイムアプリケーション内のクエリのアドホックモニタリングを可能にする。以下で更に説明するように、RTTTは動的に追加される複数のクエリを実行することも支援し、部分結果の可視性ももたらす。本明細書で使用するとき、「リアルタイム」は、これだけに限定されないが、ほぼリアルタイム及び実質的にリアルタイムを含み、その何れについてもデータが受信され又はアクセスされるときとそのデータの処理が実際に行われるときとの間に時間のずれがあり得るが、データはデータが受信されるとき依然として実時間で(例えば継続的に又は周期的に)処理される。RTTTを使用し、利用者はリアルタイムでデータストリームに対して(例えば同時に)行われる操作(例えばクエリ)を規定することができる。RTTTは実行されるクエリの中間結果を生成し、実行されるクエリの新たなその後の結果で中間結果を(例えば周期的に)更新する。概して、中間結果はクエリの実行が完了する前に生じるクエリの実行結果を含む。RTTTは、実行するための新たなクエリを(任意の時点において)(例えば周期的に)生成するための、及び/又はデータストリームに対して規定の操作(例えばクエリ)を(所望のやり方で、例えばリアルタイムで)システムによって行うことができるかどうかのフィードバックを利用者に与えるためのインタフェースも利用者に提供する。以下で更に説明するように、利用者はクエリを自在に停止し又は終了することもできる。
図10Aは、主要素の相互関係を示す本発明の一実施形態のブロック図である。グラフィック開発環境(GDE)1002は、実行可能グラフを作成し、グラフ成分のパラメータを定めるためのユーザインタフェースを提供する。GDEは、例えば本発明の譲受人から入手可能なCO>OPERATING SYSTEM(登録商標)のGDEとすることができる。GDE1002は、リポジトリ1004及び並列オペレーティングシステム1006と通信する。リポジトリ1004及び並列オペレーティングシステム1006に更に結合されるのは、ウェブインタフェース1008及び実行部1010である。
レコードフォーマットパラメータ等、ポートに関連するメタデータの値は「伝搬」によって得ることができる。メタデータの伝搬は「外部的に」又は「内部的に」に生じ得る。外部的なメタデータの伝搬では、第1の成分のポートに関するレコードフォーマットパラメータの値は、フローによって第1の成分に接続される第2の成分のポートに関するレコードフォーマット値を伝搬することによって値を得ることができる。値は、フローのソース端からシンク端へと下流に、又はフローのシンク端からソース端へと上流に伝搬し得る。メタデータは、定義されたメタデータを有するポートから定義されたメタデータを有さないポートに伝搬する。
ランタイムパラメータは、アプリケーションビルダがパラメータ設定(例えばソート機能、ファイル名称、レコードフォーマット、変換関数等の主要パラメータ)の値をランタイム(例えばコンピュータシステム上でプログラムが実行される又は近々実行される時点)まで保留することを可能にする。ランタイムパラメータの値は、エンドユーザによって供給され又は他のランタイムパラメータ若しくはオブジェクトリポジトリ内に記憶されるオブジェクトの組合せから導出され得る。
ランタイムパラメータは、グラフの実行時(即ちランタイム)における外部入力に基づいて開発者がグラフの挙動を修正するためのメカニズムを提供する。好ましい実施形態では、それらの外部値は利用者が直接入力することによって与えられる。但し、それらの外部値は、環境変数やコマンドラインパラメータを含む幾つかの異なる情報源から来る場合もある。GDE1002は、これらの状況の全てを扱うための並びにグラフがGDEから直接実行される場合は開発者に試験値を促すための正しいコードを生成する。ランタイムパラメータを使用し、開発者は例えば、入力ファイルのパスが特定の名称を有する環境変数によって提供されることを明確に宣言することができ、その環境変数はグラフのインタフェースの既知の部分になる。従って、かかるパラメータに対する明確に定義されたインタフェースがある。例えば特定のグラフの実行を制御する1組のパラメータを見つけるために、生成済みのシェルスクリプトを読み取り、環境変数及びコマンドライン引数に対する参照のためにそのシェルスクリプトを検索する必要はない。
・ブール-値は真又は偽であり得る
・選択-値は値一覧のうちの1つである
・コレータ-主要パラメータ値
・データセット-外部のデータファイルの名称及び位置
・日付-日付値
・式-算術式、論理式、及び/又は条件式(例えば選択式)
・浮動小数-浮動小数点数
・整数-整数値
・レイアウト-並列レイアウト又は直列レイアウトの定義
・レコードフォーマット-レコード記述又はレコード記述を含むファイル
・文字列-任意の文字列
・変換-変換記述又は変換記述を含むファイル
・埋込-パラメータがレコード記述又は変換記述を含む。
・ホスト-パラメータがホストマシン上のファイルへの参照を含む。
・ローカル-パラメータがローカルマシン上のファイルへの参照を含む。
・リポジトリ-パラメータが参照を含む、リポジトリ変換又はレコードフォーマット。
・単一ライン編集-整数、浮動、日付、及び文字列のタイプ用。
・選択ダイヤログ-ブール及び選択のタイプ用。
・キーエディタ-コレータのタイプ用。
・ファイルブラウザ-データセットのタイプ、並びに位置が埋め込まれていないレコードフォーマット及び変換のタイプ用。
・変換エディタ-埋込の位置を有する変換のタイプ用。
・レコードフォーマットエディタ-埋込の位置を有するレコードフォーマットのタイプ用。
・式エディタ-式のタイプ用。
・レイアウトエディタ-レイアウトのタイプ用。
・Environment(環境)-ランタイムパラメータの値は、同じ名称の環境変数内で見つかることが予期される。環境変数が定義されていない場合、default value(デフォルト値)フィールド3008内の値が使用される。パラメータが要求され(即ちエクスポートされるパラメータ)且つdefault value(デフォルト値)フィールド3008が空の場合、ランタイム誤りが生じてグラフの実行が停止する。
・Positional(位置)-ランタイムパラメータの値は、アプリケーションを呼び出すコマンドライン上のその相対位置において予期される。例えば、ランタイムパラメータが定義された第3の位置的ランタイムパラメータである場合、そのパラメータ値は、実行スクリプト内の第3の位置的コマンドライン引数として予期される。規定された任意の位置的パラメータが与えられなければならず、1つが欠落している場合ランタイム誤りが生じる。
・Keyword(キーワード)-ランタイムパラメータの値は、キーワードコマンドラインパラメータとして予期される。図示の実施形態では、キーワードパラメータが以下の形式のものである:
-<parameter name> <parameter value>
キーワードパラメータは任意選択的であり、キーワードパラメータが与えられず、default value(デフォルト値)フィールド3008が空白であり、対応するエクスポートパラメータが必要である場合にのみランタイム誤りが生じる。
・Fixed(固定)-パラメータのランタイム値は常にデフォルト値である。このことは、2つ以上のランタイムパラメータ間で定数値を共有するのに有用である。
・PL-ランタイムパラメータのデフォルト値は、ランタイムパラメータの値を他のパラメータから導出するように、又は更なる入力を利用者に促すようにグラフの実行時に解釈されるPL式を含む。本発明の任意の特定の実施形態で使用するために選択される成分記述言語は、公開されているオブジェクト指向スクリプト言語「Python」等、任意の適切なスクリプト言語とすることができる。かかるスクリプトはプログラム制御下でメタデータ(タイプ及び変換)を構築し、条件付き試験、比較、データ変換、算術演算及び論理演算、文字列及びリストの操作、並びにユーザ入力、外部的にプログラムで供給される入力、及び他のランタイムパラメータに対する他の機能を実行し、任意のランタイムパラメータのための最終値を生成することができる。
ランタイムパラメータを有するグラフの作成及び試験中に開発者を支援するために、GDE1002の好ましい実施形態はランタイムパラメータに関する試験値もサポートする。開発者がランタイムパラメータを有するグラフを実行する場合、又はグラフ成分に影響を及ぼす基礎を成すコードを見たい場合、GDE1002は、1つ又は複数のランタイムパラメータの新たな試験値を利用者が入力することができる関連する試験パラメータグリッドを表示する。好ましくは、使用される試験値の最後の組が記憶され、グラフと共に保存される。
パラメータがランタイムパラメータとして指定された後、対応するオブジェクトがリポジトリ1004内に作成される。ランタイムパラメータが「PL」の値のkind(種類)フィールド3014を有する場合、パラメータのdefault value(デフォルト値)フィールド3008は以下の好ましい形式を有するprompt_for擬似関数を含む。
prompt_for “prompt-kind [modifiers]”options...
・キーワードin placeは、アプリケーションのサマリレベルユーザインタフェースにおいて要素を直接提示すべきことを宣言し、下位レベルに「ドリルイン」することなしに値が供給されることを可能にする。in placeが規定されていない場合、パラメータ値を供給するための別のページに利用者を移動させる簡単な「編集」ボタンがサマリレベルインタフェースに提示される。
・キーワードblank okは、利用者が値を供給しなくても良いことを宣言し、アプリケーションがデフォルト値に妥当なやり方で対処する。blank okが規定されていない場合、利用者は何らかの値を供給することなしにアプリケーションを実行することができない。
${prompt_for “text,inplace”}
${prompt_for “filter, in place”, $input_type}
${prompt_for “radio, blankok, in place”, ${list 1, 2, 3}}
${prompt_for “key”, ${dataset_type “/datasets/fixed”},3}
図示の実施形態では、通常の照合順序は昇順だが、利用者は関連するチェックボックス5004をチェックすることによってキーの降順の照合を選択することができる。
一部の実装形態は、パラメータ値及び算出メタデータに基づいてグラフの成分及びフローの構造を変えることを可能にする条件付き成分メカニズムを含む。グラフの各成分は、ランタイム時にその成分がグラフ内に現れるかどうかを制御する条件を有する。条件はランタイムパラメータによって直接又は間接的に計算され得る。グラフの最適化や専用化等、条件付き成分は様々な目的で使用することができる。最適化のために、アプリケーションは、特定のデータセットからの値を使用しない場合、そのデータセットの処理を省略し、それによりグラフをより効率的に実行させることもある。専用化では、アプリケーションは所望の詳細レベルに基づいて幾つかの異なる出力データセットを作る条件を付けることができ、又はグラフの幾つかの任意選択的な部分の1つを実行可能にし得る。
・成分が必須のポートを有し、それに接続される活きたフローが存在しない場合、その成分及びその成分に接続される全てのフローがグラフから削除される。
・成分がグラフから完全に削除される場合、その成分のポートに接続される全てのフローがグラフから削除される。
・成分がフローで置換される場合、その成分のdesignated input port(指定の入力ポート)及びdesignated output port(指定の出力ポート)以外の全てのポートに接続される全てのフローがグラフから削除される。
・必須のインデックス付きポートが自らに接続される活きたフローを有さない場合、同じインデックスを有する対応する任意選択的なインデックス付きポートごとに、その対応するポートに接続される如何なるフローもグラフから削除される。
・Condition-interpretation(条件解釈)がReplace With Flow(フローで置換)であり、Condition(条件)が満たされない場合(ステップ3300)、条件付き成分をグラフから削除しない(ステップ3302)。
・指定の入力ポート及び指定の出力ポートを有する成分は、自らの指定の入力ポートに接続される厳密に1つの活きた直接のフロー、及び自らの指定の出力ポートに接続される厳密に1つの活きた直接のフローがある場合にのみフローで置換することができる(「活きた」フローとは、ランタイム時に削除されていないフローである)(ステップ3304)。フローで置換する場合、成分自体をグラフから削除し、その成分の指定の入力ポートに接続される活きた直接のフローと、その成分の指定の出力ポートに接続される活きた直接のフローとを互いにリンクする(ステップ3306)。削除される成分の他のポート(即ち特別に指定された入力ポート及び出力ポート以外の任意のポート)に直接リンクされる他の如何なるフローもグラフから削除される。削除された成分に接続された「汚染された」成分及びフローはどれも上記のように削除される(ステップ3308)。
・Replace With Flow(フローで置換)条件を有する成分が、カウントされる入力群内の複数の指定の入力ポートに付加される活きたフローを有する場合(ステップ3310)、グラフを有効にするにはその成分が必要なので、その成分はグラフから削除しない(ステップ3312)。
・必須入力に活きたファンインフローを有する成分は特殊な扱いが必要である。「活きたファンインフロー」とは、その成分が必須入力ポートに接続される活きたファンインフロー若しくは全対全のフローを有すること、又は単一の必須入力ポートに接続される複数の活きた直接のフローを有することを意味する。かかる成分では、Replace With Flow(フローで置換)条件を解釈することは、活きた入力フローの全てを集める収集成分で条件付き成分を置換するものとする(ステップ3314)。置換された成分に接続されていた「汚染された」如何なるフロー及び成分も上記のように削除する(ステップ3316)。
グラフのメタデータは、例えばグラフの開発者によって、グラフの利用者によって、又はグラフの別の部分からの伝搬によって供給され得る。ポートのためのレコードフォーマット(例えばポートに流れ込む又はポートから流れ出るレコードのフィールドシーケンスやデータタイプ)、ソート性、圧縮法、文字セット、バイナリ表現(ビッグエンディアン、リトルエンディアン)、パーティション化、成分がどの計算資源(例えばプロセッサや一時的なディスク空間)を使用し得るのか、データ変換、成分が使用し得るメモリ量等、データ又はデータに対する計算に関連するメタデータを含む様々な種類のメタデータを伝搬することができる。グラフ構造の様々な側面がメタデータの伝搬に影響を及ぼし得る。これらの側面の2つを以下で説明する。
一部の実装形態では、グラフ成分を削除した後にフローが生成される場合、かかるフロー内のデータを定義するメタデータを訂正後のグラフ内でどのように伝搬させるべきかを決めなければならない。メタデータはフローの両端から入手可能であり得る。一部の実装形態では、フローの上流端からのメタデータが好ましい。
上記のように、或るポートに関連するメタデータを別のポートのためのメタデータを含む1つ又は複数のパラメータに応じて規定できるようにすることにより、メタデータは変換内部データパス上でさえ伝搬し得る。図32Aは、データセット31302及びデータセット31304からのデータに対する結合操作を計算するグラフ31300を示す。この例では、グラフの開発者はデータセットの出力ポートにおいてメタデータを供給する。次いで、そのメタデータが入力データセットのレコードに対する結合操作を計算する「スマート結合」成分31306に伝搬される。例えば、メタデータは出力ポート31308から入力ポート31310に伝搬する。次いで、メタデータが「スマート結合」成分31306によって変換され、「スマート結合」成分31306の出力ポート31316からフィルタ成分31318の入力ポート31317に伝搬される。
output.metadata=metadata_join(key_field,input0.metadata, input1.metadata)
図33は、例示的なメタデータ伝搬プロセス22400の流れ図を示す。プロセス22400は、例えばグラフ内の変更がある度に、利用者のアクションに応答して、及び/又はグラフを実行する直前に実行することができる。プロセス22400は、フローによって決定される部分的な順序に従ってグラフ内の各成分が順序付けされた状態で作業リストを生成する(22402)(例えば成分Aから成分Bへのフローがある場合、成分Aは成分Bの前に来る)。フローが2つの成分間の一意の順序を決定しない場合、均衡を破るために成分ラベルのアルファベット順を使用することができる。アルファベット順の使用は、(成分ラベルが一意だと仮定して)作業リスト内の成分の安定した順序付けをもたらす。伝搬プロセス22400が(例えば新たな成分の追加後に)グラフについて繰り返される場合、新たな作業リストは、作業リスト内の成分間の同一順序を予め保つ。
下位グラフを別のグラフ内の成分として使用するために「成分化」する前に、成分の入力及び/又は出力ポート等、成分の様々な特性を定義する。ランタイムパラメータを有する成分を含む下位グラフでは、ランタイムパラメータのプロンプト順序を選択すべきである。グラフ内の成分は必ずしも連続して順序付けされないので、利用者を促すためのランタイムパラメータの複数の可能なグローバル順序があり得る。グローバル順序の一部は、各成分に関連する元の順序と一致しない。依存関係を考慮するために適切な場合は再順序付けしながら、各成分内のパラメータの順序をできるだけ維持する、プロンプトのためのグローバル順序を生成することが有用である。例えば、成分は「処理したデータをどこに記憶しますか?」と尋ねるプロンプトの前に、「どのデータを処理しますか?」と尋ねるプロンプトを順序付けることができる。これらのプロンプトは何れの順序で提供できても、この順序で提供することが望ましい可能性がある。
第1の例では、パラメータソートプロセスが2つのグラフ成分、つまりComponent(成分)Iと、Component(成分)Iに接続されるComponent(成分)IIとのパラメータに関する最初のパラメータリストを提供する。この例では、パラメータは「成分内」の依存関係しか有さない。つまり、成分のパラメータは同じ成分内の他のパラメータにしか依存しない。パラメータは以下のように定義される:
Component(成分)Iは以下のパラメータを含む:
Component(成分)IIは以下のパラメータを含む:
パラメータごとに割り当てられた序数によって決定される最初の順序をどちらも尊重する、2つの例示的な「修正トポロジカルソート」プロセスについて擬似コードを以下に示す。第2のプロセスは、一部の事例で時間効率を改善するための最適化を含む。このプロセスは、パラメータに対する入力データから生成されるデータ構造を操作する。
parm_list[index]:数字のindex(index = 0はリスト内の最初の項目に対応する)によってインデックス化された、除去されていないパラメータ名称を順序付けたリスト。このデータ構造は「動的」である(即ちプロセスの実行中に変化する)。或る項目がリストの中央から削除される場合、削除された項目の後にある項目のインデックスがしかるべくシフトされるように、このリストは位置によってインデックス化される。
別の例では、パラメータソートプロセス(例えば第1の又は第2の「修正トポロジカルソート」プロセス)が、図34Aに示すようにグラフ成分22502、22504、及び22506を有するグラフ22500に関するランタイムパラメータの最初のリストを決定する。グラフ22500は、入力データセット22510の出力ポート22508及び出力データセット22514の入力ポート22512に関連するランタイムパラメータも有する。この例では、パラメータが「成分内」の依存関係及び「成分間」の依存関係の両方を有する。つまり、成分のパラメータは同じ成分内のパラメータ及び他の成分内のパラメータに依存する。この例では、成分間の依存関係は、一部のパラメータが依存するメタデータの伝搬を可能にする成分間のフローによって生じる。
典型的には、利用者はウェブインタフェース1008の前に座り、自分が実行したいアプリケーションのグラフをリポジトリ1004内で見つける。アプリケーショングラフに関連するオブジェクトの全てを走査することにより、ウェブインタフェース1008は、利用者がアプリケーションのランタイムパラメータの値を規定できるようにするウェブページフォームを生成する。全てのランタイムパラメータが規定されると、アプリケーションとパラメータ設定との組合せがジョブとしてまとめられ、ジョブは実行部1010による実行がスケジュールされる。ジョブを実行する時間になると、実行部1010は、並列オペレーティングシステム1006の下で実行するためにアプリケーションを知られているやり方で待ち行列に入れる。並列オペレーティングシステム1006は、利用者及び管理者がジョブの進捗状況及び性能を追跡できるように追跡情報及びジョブステータスを集め、その情報をリポジトリ1004内に記憶する。
図23は、ランタイムパラメータなしのロールアップアプリケーションを表すグラフ1400の図である。このグラフは、それぞれの種類のアカウント数を計算し、その結果を出力ファイルに書き込む。このアプリケーションの全ての側面、つまり入力ファイル成分1402の名称、入力データのフォーマット、HashRollup(ハッシュロールアップ)成分1404内のデータをロールアップするために使用されるキー及び変換規則、出力フォーマット、並びに出力ファイル成分1406の名称はグラフを作成した開発者によって決定されている。利用者は、このグラフを厳密に定義された通りにしか実行することができない。
GDE1002はパラメータ化グラフの構築を容易にするが、フォームベースのインタフェースの提供が望まれる非グラフプログラムが時として存在する。アプリケーションレベルPL及びリポジトリ1004を使用し、任意のシェルスクリプトをパラメータ化することができる。例えば、アプリケーションの記述を以下と同様の構造でファイルに書き込むことができる:
本発明は、ハードウェア若しくはソフトウェア、又はその両方の組合せ(例えばプログラマブルロジックアレイ)によって実装することができる。特別の定めがない限り、本発明の一部として含まれるアルゴリズムは或る特定のコンピュータ又は他の機器に固有に関係しない。とりわけ、様々な汎用マシンを本明細書の教示に従って書かれたプログラムと共に使用することができ、又は所要の方法ステップを実行するためのより特化した機器を構築した方が便利な場合もある。しかし、本発明は好ましくは1つ又は複数のプログラマブルコンピュータシステム上で実行される1つ又は複数のコンピュータプログラムによって実装され、かかるプログラマブルコンピュータシステムは、少なくとも1個のプロセッサ、少なくとも1つのデータ記憶システム(揮発性及び不揮発性のメモリ及び/又は記憶素子を含む)、少なくとも1つの入力装置又はポート、及び少なくとも1つの出力装置又はポートをそれぞれ含む。プログラムコードは、本明細書に記載の機能を実行するためにプロセッサ上で実行される。
図38Aを参照し、一実施形態では、専用成分38200が複数の入力38205、38210、38215を受け付け、複数の出力38220、38225、38230、及び38235を送るように構成される。入力は、データ入力38205、38210、及び制御入力38215を含む。出力は、データ出力38220、38225、38230、及びステータス出力38235を含む。制御入力38215は、(例えば受信される制御要素内で)実行するためのマイクログラフ38240の識別情報、及び任意選択的にマイクログラフ38240を実行するために使用される1組のパラメータを受け付ける。概して、専用成分38200は、データ入力38205や38210等のそれぞれのデータ入力ポート上で、入力作業要素のゼロ以上のフローを受け付けることができる。ステータス出力38235は、マイクログラフ38240の実行から、終了ステータス及び追跡情報を含むステータスレコードを作り出す。加えてこの専用成分は、データ出力38220、38225、38230等のそれぞれのデータ出力ポート上で、出力作業要素のゼロ以上のフローを作り出す。一実施形態では、専用成分38200が通常の実行中に1つのステータスレコードを作り出し、1つの制御レコードを受け付ける。
図38Bを参照し、マイクログラフ38240の一例は、上流成分にリンクされる1つ又は複数の入力ポートに到着するデータフロー内の入力作業要素に対して操作を行い、下流成分にリンクされる1つ又は複数の出力ポートを離れるデータフロー内の出力作業要素を作り出す、データ処理成分38305、38310、38315、及び38320を含む。マイクログラフ38240は、マイクログラフ38240を専用成分38200内に埋め込むプロセスを助けるように構成される、「インタフェース成分」と呼ばれる成分38300A、38300B、及び38302A、38302B、38302Cも含む。インタフェース成分は、実行するために専用成分内に埋め込む必要がない独立したデータフローグラフとしてマイクログラフを実行することも可能にする。
図39を参照し、一実施形態では、専用成分39405が、(例えばローカルメモリ内に記憶される)専用成分にとってアクセス可能なキャッシュ内に複数のマイクログラフを一度にロードされ得る。この例では、1つのマイクログラフ39430が専用成分39405を含むデータフローグラフ内に接続される。専用成分39405の入力39440はリンクによってマイクログラフ39430の入力39445に接続され、マイクログラフ39430の出力39450はリンクによって専用成分39405の出力39455に接続される。マイクログラフ39430の入力39440及び出力39450は、例えば入力インタフェース成分及び出力インタフェース成分、又はマイクログラフを専用成分内に埋め込むための他の任意のメカニズムを表す。
専用成分は、ロードされたマイクログラフ内の成分に加えて他の成分も含み得る。図41を参照し、一実施形態では、専用成分41605がマイクログラフを実行する前の前処理と、マイクログラフを実行した後の後処理とを含む(図面ではマイクログラフ41615を取り囲む前処理成分41610及び後処理成分41620として表す)。前処理作業及び後処理作業は、例えばトランザクション管理に関係し得る。一部の実施形態では各マイクログラフ41615が別々のトランザクションを表し、その場合、前処理がトランザクションを開始することができ、後処理がそのトランザクションを終了し得る。他の実施形態では、マイクログラフ41615がより長いトランザクションの中のチェックポイントを表し得る。例えばマイクログラフ41615は、2相コミットプロトコルを使用するより長いトランザクションの一部であり得る。かかるトランザクションは、例えば複数の異なるマイクログラフや同じマイクログラフの複数回の実行を使用して処理され得る。
図42を参照し、一部のシナリオでは、様々な種類のデータベースにアクセスできるようにするために様々な成分が必要とされる。例えば、或る販売業者によって提供されるデータベース42706にアクセスするには成分42702が必要である一方、別の販売業者によって提供されるデータベース42708にアクセスするには別の成分42704が必要である。概して、成分42702は成分内に統合されるライブラリ42710、例えばデータベース42706の販売業者によって供給されるライブラリにアクセスすることによってデータベース42706にアクセスする。同様に、成分42704は成分内に統合される別のライブラリ42712、例えばデータベース42708の販売業者によって提供されるライブラリにアクセスすることによってデータベース42708にアクセスする。ライブラリは特定の成分内にコンパイルすることができ、又は特定の成分に動的にリンクすることができる。
図45を参照し、一実施形態では、データフローグラフのコンパイル及び実行システム451000が、データフローグラフコンパイラ451015、パラメータアナライザ451030、データフローグラフローダ451035、及びデータフローグラフ実行エンジン451040を含む。コンパイラ451015は、パラメータセットデータ記憶域451005からのパラメータセット内のパラメータに基づき、未コンパイルデータフローグラフデータ記憶域451010からの、マイクログラフを含む未コンパイルデータフローグラフを処理する。所与のパラメータに関連する値は、データフローグラフの様々な特性の何れかを決定し得る。コンパイラ451015は、パラメータセットの値を使用してデータフローグラフをコンパイルしてコンパイル済みデータフローグラフを生成する。コンパイル済みデータフローグラフは、コンパイル済みデータフローグラフデータ記憶域451020内に記憶される。データ記憶域451010及び451020は、例えばデータ記憶システム1107内にホストされ得る。コンパイラ451015、パラメータアナライザ451030、及びローダ451035は、例えば実行時前モジュール1105の一部として実装することができる。実行エンジン451040は実行モジュール1106の一部として実装することができる。
Claims (29)
- クエリが実行されているとき、前記クエリの中間結果を与えるためにデータストリーム内の様々な場所に位置するデータ項目に対して前記クエリを実行するためのコンピュータによって実装される方法であって、
前記データストリーム内の様々な場所に位置する前記データ項目の2つ以上に対する前記クエリを1つ又は複数のコンピュータシステムによって時々実行することであって、前記クエリが或る期間中に前記データストリーム内に登場するデータ項目に対して実行され、前記期間の終わりは前記クエリの実行開始時には未知であり、前記クエリがアクティブである間、前記期間中に前記データストリームから規定の時間間隔で前記データ項目が受信される毎に、前記クエリが実行される、
前記クエリの実行結果を示す情報を生成すること、
前記クエリが実行され続けるとき、
前記データストリーム内で前に登場したデータ項目に対して前記クエリを実行した過去の結果と前記結果を集約することによってクエリ実行の中間結果を生成すること、及び
前記クエリの実行が完了する前にクエリ実行の前記中間結果を1つ又は複数のクライアント装置に伝送すること
を含む、コンピュータによって実装される方法。 - その後の時点において、前記中間結果を前記その後の時点における前記クエリの実行結果と集約して最終結果を生成すること
を更に含む、請求項1に記載のコンピュータによって実装される方法。 - 前記最終結果を記憶し、前記中間結果を破棄すること
を更に含む、請求項2に記載のコンピュータによって実装される方法。 - 前記クエリを時々実行することが、
(i)前記データストリーム内の1つ又は複数の第1のデータ項目であって、前記データストリームの第1の部分に位置する、1つ又は複数の第1のデータ項目と、(ii)前記データストリーム内の1つ又は複数の第2のデータ項目であって、前記データストリームの第2の部分に位置する、1つ又は複数の第2のデータ項目とに前記クエリを実行すること
を含む、請求項1乃至3の何れか一項に記載のコンピュータによって実装される方法。 - 前記クエリを実行することが、
前記クエリを表すデータフローグラフを周期的に実行することを含み、前記データフローグラフは前記クエリを実装するための実行可能コンピュータコードを含み、前記クエリに関するクエリ仕様を入力として受信する、請求項1乃至4の何れか一項に記載のコンピュータによって実装される方法。 - 前記データフローグラフが第1のクエリを実行する際に行われる操作を表す成分を含み、前記方法が
或る成分に関して、
前記成分のローカル状態を保存するチェックポイント操作を実行して前記データフローグラフの状態の回復性を有効にすること
を更に含む、請求項5に記載のコンピュータによって実装される方法。 - 前記クエリが実行される前記データストリーム内のデータ項目の量は前記クエリの実行開始時には未知である、請求項1乃至6の何れか一項に記載のコンピュータによって実装される方法。
- 集約済みの結果に対するデータ変換のためのユーザ定義カスタム操作を示す情報にアクセスすること、
前記集約済みの結果に対して前記ユーザ定義カスタム操作を実行すること、及び
前記ユーザ定義カスタム操作に従って前記集約済みの結果を変換すること
を更に含む、請求項7に記載のコンピュータによって実装される方法。 - 既定条件の検出を利用者に知らせるためのほぼリアルタイムの警告を前記集約済みの結果に基づいて生成すること
を更に含む、請求項8に記載のコンピュータによって実装される方法。 - 前記データストリームは、データ項目が(i)様々な時点において周期的に受信される、又は(ii)様々な時点において継続的に受信されるデータストリームを含む、請求項1乃至9の何れか一項に記載のコンピュータによって実装される方法。
- 前記データストリームをデータ待ち行列、データリポジトリ、又はデータフィードから受信することを更に含む、請求項1乃至10の何れか一項に記載のコンピュータによって実装される方法。
- 前記クエリが第1のクエリであり、前記方法が
前記データストリーム内の様々な位置に登場する前記データ項目の2つ以上に対して実行するための第2のクエリを選択すること、及び
前記データストリームの前記データ項目に対して前記第1のクエリ及び前記第2のクエリをほぼリアルタイムで実行すること
を更に含む、請求項1乃至11の何れか一項に記載のコンピュータによって実装される方法。 - 表示装置上でレンダリングされるとき、
前記データストリームに対して実行されるクエリを定める情報を入力するための入力フィールド
を含むユーザインタフェース用の情報を生成すること
を更に含む、請求項1乃至12の何れか一項に記載のコンピュータによって実装される方法。 - 前記データストリームに対して実行するための候補である既定のクエリに管理リポジトリ内でアクセスすること
を更に含む、請求項1乃至13の何れか一項に記載のコンピュータによって実装される方法。 - 前記データストリームのデータがほぼリアルタイムのデータであり、前記中間結果がほぼリアルタイムの中間結果であり、前記2つ以上のデータ項目が前記2つ以上のデータ項目のそれぞれに対してほぼリアルタイムでアクセスされる、請求項1乃至14の何れか一項に記載のコンピュータによって実装される方法。
- クエリが実行されているとき、前記クエリの中間結果を与えるためにデータストリーム内の様々な場所に位置するデータ項目に対して前記クエリを実行するためのシステムであって、
1つ又は複数の処理装置と、
前記データストリーム内の様々な場所に位置する前記データ項目の2つ以上に対する前記クエリを1つ又は複数のコンピュータシステムによって時々実行することであって、前記クエリが或る期間中に前記データストリーム内に登場するデータ項目に対して実行され、前記期間の終わりは前記クエリの実行開始時には未知であり、前記クエリがアクティブである間、前記期間中に前記データストリームから規定の時間間隔で前記データ項目が受信される毎に、前記クエリが実行される、
前記クエリの実行結果を示す情報を生成すること、
前記クエリが実行され続けるとき、
ほぼリアルタイムの前記データストリーム内で前に登場したデータ項目に対して前記クエリを実行した過去の結果と前記結果を集約することによってクエリ実行の中間結果を生成すること、及び
前記クエリの実行が完了する前にクエリ実行の前記中間結果を1つ又は複数のクライアント装置に伝送すること
を含む操作を実行するために前記1つ又は複数の処理装置によって実行可能な命令を記憶する1つ又は複数の機械可読ハードウェア記憶装置と
を含む、システム。 - 前記操作が、
その後の時点において、前記中間結果を前記その後の時点における前記クエリの実行結果と集約して最終結果を生成すること
を更に含む、請求項16に記載のシステム。 - 前記操作が、
前記最終結果を記憶し、前記中間結果を破棄すること
を更に含む、請求項17に記載のシステム。 - 前記クエリを時々実行することが、
(i)前記データストリーム内の1つ又は複数の第1のデータ項目であって、前記データストリームの第1の部分に位置する、1つ又は複数の第1のデータ項目と、(ii)前記データストリーム内の1つ又は複数の第2のデータ項目であって、前記データストリームの第2の部分に位置する、1つ又は複数の第2のデータ項目とに前記クエリを実行すること
を含む、請求項16乃至18の何れか一項に記載のシステム。 - データ記憶域を更に含み、
前記クエリを実行することが、
前記クエリに関連するグラフベースの計算を実装するデータフローグラフを実行することを含み、前記グラフベースの計算は前記クエリを実装するための実行可能コンピュータコードを含み、
前記データフローグラフは前記データ記憶域内のデータ構造によって規定され、前記データ構造によって規定され且つ1つ又は複数のリンクによって接続されるグラフ成分を表す複数の頂点を有し、前記リンクは前記データ構造によって規定され、前記グラフ成分間のデータフローを表し、
前記データフローグラフは前記クエリに関するクエリ仕様を入力として受信し、前記グラフベースの計算は、1つ又は複数の入力データセットから前記グラフ成分の前記データフローグラフを介して1つ又は複数の出力データセットに流れる前記データストリームに対して実行される、
請求項16乃至19の何れか一項に記載のシステム。 - 前記データ記憶域に結合され、前記1つ又は複数の処理装置上にホストされるランタイム環境であって、前記データフローグラフを規定する前記データ記憶域内のデータ構造を読み取り、実行時前モジュールによって前記データフローグラフに指定される前記グラフ成分の前記計算を実行するための計算資源を割り当て設定するように構成される実行時前モジュール、及び
前記指定された計算の実行をスケジュールし管理するための実行モジュールを含む、ランタイム環境
を更に含む、請求項20に記載のシステム。 - 前記データフローグラフが第1のクエリを実行する際に行われる操作を表す成分を含み、前記操作が
或る成分に関して、
前記成分のローカル状態を保存するチェックポイント操作を実行して前記データフローグラフの状態の回復性を有効にすること
を更に含む、請求項20又は21に記載のシステム。 - 前記クエリが実行される前記データストリーム内のデータ項目の量は前記クエリの実行開始時には未知である、請求項16乃至22の何れか一項に記載のシステム。
- 前記データストリームのデータがほぼリアルタイムのデータであり、前記中間結果がほぼリアルタイムの中間結果であり、前記2つ以上のデータ項目が前記2つ以上のデータ項目のそれぞれに対してほぼリアルタイムでアクセスされる、請求項16乃至23の何れか一項に記載のシステム。
- クエリが実行されているとき、前記クエリの中間結果を与えるためにデータストリーム内の様々な場所に位置するデータ項目に対して前記クエリを実行するための1つ又は複数の機械可読ハードウェア記憶域であって、
前記データストリーム内の様々な場所に位置する前記データ項目の2つ以上に対する前記クエリを1つ又は複数のコンピュータシステムによって時々実行することであって、前記クエリが或る期間中に前記データストリーム内に登場するデータ項目に対して実行され、前記期間の終わりは前記クエリの実行開始時には未知であり、前記クエリがアクティブである間、前記期間中に前記データストリームから規定の時間間隔で前記データ項目が受信される毎に、前記クエリが実行される、
前記クエリの実行結果を示す情報を生成すること、
前記クエリが実行され続けるとき、
前記データストリーム内で前に登場したデータ項目に対して前記クエリを実行した過去の結果と前記結果を集約することによってクエリ実行の中間結果を生成すること、及び
前記クエリの実行が完了する前にクエリ実行の前記中間結果を1つ又は複数のクライアント装置に伝送すること
を含む操作を実行するために1つ又は複数の処理装置によって実行可能な命令を記憶する、1つ又は複数の機械可読ハードウェア記憶域。 - データ記憶域と、
前記データ記憶域に結合され、ファイルに対して実行される複数のアクティブクエリに関連するグラフベースの計算を実装するデータフローグラフを生成するように構成される計算環境であって、前記グラフベースの計算は複数のクエリを実装するための実行可能コンピュータコードを含み、1つ又は複数の入力データセットからグラフ成分のグラフを介して1つ又は複数の出力データセットに流れるデータに対して実行され、前記データフローグラフは前記データ記憶域内のデータ構造によって規定され、前記データ構造によって規定され且つ1つ又は複数のリンクによって接続される前記グラフ成分を表す複数の頂点を有し、前記リンクは前記データ構造によって規定され、グラフ成分間のデータフローを表す、計算環境と、
前記グラフベースの計算を実行するために1台又は複数台のコンピュータ上にホストされ、前記データ記憶域に結合されるランタイム環境であって、
前記データフローグラフを規定する前記データ記憶域内のデータ構造を読み取り、実行時前モジュールによって前記データフローグラフに指定される前記グラフ成分の前記計算を実行するための計算資源を割り当て設定するように構成される実行時前モジュール、及び
前記指定された計算の実行をスケジュールし管理するための実行モジュールであって、それにより
正規化成分が前記ファイルを複数の作業単位に分けるように構成され、
分割成分が前記作業単位のそれぞれに適用されるように構成され、前記作業単位のそれぞれに前記分割成分を前記適用することは、前記作業単位のそれぞれについてマイクログラフ実行成分の複数の異なるインスタンスにわたって前記複数のクエリを分割することを含み、前記インスタンスのそれぞれは前記作業単位内の前記データに対して実行可能な前記クエリの1つに対応し、
前記マイクログラフ実行成分の前記インスタンスの前記対応するそれぞれのインスタンスによって前記クエリのそれぞれを前記データに対して実行するために、再フォーマット成分が前記作業単位のそれぞれの中の前記データを再フォーマットするように構成され、
前記作業単位のそれぞれについて前記マイクログラフ実行成分の前記インスタンスを実行した後、収集成分が前記作業単位に関する部分結果を生成するように構成され、前記部分結果は前記作業単位内の前記データに対して前記クエリの一部又は全てを実行した結果を含み、
マイクログラフ実行成分が、前記複数のクエリのそれぞれについて、前記部分結果に基づき前記ファイルの全ての前記作業単位に対する前記クエリの総和を計算するように構成される、実行モジュール
を含む、ランタイム環境と
を含み、
前記クエリが或る期間中にデータストリーム内に登場するデータ項目に対して実行され、前記期間の終わりは前記クエリの実行開始時には未知であり、前記クエリがアクティブである間、前記期間中に前記データストリームから規定の時間間隔で前記データ項目が受信される毎に、前記クエリが実行される、システム。 - 前記作業単位のそれぞれに前記分割成分を前記適用することが、
再フォーマット成分の複数の異なるインスタンス及び前記マイクログラフ実行成分の前記複数の異なるインスタンスを前記作業単位のそれぞれについて生成することを更に含み、前記再フォーマット成分の前記インスタンスのそれぞれは前記マイクログラフ実行成分の前記インスタンスの1つにリンクされ関連し、前記マイクログラフ実行成分の前記関連するインスタンスにおいて前記データが処理される前に、前記作業単位内の前記データを再フォーマットするように構成される、請求項26に記載のシステム。 - 前記作業単位のそれぞれに前記分割成分を前記適用することが、
前記作業単位内の前記データの属性を決定することを含む前記作業単位を前処理すること、及び
前記決定した属性に基づいて前記インスタンス及び対応するクエリを選択すること
を更に含む、請求項26又は27に記載のシステム。 - 前記作業単位のそれぞれに前記分割成分を前記適用することが、
前記インスタンスを前記作業単位に前記割り当てる前に前処理を行うことを更に含み、前記前処理は、前記それぞれのインスタンスに対応する前記クエリのそれぞれを前記実行するのに必要である可能性が高い前記計算資源を明らかにすること、及び前記クエリのそれぞれを実行するための前記明らかにされた計算資源の需要に従って前記インスタンス間で計算資源を分散させることを含む、
請求項26乃至28の何れか一項に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/818,895 US10657134B2 (en) | 2015-08-05 | 2015-08-05 | Selecting queries for execution on a stream of real-time data |
US14/818,895 | 2015-08-05 | ||
PCT/US2016/045612 WO2017024164A1 (en) | 2015-08-05 | 2016-08-04 | Selecting queries for execution on a stream of real-time data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018528506A JP2018528506A (ja) | 2018-09-27 |
JP7023718B2 true JP7023718B2 (ja) | 2022-02-22 |
Family
ID=56852389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017567783A Active JP7023718B2 (ja) | 2015-08-05 | 2016-08-04 | リアルタイムデータストリームに対して実行するためのクエリの選択 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10657134B2 (ja) |
EP (1) | EP3332336A1 (ja) |
JP (1) | JP7023718B2 (ja) |
CN (1) | CN107924406A (ja) |
AU (1) | AU2016301376B2 (ja) |
CA (1) | CA2994408C (ja) |
HK (1) | HK1250404A1 (ja) |
WO (1) | WO2017024164A1 (ja) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2932763C (en) | 2013-12-05 | 2022-07-12 | Ab Initio Technology Llc | Managing interfaces for dataflow graphs composed of sub-graphs |
US10609534B2 (en) * | 2015-08-24 | 2020-03-31 | Ayla Networks, Inc. | Feed service engine |
US9740787B2 (en) * | 2015-12-14 | 2017-08-22 | Quixey, Inc. | Application search results based on a current search query and a previous search query |
US11989096B2 (en) * | 2015-12-21 | 2024-05-21 | Ab Initio Technology Llc | Search and retrieval data processing system for computing near real-time data aggregations |
US11977549B2 (en) | 2016-09-15 | 2024-05-07 | Oracle International Corporation | Clustering event processing engines |
US10789250B2 (en) * | 2016-09-15 | 2020-09-29 | Oracle International Corporation | Non-intrusive monitoring output of stages in micro-batch streaming |
US11947978B2 (en) | 2017-02-23 | 2024-04-02 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
US10831509B2 (en) | 2017-02-23 | 2020-11-10 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
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 |
WO2018183676A1 (en) | 2017-03-29 | 2018-10-04 | Ab Initio Technology Llc | Systems and methods for performing data processing operations using variable level parallelism |
US11663205B2 (en) | 2017-05-04 | 2023-05-30 | Salesforce, Inc. | Technologies for asynchronous querying |
US10338963B2 (en) * | 2017-05-10 | 2019-07-02 | Atlantic Technical Organization, Llc | System and method of schedule validation and optimization of machine learning flows for cloud computing |
US10776121B2 (en) * | 2017-05-10 | 2020-09-15 | Atlantic Technical Organization | System and method of execution map generation for schedule optimization of machine learning flows |
US11803547B2 (en) * | 2017-05-19 | 2023-10-31 | Oracle International Corporation | System and method for query resource caching |
US11188434B2 (en) * | 2017-12-08 | 2021-11-30 | Ab Initio Technology Llc | Systems and methods for monitoring execution of structured query language (SQL) queries |
US11423031B2 (en) * | 2018-02-22 | 2022-08-23 | Microsoft Technology Licensing, Llc | Standing query creation using store query |
US11232106B1 (en) * | 2018-03-23 | 2022-01-25 | Amazon Technologies, Inc. | Windowed query with event-based open time for analytics of streaming data |
CN110457340B (zh) * | 2018-05-07 | 2024-04-09 | 吕纪竹 | 一种实时寻找大数据自身重复规律的方法 |
CN109582320B (zh) * | 2018-08-08 | 2022-05-10 | 深圳市飞速创新技术股份有限公司 | 写码方法及终端设备 |
CN109241033A (zh) * | 2018-08-21 | 2019-01-18 | 北京京东尚科信息技术有限公司 | 创建实时数据仓库的方法和装置 |
US11301535B2 (en) * | 2018-11-29 | 2022-04-12 | Sap Se | Systems and methods for determining a geographic location |
US11194815B1 (en) | 2019-02-11 | 2021-12-07 | Amazon Technologies, Inc. | Constrained query execution |
CN110083583B (zh) * | 2019-03-29 | 2021-05-25 | 北京奇安信科技有限公司 | 流式事件处理方法及装置 |
US11122624B2 (en) * | 2019-06-17 | 2021-09-14 | Sony Group Corporation | Pre-packet arrival channel contention |
US11202314B2 (en) * | 2019-06-18 | 2021-12-14 | Sony Group Corporation | Immediate retransmission scheme for real time applications |
US11464054B2 (en) | 2019-07-24 | 2022-10-04 | Sony Group Corporation | RTA contention collision avoidance |
US20210034621A1 (en) * | 2019-07-30 | 2021-02-04 | Innoplexus Ag | System and method for creating database query from user search query |
CN110471940B (zh) * | 2019-08-05 | 2021-10-08 | 威讯柏睿数据科技(北京)有限公司 | 一种流关系数据库管理系统 |
US11556370B2 (en) * | 2020-01-30 | 2023-01-17 | Walmart Apollo, Llc | Traversing a large connected component on a distributed file-based data structure |
CN111768090B (zh) * | 2020-06-19 | 2024-02-02 | 北京思特奇信息技术股份有限公司 | 一种用于监控产商品资费配置风险的方法及系统 |
CN112508768B (zh) * | 2020-12-22 | 2022-05-27 | 北京百度网讯科技有限公司 | 单算子多模型流水线推理方法、系统、电子设备及介质 |
WO2022165321A1 (en) | 2021-01-31 | 2022-08-04 | Ab Initio Technology Llc | Data processing system with manipulation of logical dataset groups |
CN112948127B (zh) * | 2021-03-30 | 2023-11-10 | 北京滴普科技有限公司 | 云平台容器平均负载监视方法、终端设备及可读存储介质 |
CN112927770B (zh) * | 2021-04-12 | 2023-09-08 | 徐州市通用科技有限公司 | 医疗数据共享方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010108073A (ja) | 2008-10-28 | 2010-05-13 | Hitachi Ltd | ストリームデータ処理方法、及びシステム |
JP2013513864A (ja) | 2009-12-14 | 2013-04-22 | アビニシオ テクノロジー エルエルシー | ユーザ・インターフェース要素の指定 |
JP2013528884A (ja) | 2010-06-15 | 2013-07-11 | アビニシオ テクノロジー エルエルシー | グラフに基づく計算の動的ロード |
WO2014011708A2 (en) | 2012-07-12 | 2014-01-16 | Microsoft Corporation | Progressive query computation using streaming architectures |
WO2014041673A1 (ja) | 2012-09-14 | 2014-03-20 | 株式会社日立製作所 | ストリームデータ多重処理方法 |
JP2014157510A (ja) | 2013-02-15 | 2014-08-28 | International Business Maschines Corporation | ストリーム・データ処理システム、方法及びプログラム |
US20150169332A1 (en) | 2013-12-13 | 2015-06-18 | Ab Initio Technology Llc | Dynamically determing a mode of a data processing application |
Family Cites Families (238)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3662343A (en) | 1970-07-29 | 1972-05-09 | Docutel Corp | Credit card automatic currency dispenser |
US3662401A (en) | 1970-09-23 | 1972-05-09 | Collins Radio Co | Method of program execution |
US4228496A (en) | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor system |
US4814979A (en) | 1981-04-01 | 1989-03-21 | Teradata Corporation | Network to transmit prioritized subtask pockets to dedicated processors |
US4972314A (en) | 1985-05-20 | 1990-11-20 | Hughes Aircraft Company | Data flow signal processor method and apparatus |
US4720780A (en) | 1985-09-17 | 1988-01-19 | The Johns Hopkins University | Memory-linked wavefront array processor |
US4914568A (en) | 1986-10-24 | 1990-04-03 | National Instruments, Inc. | Graphical system for modelling a process and associated method |
US5127104A (en) | 1986-12-29 | 1992-06-30 | Dataflow Computer Corporation | Method and product involving translation and execution of programs by automatic partitioning and data structure allocation |
JPS63231613A (ja) | 1987-03-20 | 1988-09-27 | Matsushita Giken Kk | コマンド設定方法 |
JPS6413189A (en) | 1987-07-06 | 1989-01-18 | Nec Corp | Character signal generation circuit |
JPH0194431A (ja) | 1987-10-06 | 1989-04-13 | Matsushita Electric Ind Co Ltd | ソフトウェア部品合成装置 |
US5050068A (en) | 1988-10-03 | 1991-09-17 | Duke University | Method and apparatus for using extracted program flow information to prepare for execution multiple instruction streams |
US5357632A (en) | 1990-01-09 | 1994-10-18 | Hughes Aircraft Company | Dynamic task allocation in a multi-processor system employing distributed control processors and distributed arithmetic processors |
US5280619A (en) | 1990-05-17 | 1994-01-18 | Texas Instruments Incorporated | System for accessing shared data using a serialization graph constructed from a history file showing completed locking dependencies between transactions |
JPH05134886A (ja) | 1990-11-30 | 1993-06-01 | Fujitsu Ltd | デツドロツク検出方式 |
US5323452A (en) | 1990-12-18 | 1994-06-21 | Bell Communications Research, Inc. | Visual programming of telephone network call processing logic |
JPH05197604A (ja) | 1991-05-21 | 1993-08-06 | Digital Equip Corp <Dec> | マルチプロセッサ・コンピュータ及びその動作方法 |
EP0529303A3 (en) | 1991-08-29 | 1993-09-22 | International Business Machines Corporation | Checkpoint synchronization with instruction overlap enabled |
US6400996B1 (en) | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
US5333319A (en) | 1992-03-02 | 1994-07-26 | International Business Machines Corporation | Virtual storage data processor with enhanced dispatching priority allocation of CPU resources |
JP3223933B2 (ja) | 1993-02-10 | 2001-10-29 | 日本電信電話株式会社 | 知識ベース推論方法およびその装置 |
US5745778A (en) | 1994-01-26 | 1998-04-28 | Data General Corporation | Apparatus and method for improved CPU affinity in a multiprocessor system |
US6044211A (en) | 1994-03-14 | 2000-03-28 | C.A.E. Plus, Inc. | Method for graphically representing a digital device as a behavioral description with data and control flow elements, and for converting the behavioral description to a structural description |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
JPH08106540A (ja) | 1994-10-06 | 1996-04-23 | Toshiba Corp | 編集装置 |
US5692168A (en) | 1994-10-18 | 1997-11-25 | Cyrix Corporation | Prefetch buffer using flow control bit to identify changes of flow within the code stream |
JPH08305576A (ja) | 1995-01-12 | 1996-11-22 | Internatl Business Mach Corp <Ibm> | コンピュータ・ユーザとの対話を行うためのエキスパート・システム及びその方法 |
US5673369A (en) | 1995-03-02 | 1997-09-30 | International Business Machines Corporation | Authoring knowledge-based systems using interactive directed graphs |
US5701400A (en) | 1995-03-08 | 1997-12-23 | Amado; Carlos Armando | Method and apparatus for applying if-then-else rules to data sets in a relational data base and generating from the results of application of said rules a database of diagnostics linked to said data sets to aid executive analysis of financial data |
US5805462A (en) | 1995-08-18 | 1998-09-08 | Vlsi Technology, Inc. | Automatic synthesis of integrated circuits employing boolean decomposition |
JP3154942B2 (ja) | 1995-09-11 | 2001-04-09 | 株式会社東芝 | 分散チェックポイント生成方法および同方法が適用される計算機システム |
US5630047A (en) | 1995-09-12 | 1997-05-13 | Lucent Technologies Inc. | Method for software error recovery using consistent global checkpoints |
US5712971A (en) | 1995-12-11 | 1998-01-27 | Ab Initio Software Corporation | Methods and systems for reconstructing the state of a computation |
JP3258228B2 (ja) | 1996-03-15 | 2002-02-18 | 株式会社東芝 | チェックポイント生成方法 |
US7415466B2 (en) | 1996-03-19 | 2008-08-19 | Oracle International Corporation | Parallel transaction recovery |
US6006242A (en) | 1996-04-05 | 1999-12-21 | Bankers Systems, Inc. | Apparatus and method for dynamically creating a document |
JP3672208B2 (ja) | 1996-07-02 | 2005-07-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 階層化トランザクション処理方法 |
US5857204A (en) | 1996-07-02 | 1999-01-05 | Ab Initio Software Corporation | Restoring the state of a set of files |
US5966072A (en) | 1996-07-02 | 1999-10-12 | Ab Initio Software Corporation | Executing computations expressed as graphs |
US6016516A (en) | 1996-08-07 | 2000-01-18 | Fuji Xerox Co. Ltd. | Remote procedure processing device used by at least two linked computer systems |
US6760903B1 (en) | 1996-08-27 | 2004-07-06 | Compuware Corporation | Coordinated application monitoring in a distributed computing environment |
US5799266A (en) | 1996-09-19 | 1998-08-25 | Sun Microsystems, Inc. | Automatic generation of test drivers |
US6038558A (en) | 1996-10-18 | 2000-03-14 | Sagent Technology, Inc. | Extensible database retrieval and viewing architecture |
US5930794A (en) | 1996-10-18 | 1999-07-27 | Sagent Technologies, Inc. | Database repository with deferred transactions |
US6151531A (en) | 1996-12-12 | 2000-11-21 | Charles Frankel Et Al | System and method for managing the alteration of garments |
US5924095A (en) | 1997-02-05 | 1999-07-13 | Oracle Corporation | Processing distributed transactions in heterogeneous computing environments using two-phase commit |
US6330008B1 (en) | 1997-02-24 | 2001-12-11 | Torrent Systems, Inc. | Apparatuses and methods for monitoring performance of parallel computing |
US5933640A (en) | 1997-02-26 | 1999-08-03 | Digital Equipment Corporation | Method for analyzing and presenting test execution flows of programs |
US5899988A (en) * | 1997-02-28 | 1999-05-04 | Oracle Corporation | Bitmapped indexing with high granularity locking |
US5999729A (en) | 1997-03-06 | 1999-12-07 | Continuum Software, Inc. | System and method for developing computer programs for execution on parallel processing systems |
US5950212A (en) | 1997-04-11 | 1999-09-07 | Oracle Corporation | Method and system for workload based group committing for improved performance |
US6088716A (en) | 1997-04-28 | 2000-07-11 | Ab Initio Software Corporation | Method for preventing buffer deadlock in dataflow computations |
US6032158A (en) | 1997-05-02 | 2000-02-29 | Informatica Corporation | Apparatus and method for capturing and propagating changes from an operational database to data marts |
US6044394A (en) | 1997-07-21 | 2000-03-28 | International Business Machines Corporation | Managing independently executing computer tasks that are interrelated by dataflow |
US6145017A (en) | 1997-08-05 | 2000-11-07 | Adaptec, Inc. | Data alignment system for a hardware accelerated command interpreter engine |
US6173276B1 (en) | 1997-08-21 | 2001-01-09 | Scicomp, Inc. | System and method for financial instrument modeling and valuation |
US6574661B1 (en) | 1997-09-26 | 2003-06-03 | Mci Communications Corporation | Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client |
US6332212B1 (en) | 1997-10-02 | 2001-12-18 | Ltx Corporation | Capturing and displaying computer program execution timing |
US5958004A (en) | 1997-10-28 | 1999-09-28 | Microsoft Corporation | Disabling and enabling transaction committal in transactional application components |
US6339775B1 (en) | 1997-11-07 | 2002-01-15 | Informatica Corporation | Apparatus and method for performing data transformations in data warehousing |
US6014670A (en) | 1997-11-07 | 2000-01-11 | Informatica Corporation | Apparatus and method for performing data transformations in data warehousing |
US6044374A (en) | 1997-11-14 | 2000-03-28 | Informatica Corporation | Method and apparatus for sharing metadata between multiple data marts through object references |
JPH11184766A (ja) | 1997-12-18 | 1999-07-09 | Nippon Telegr & Teleph Corp <Ntt> | ビジネスイベントサーバ |
US6272650B1 (en) | 1998-02-03 | 2001-08-07 | Amazing Media, Inc. | System and method for disambiguating scene graph loads |
US6437796B2 (en) | 1998-02-17 | 2002-08-20 | Sun Microsystems, Inc. | Multiple processor visibility search system and method |
US6208345B1 (en) | 1998-04-15 | 2001-03-27 | Adc Telecommunications, Inc. | Visual data integration system and method |
US6256637B1 (en) | 1998-05-05 | 2001-07-03 | Gemstone Systems, Inc. | Transactional virtual machine architecture |
US6480876B2 (en) | 1998-05-28 | 2002-11-12 | Compaq Information Technologies Group, L.P. | System for integrating task and data parallelism in dynamic applications |
US6675189B2 (en) | 1998-05-28 | 2004-01-06 | Hewlett-Packard Development Company, L.P. | System for learning and applying integrated task and data parallel strategies in dynamic applications |
US6314114B1 (en) | 1998-06-23 | 2001-11-06 | Oracle Corporation | Distributed resource management |
JP2000010788A (ja) | 1998-06-25 | 2000-01-14 | Sharp Corp | 緊急動作処理機能を有するコンピュータ装置 |
US6259988B1 (en) | 1998-07-20 | 2001-07-10 | Lockheed Martin Corporation | Real-time mission adaptable route planner |
JP2000099317A (ja) | 1998-09-18 | 2000-04-07 | Toshiba Corp | ユーザインタフェース設計装置及び方法 |
US6401216B1 (en) | 1998-10-29 | 2002-06-04 | International Business Machines Corporation | System of performing checkpoint/restart of a parallel program |
US6608628B1 (en) | 1998-11-06 | 2003-08-19 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) | Method and apparatus for virtual interactive medical imaging by multiple remotely-located users |
US6380945B1 (en) | 1998-11-09 | 2002-04-30 | Broadcom Corporation | Graphics display system with color look-up table loading mechanism |
US6449711B1 (en) | 1999-02-04 | 2002-09-10 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for developing and executing data flow programs |
US6538651B1 (en) | 1999-03-19 | 2003-03-25 | John Hayman | Parametric geometric element definition and generation system and method |
US6728879B1 (en) | 1999-06-02 | 2004-04-27 | Microsoft Corporation | Transactional log with multi-sector log block validation |
US6816825B1 (en) | 1999-06-18 | 2004-11-09 | Nec Corporation | Simulation vector generation from HDL descriptions for observability-enhanced statement coverage |
JP2001022571A (ja) | 1999-07-09 | 2001-01-26 | Riso Kagaku Corp | 電子機器及び該電子機器の制御プログラム書き換え方法 |
US6647408B1 (en) | 1999-07-16 | 2003-11-11 | Novell, Inc. | Task distribution |
US6640244B1 (en) * | 1999-08-31 | 2003-10-28 | Accenture Llp | Request batcher in a transaction services patterns environment |
US6715145B1 (en) | 1999-08-31 | 2004-03-30 | Accenture Llp | Processing pipeline in a base services pattern environment |
US20020129340A1 (en) | 1999-10-28 | 2002-09-12 | Tuttle Douglas D. | Reconfigurable isomorphic software representations |
US7137116B2 (en) | 1999-11-09 | 2006-11-14 | Microsoft Corporation | Method and system for performing a task on a computer |
US6879946B2 (en) | 1999-11-30 | 2005-04-12 | Pattern Discovery Software Systems Ltd. | Intelligent modeling, transformation and manipulation system |
US6584581B1 (en) | 1999-12-06 | 2003-06-24 | Ab Initio Software Corporation | Continuous flow checkpointing data processing |
IES20010131A2 (en) | 1999-12-20 | 2001-05-30 | Headway Res Ltd | System and method for computer-aided graph-based dependency analysis |
DE50101827D1 (de) | 2000-03-31 | 2004-05-06 | Sanochemia Pharmazeutika Ag Wi | Neue derivate und analoga von galanthamin |
US6848100B1 (en) | 2000-03-31 | 2005-01-25 | Intel Corporation | Hierarchical software path profiling |
US7062483B2 (en) | 2000-05-18 | 2006-06-13 | Endeca Technologies, Inc. | Hierarchical data-driven search and navigation system and method for information retrieval |
US6922685B2 (en) | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
US6813761B1 (en) | 2000-06-30 | 2004-11-02 | Microsoft Corporation | Methods for enhancing flow analysis |
US7164422B1 (en) | 2000-07-28 | 2007-01-16 | Ab Initio Software Corporation | Parameterized graphs with conditional components |
US6832369B1 (en) | 2000-08-01 | 2004-12-14 | International Business Machines Corporation | Object oriented method and apparatus for class variable initialization |
US6496961B2 (en) | 2000-10-27 | 2002-12-17 | Nec Usa, Inc. | Dynamic detection and removal of inactive clauses in SAT with application in image computation |
US20020152244A1 (en) | 2000-12-22 | 2002-10-17 | International Business Machines Corporation | Method and apparatus to dynamically create a customized user interface based on a document type definition |
US6975628B2 (en) | 2000-12-22 | 2005-12-13 | Intel Corporation | Method for representing and controlling packet data flow through packet forwarding hardware |
US6804800B2 (en) | 2000-12-29 | 2004-10-12 | Intel Corporation | Method and apparatus for detecting and recovering from errors in a source synchronous bus |
JP4294879B2 (ja) | 2001-02-05 | 2009-07-15 | 株式会社日立製作所 | サービスレベル制御機構を有するトランザクション処理システム及びそのためのプログラム |
US20020111876A1 (en) | 2001-02-09 | 2002-08-15 | Rudraraju Panduranga R. | Transaction aggregation system and method |
US7082386B2 (en) | 2001-02-21 | 2006-07-25 | International Business Machines Corporation | Generalized software modeling tool |
US7188091B2 (en) | 2001-03-21 | 2007-03-06 | Resolutionebs, Inc. | Rule processing system |
US6651234B2 (en) | 2001-04-06 | 2003-11-18 | Nec Corporation | Partition-based decision heuristics for SAT and image computation using SAT and BDDs |
US20020147745A1 (en) | 2001-04-09 | 2002-10-10 | Robert Houben | Method and apparatus for document markup language driven server |
US7082604B2 (en) | 2001-04-20 | 2006-07-25 | Mobile Agent Technologies, Incorporated | Method and apparatus for breaking down computing tasks across a network of heterogeneous computer for parallel execution by utilizing autonomous mobile agents |
US20040093559A1 (en) | 2001-05-25 | 2004-05-13 | Ruth Amaru | Web client for viewing and interrogating enterprise data semantically |
GB2376094A (en) | 2001-05-30 | 2002-12-04 | Ibm | Flexible navigation of a workflow graph in a data processing system |
US7069536B2 (en) | 2001-06-28 | 2006-06-27 | International Business Machines Corporation | Method, system, and program for executing a workflow |
US20030033432A1 (en) | 2001-08-08 | 2003-02-13 | Simpson Shell S. | Web based imaging service that converts web pages into content on behalf of another web site |
US7594220B2 (en) | 2001-08-14 | 2009-09-22 | National Instruments Corporation | Configuration diagram with context sensitive connectivity |
US20040006745A1 (en) | 2001-08-31 | 2004-01-08 | Van Helden Wico | Methods, apparatuses, system, and articles for associating metadata with datastream |
US7165030B2 (en) | 2001-09-17 | 2007-01-16 | Massachusetts Institute Of Technology | Concatenative speech synthesis using a finite-state transducer |
US7130484B2 (en) | 2001-10-15 | 2006-10-31 | Jonas August | Biased curve indicator random field filters for enhancement of contours in images |
US7085426B2 (en) | 2001-10-15 | 2006-08-01 | Jonas August | Volterra filters for enhancement of contours in images |
DE10152213B4 (de) | 2001-10-23 | 2006-04-27 | Onespin Solutions Gmbh | Verfahren zur Verifikation digitaler arithmetischer Schaltungen mittels eines Äquivalenzvergleiches |
US7092401B2 (en) | 2001-11-15 | 2006-08-15 | International Business Machines Corporation | Apparatus and method for managing work and completion queues using head and tail pointers with end-to-end context error cache for reliable datagram |
DE60106467T2 (de) | 2001-12-14 | 2006-02-23 | Hewlett-Packard Development Co., L.P., Houston | Verfahren zum Installieren Überwachungsagenten, System und Computerprogramm von Objekten in einem IT-Netz Überwachung |
US7240247B2 (en) | 2002-04-29 | 2007-07-03 | Intel Corporation | Providing a chain of tokenized error and state information for a call stack |
US20040041838A1 (en) | 2002-09-04 | 2004-03-04 | Adusumilli Venkata J.R.B. | Method and system for graphing data |
US7103597B2 (en) | 2002-10-03 | 2006-09-05 | Mcgoveran David O | Adaptive transaction manager for complex transactions and business process |
US7167850B2 (en) | 2002-10-10 | 2007-01-23 | Ab Initio Software Corporation | Startup and control of graph-based computation |
US7694272B2 (en) | 2002-10-21 | 2010-04-06 | Sungard (Israel) Ltd | Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language |
US7412658B2 (en) | 2002-11-14 | 2008-08-12 | Sap Ag | Modeling system for graphic user interface |
US7711772B2 (en) | 2002-11-15 | 2010-05-04 | Schlumberger Technology Corporation | Web-based system and method for electronic data delivery |
US7430747B2 (en) | 2002-12-04 | 2008-09-30 | Microsoft Corporation | Peer-to peer graphing interfaces and methods |
US7441008B2 (en) | 2002-12-18 | 2008-10-21 | International Business Machines Corporation | Method for correlating transactions and messages |
US20050193056A1 (en) | 2002-12-26 | 2005-09-01 | Schaefer Diane E. | Message transfer using multiplexed connections in an open system interconnection transaction processing environment |
US20040148373A1 (en) | 2003-01-23 | 2004-07-29 | International Business Machines Corporation | Service level agreement compliance measurement |
WO2004072796A2 (en) | 2003-02-05 | 2004-08-26 | Arizona Board Of Regents | Reconfigurable processing |
US7707564B2 (en) | 2003-02-26 | 2010-04-27 | Bea Systems, Inc. | Systems and methods for creating network-based software services using source code annotations |
US7088374B2 (en) | 2003-03-27 | 2006-08-08 | Microsoft Corporation | System and method for managing visual structure, timing, and animation in a graphics processing system |
US7417645B2 (en) | 2003-03-27 | 2008-08-26 | Microsoft Corporation | Markup language and object model for vector graphics |
US7669129B2 (en) | 2003-04-04 | 2010-02-23 | Avid Technology, Inc. | Graphical user interface for providing editing of transform hierarchies within an effects tree |
US7665025B2 (en) | 2003-04-16 | 2010-02-16 | The Mathworks, Inc. | Signal navigation and label propagation in block diagrams |
US20040225657A1 (en) | 2003-05-07 | 2004-11-11 | Panacea Corporation | Web services method and system |
US8265979B2 (en) | 2003-06-17 | 2012-09-11 | International Business Machines Corporation | Automatic generation of process models |
EP1636730A2 (en) | 2003-06-18 | 2006-03-22 | Applera Corporation | Methods and systems for the analysis of biological sequence data |
EP1639510A1 (en) | 2003-06-24 | 2006-03-29 | BAE Systems PLC | A method, tool and system for increasing the efficiency of a design process |
WO2005001687A2 (en) | 2003-06-25 | 2005-01-06 | Ab Initio Software Corporation | Computer-aided parallelizing of computation graphs |
WO2005008414A2 (en) | 2003-07-11 | 2005-01-27 | Computer Associates Think, Inc. | Method and apparatus for parallel action processing |
GB0318196D0 (en) | 2003-08-02 | 2003-09-03 | Ibm | A method apparatus and computer program for processing a queue of messages |
US7243088B2 (en) | 2003-08-06 | 2007-07-10 | Oracle International Corporation | Database management system with efficient version control |
US7444595B2 (en) | 2003-08-13 | 2008-10-28 | National Instruments Corporation | Graphical programming system and method for creating and managing a scene graph |
US8307109B2 (en) | 2003-08-27 | 2012-11-06 | International Business Machines Corporation | Methods and systems for real time integration services |
US7174479B2 (en) | 2003-09-10 | 2007-02-06 | Microsoft Corporation | Method and system for rollback-free failure recovery of multi-step procedures |
US7849075B2 (en) | 2003-09-15 | 2010-12-07 | Ab Initio Technology Llc | Joint field profiling |
US7287133B2 (en) * | 2004-08-24 | 2007-10-23 | Symantec Operating Corporation | Systems and methods for providing a modification history for a location within a data store |
US20050102670A1 (en) | 2003-10-21 | 2005-05-12 | Bretl Robert F. | Shared object memory with object management for multiple virtual machines |
US7408566B2 (en) | 2003-10-22 | 2008-08-05 | Oki Data Corporation | Semiconductor device, LED print head and image-forming apparatus using same, and method of manufacturing semiconductor device |
US20050097515A1 (en) | 2003-10-31 | 2005-05-05 | Honeywell International, Inc. | Data empowered laborsaving test architecture |
US7743382B2 (en) | 2003-11-03 | 2010-06-22 | Ramal Acquisition Corp. | System for deadlock condition detection and correction by allowing a queue limit of a number of data tokens on the queue to increase |
US7480863B2 (en) | 2003-11-26 | 2009-01-20 | International Business Machines Corporation | Dynamic and intelligent hover assistance |
US7296072B2 (en) | 2003-12-12 | 2007-11-13 | International Business Machines Corporation | Enhanced port type agnostic proxy support for web services intermediaries |
US7404189B2 (en) | 2003-12-30 | 2008-07-22 | International Business Machines Corporation | Scheduler supporting web service invocation |
US7543275B2 (en) | 2004-01-29 | 2009-06-02 | Sun Microsystems, Inc. | Mechanism for executing test suites written for different harnesses under one test execution harness |
US7594227B2 (en) | 2004-03-08 | 2009-09-22 | Ab Initio Technology Llc | Dependency graph parameter scoping |
US7467383B2 (en) | 2004-03-08 | 2008-12-16 | Ab Initio Software Llc | System for controlling task execution using a graphical representation of task dependency |
CA2563478A1 (en) | 2004-04-16 | 2005-10-27 | James A. Aman | Automatic event videoing, tracking and content generation system |
US20050256818A1 (en) | 2004-04-30 | 2005-11-17 | Xerox Corporation | Workflow auto generation from user constraints and hierarchical dependence graphs for workflows |
JP2007536634A (ja) | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | プロセス制御システムのためのサービス指向型アーキテクチャ |
US7614037B2 (en) | 2004-05-21 | 2009-11-03 | Microsoft Corporation | Method and system for graph analysis and synchronization |
US7316001B2 (en) | 2004-06-05 | 2008-01-01 | Graphlogic Inc. | Object process graph system |
WO2005121959A2 (en) | 2004-06-08 | 2005-12-22 | Dartdevices Corporation | Architecture, apparatus and method for device team recruitment and content renditioning for universal device interoperability platform |
US7398514B2 (en) | 2004-09-29 | 2008-07-08 | Microsoft Corporation | Test automation stack layering |
US7343482B2 (en) | 2004-10-20 | 2008-03-11 | Arm Limited | Program subgraph identification |
JP4759983B2 (ja) | 2004-11-04 | 2011-08-31 | 船井電機株式会社 | ディスク装置のファームウェア書き換え方法、及びファームウェア書き換えプログラム |
US7598953B2 (en) | 2004-11-05 | 2009-10-06 | Microsoft Corporation | Interpreter for simplified programming of graphics processor units in general purpose programming languages |
US8082541B2 (en) | 2004-12-09 | 2011-12-20 | Advantest Corporation | Method and system for performing installation and configuration management of tester instrument modules |
US7703027B2 (en) | 2005-01-13 | 2010-04-20 | National Instruments Corporation | Merging graphical programs |
WO2006078751A2 (en) | 2005-01-18 | 2006-07-27 | Everypoint, Inc. | Systems and methods for processing changing data |
US8396886B1 (en) | 2005-02-03 | 2013-03-12 | Sybase Inc. | Continuous processing language for real-time data streams |
US7620947B2 (en) | 2005-03-11 | 2009-11-17 | Autodesk, Inc. | Enhanced directed graph representation for dependency systems |
US7505975B2 (en) | 2005-04-14 | 2009-03-17 | Bea Systems, Inc. | Use of transaction context to select single database instance for global transaction |
JP4246176B2 (ja) | 2005-04-25 | 2009-04-02 | 株式会社日立製作所 | トランザクション処理方法及びその実施装置並びにその処理プログラムを記録した媒体 |
US7716630B2 (en) | 2005-06-27 | 2010-05-11 | Ab Initio Technology Llc | Managing parameters for graph-based computations |
US7877350B2 (en) | 2005-06-27 | 2011-01-25 | Ab Initio Technology Llc | Managing metadata for graph-based computations |
US20070118839A1 (en) | 2005-10-24 | 2007-05-24 | Viktors Berstis | Method and apparatus for grid project modeling language |
US7747565B2 (en) | 2005-12-07 | 2010-06-29 | Microsoft Corporation | Garbage collector support for transactional memory |
US8073671B2 (en) | 2006-03-31 | 2011-12-06 | Microsoft Corporation | Dynamic software performance models |
US7870556B2 (en) | 2006-05-16 | 2011-01-11 | Ab Initio Technology Llc | Managing computing resources in graph-based computations |
WO2008021953A2 (en) | 2006-08-10 | 2008-02-21 | Ab Initio Software Llc | Distributing services in graph-based computations |
US7844946B2 (en) | 2006-09-26 | 2010-11-30 | Intel Corporation | Methods and apparatus to form a transactional objective instruction construct from lock-based critical sections |
JP5042315B2 (ja) | 2006-10-19 | 2012-10-03 | チェックマークス リミテッド | ソースコード内のセキュリティ脆弱性の検出 |
US8191052B2 (en) | 2006-12-01 | 2012-05-29 | Murex S.A.S. | Producer graph oriented programming and execution |
US20080244524A1 (en) | 2007-03-27 | 2008-10-02 | Tim Kelso | Program Test System |
US7805635B2 (en) | 2007-04-09 | 2010-09-28 | International Business Machines Corporation | Constraint programming for reduction of system test-configuration-matrix complexity |
US8069129B2 (en) | 2007-04-10 | 2011-11-29 | Ab Initio Technology Llc | Editing and compiling business rules |
WO2008131106A1 (en) | 2007-04-17 | 2008-10-30 | Earl Industries Llc | Digital system for organizing diverse information |
JP4073033B1 (ja) | 2007-04-27 | 2008-04-09 | 透 降矢 | 結合演算の処理機能の向上を考慮した合成関係演算を利用したマルチオペレーション・プロセッシングを用いたデータベースのクエリー処理システム |
US8832073B2 (en) * | 2007-06-29 | 2014-09-09 | Alcatel Lucent | Method and apparatus for efficient aggregate computation over data streams |
CN101821721B (zh) | 2007-07-26 | 2017-04-12 | 起元技术有限责任公司 | 具有误差处理的事务型基于图的计算 |
US8347292B2 (en) | 2007-08-30 | 2013-01-01 | International Business Machines Corporation | Transaction aggregation to increase transaction processing throughout |
JP5453273B2 (ja) | 2007-09-20 | 2014-03-26 | アビニシオ テクノロジー エルエルシー | グラフベース計算におけるデータフロー管理 |
US7886141B2 (en) | 2007-10-27 | 2011-02-08 | Asix Electronics Corporation | Method and systems for advanced reprogrammable boot codes and in-application programming of embedded microprocessor systems |
US8775441B2 (en) | 2008-01-16 | 2014-07-08 | Ab Initio Technology Llc | Managing an archive for approximate string matching |
US20090193417A1 (en) | 2008-01-24 | 2009-07-30 | Nec Laboratories America, Inc. | Tractable dataflow analysis for concurrent programs via bounded languages |
US8225288B2 (en) | 2008-01-29 | 2012-07-17 | Intuit Inc. | Model-based testing using branches, decisions, and options |
US8797178B2 (en) | 2008-03-10 | 2014-08-05 | Microsoft Corporation | Efficient stream sharing for multi-user sensor data collection |
US20090235267A1 (en) | 2008-03-13 | 2009-09-17 | International Business Machines Corporation | Consolidated display of resource performance trends |
US9184874B2 (en) | 2008-03-31 | 2015-11-10 | Qualcomm Incorporated | Storing log likelihood ratios in interleaved form to reduce hardware memory |
US8336052B2 (en) | 2008-06-16 | 2012-12-18 | International Business Machines Corporation | Management, control, and monitoring of workload including unrelated processes of different containers |
WO2010002919A1 (en) | 2008-06-30 | 2010-01-07 | Ab Initio Software Llc | Data logging in graph-based computations |
US20100070955A1 (en) | 2008-07-08 | 2010-03-18 | Nec Laboratories America | Alias analysis for concurrent software programs |
US8782613B2 (en) | 2008-08-12 | 2014-07-15 | Hewlett-Packard Development Company, L.P. | Optimizing applications using source code patterns and performance analysis |
US8286176B1 (en) | 2008-09-29 | 2012-10-09 | Amazon Technologies, Inc. | Optimizing resource configurations |
US20100169137A1 (en) | 2008-12-31 | 2010-07-01 | Ebay Inc. | Methods and systems to analyze data using a graph |
US7979479B2 (en) | 2009-01-08 | 2011-07-12 | International Business Machines Corporation | Transaction-controlled graph processing and management |
US8635694B2 (en) | 2009-01-10 | 2014-01-21 | Kaspersky Lab Zao | Systems and methods for malware classification |
KR101730513B1 (ko) | 2009-02-13 | 2017-04-26 | 아브 이니티오 테크놀로지 엘엘시 | 태스크 실행 관리 |
US7992040B2 (en) | 2009-02-20 | 2011-08-02 | International Business Machines Corporation | Root cause analysis by correlating symptoms with asynchronous changes |
US8327377B2 (en) | 2009-04-30 | 2012-12-04 | Ca, Inc. | Detecting, logging and tracking component dependencies in web service transactions |
US8332811B2 (en) | 2009-04-30 | 2012-12-11 | United Parcel Service Of America, Inc. | Systems and methods for generating source code for workflow platform |
US9069808B2 (en) * | 2009-05-20 | 2015-06-30 | International Business Machines Corporation | Indexing provenance data and evaluating provenance data queries in data processing systems |
US8473901B1 (en) | 2009-06-12 | 2013-06-25 | The Mathworks, Inc. | Non-literal representation of programming language code |
US8205113B2 (en) | 2009-07-14 | 2012-06-19 | Ab Initio Technology Llc | Fault tolerant batch processing |
US8667329B2 (en) | 2009-09-25 | 2014-03-04 | Ab Initio Technology Llc | Processing transactions in graph-based applications |
WO2011069131A1 (en) * | 2009-12-04 | 2011-06-09 | Google Inc. | Presenting real time search results |
AU2014262225A1 (en) | 2010-06-15 | 2014-12-04 | Ab Initio Technology Llc | Dynamically loading graph-based computations |
US8458729B2 (en) | 2010-07-20 | 2013-06-04 | International Business Machines Corporation | Managing and optimizing workflows among computer applications |
US9158650B2 (en) | 2010-08-04 | 2015-10-13 | BoxTone, Inc. | Mobile application performance management |
EP2609507B1 (en) | 2010-08-25 | 2019-05-15 | Ab Initio Technology LLC | Evaluating dataflow graph characteristics |
CN103180826B (zh) | 2010-10-25 | 2017-04-05 | 起元技术有限责任公司 | 在代表计算机程序的数据流图中管理数据集对象 |
US8997024B2 (en) | 2010-12-09 | 2015-03-31 | Microsoft Technology Licensing, Llc | Navigating between views of a graph using placemarkers |
AU2012100128A4 (en) | 2011-02-22 | 2012-03-08 | Zensar Technologies Ltd | A computer implemented system and method for indexing and optionally annotating use cases and generating test scenarios therefrom |
US8863089B2 (en) | 2011-02-25 | 2014-10-14 | Nintendo Co., Ltd. | Method and apparatus for visualizing computer program execution |
US8732669B2 (en) | 2011-03-11 | 2014-05-20 | Oracle International Corporation | Efficient model checking technique for finding software defects |
US9165029B2 (en) | 2011-04-12 | 2015-10-20 | Microsoft Technology Licensing, Llc | Navigating performance data from different subsystems |
US9116955B2 (en) * | 2011-05-02 | 2015-08-25 | Ab Initio Technology Llc | Managing data queries |
WO2012152315A1 (en) * | 2011-05-10 | 2012-11-15 | Telefonaktiebolaget L M Ericsson (Publ) | Optimised data stream management system |
US8775299B2 (en) | 2011-07-12 | 2014-07-08 | Experian Information Solutions, Inc. | Systems and methods for large-scale credit data processing |
US9152470B2 (en) | 2011-09-07 | 2015-10-06 | Imagine Communications Corp. | Systems and methods for computing applications |
WO2013069078A1 (ja) * | 2011-11-07 | 2013-05-16 | 株式会社 日立製作所 | 時系列データ処理装置、時系列データ処理方法、及び時系列データ処理プログラムを格納したコンピュータ読み取り可能な記録媒体 |
US9875094B2 (en) | 2012-08-29 | 2018-01-23 | International Business Machines Corporation | Microcode upgrade in a storage system |
US9507682B2 (en) | 2012-11-16 | 2016-11-29 | Ab Initio Technology Llc | Dynamic graph performance monitoring |
US9274926B2 (en) | 2013-01-03 | 2016-03-01 | Ab Initio Technology Llc | Configurable testing of computer programs |
CA2932763C (en) | 2013-12-05 | 2022-07-12 | Ab Initio Technology Llc | Managing interfaces for dataflow graphs composed of sub-graphs |
-
2015
- 2015-08-05 US US14/818,895 patent/US10657134B2/en active Active
-
2016
- 2016-08-04 EP EP16759900.0A patent/EP3332336A1/en not_active Ceased
- 2016-08-04 CA CA2994408A patent/CA2994408C/en active Active
- 2016-08-04 CN CN201680046044.5A patent/CN107924406A/zh active Pending
- 2016-08-04 WO PCT/US2016/045612 patent/WO2017024164A1/en active Application Filing
- 2016-08-04 AU AU2016301376A patent/AU2016301376B2/en active Active
- 2016-08-04 JP JP2017567783A patent/JP7023718B2/ja active Active
-
2018
- 2018-07-30 HK HK18109824.3A patent/HK1250404A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010108073A (ja) | 2008-10-28 | 2010-05-13 | Hitachi Ltd | ストリームデータ処理方法、及びシステム |
JP2013513864A (ja) | 2009-12-14 | 2013-04-22 | アビニシオ テクノロジー エルエルシー | ユーザ・インターフェース要素の指定 |
JP2013528884A (ja) | 2010-06-15 | 2013-07-11 | アビニシオ テクノロジー エルエルシー | グラフに基づく計算の動的ロード |
WO2014011708A2 (en) | 2012-07-12 | 2014-01-16 | Microsoft Corporation | Progressive query computation using streaming architectures |
WO2014041673A1 (ja) | 2012-09-14 | 2014-03-20 | 株式会社日立製作所 | ストリームデータ多重処理方法 |
JP2014157510A (ja) | 2013-02-15 | 2014-08-28 | International Business Maschines Corporation | ストリーム・データ処理システム、方法及びプログラム |
US20150169332A1 (en) | 2013-12-13 | 2015-06-18 | Ab Initio Technology Llc | Dynamically determing a mode of a data processing application |
Non-Patent Citations (2)
Title |
---|
勝沼 聡、外3名,車載組込みシステム向けデータストリーム管理の静的スケジューリング方式,情報処理学会論文誌 論文誌トランザクション 2012(平成24)年度(1) [CD-ROM],日本,一般社団法人情報処理学会,2012年10月15日,第5巻,第3号,p.36-50 |
勝沼 聡、外5名,車載組込みシステム向けデータストリーム管理システムの開発,電子情報通信学会論文誌,日本,一般社団法人電子情報通信学会,2012年12月01日,第J95-D巻,第12号,p.2031-2047 |
Also Published As
Publication number | Publication date |
---|---|
AU2016301376B2 (en) | 2021-07-22 |
JP2018528506A (ja) | 2018-09-27 |
US10657134B2 (en) | 2020-05-19 |
WO2017024164A1 (en) | 2017-02-09 |
CA2994408A1 (en) | 2017-02-09 |
CN107924406A (zh) | 2018-04-17 |
EP3332336A1 (en) | 2018-06-13 |
HK1250404A1 (zh) | 2018-12-14 |
AU2016301376A1 (en) | 2018-01-25 |
US20170039245A1 (en) | 2017-02-09 |
CA2994408C (en) | 2022-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7023718B2 (ja) | リアルタイムデータストリームに対して実行するためのクエリの選択 | |
AU2020210281B2 (en) | Impact analysis | |
KR101169296B1 (ko) | 그래프 기반 계산을 위한 파라미터의 관리 | |
KR101278078B1 (ko) | 그래프 기반 계산을 위한 파라미터의 관리 | |
US8060544B2 (en) | Representation of data transformation processes for parallelization | |
US10452509B2 (en) | Dynamic component performance monitoring | |
CN104838377A (zh) | 利用映射缩减集成事件处理 | |
AU2014364882B2 (en) | Data generation | |
CN103069385A (zh) | 动态加载基于图的计算 | |
US11074079B2 (en) | Event handling instruction processing | |
US11487534B2 (en) | Static and runtime analysis of computer program ecosystems | |
de Oliveira et al. | Background Knowledge | |
Saxena | Distributed Programming Models for Big Data Analytics | |
Wadkar et al. | Basics of MapReduce Development | |
Deinum et al. | Spring Batch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181019 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190603 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200527 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200622 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20200903 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201222 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20210702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211101 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20211101 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20211112 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20211115 |
|
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: 20220105 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220209 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7023718 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |