JP2021525925A - データフローグラフ最適化のシステム及び方法 - Google Patents
データフローグラフ最適化のシステム及び方法 Download PDFInfo
- Publication number
- JP2021525925A JP2021525925A JP2020567012A JP2020567012A JP2021525925A JP 2021525925 A JP2021525925 A JP 2021525925A JP 2020567012 A JP2020567012 A JP 2020567012A JP 2020567012 A JP2020567012 A JP 2020567012A JP 2021525925 A JP2021525925 A JP 2021525925A
- Authority
- JP
- Japan
- Prior art keywords
- data flow
- flow graph
- nodes
- data processing
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 256
- 238000000034 method Methods 0.000 title claims description 146
- 238000012545 processing Methods 0.000 claims abstract description 328
- 238000003860 storage Methods 0.000 claims abstract description 56
- 230000026676 system process Effects 0.000 claims description 39
- 230000009467 reduction Effects 0.000 claims description 32
- 230000008030 elimination Effects 0.000 claims 5
- 238000003379 elimination reaction Methods 0.000 claims 5
- 230000008569 process Effects 0.000 description 60
- 230000006399 behavior Effects 0.000 description 33
- 238000013500 data storage Methods 0.000 description 29
- 230000015654 memory Effects 0.000 description 23
- 230000009471 action Effects 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 12
- 230000014509 gene expression Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000001914 filtration Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000000644 propagated effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- VUFOSBDICLTFMS-UHFFFAOYSA-M ethyl-hexadecyl-dimethylazanium;bromide Chemical compound [Br-].CCCCCCCCCCCCCCCC[N+](C)(C)CC VUFOSBDICLTFMS-UHFFFAOYSA-M 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- 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
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/433—Dependency analysis; Data or control flow analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Complex Calculations (AREA)
- Multi Processors (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
102−1 データ記憶装置
102−2 データ記憶装置
104 クエリー入力モジュール
106 クエリープランジェネレータ
108 データフローグラフジェネレータ
110 グラフオプティマイザ
112 モジュール
115 グラフ実行エンジン
Claims (38)
- 少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、
自動的に生成された初期データフローグラフを取得することであって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、取得することと、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成することであって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含する、生成することと、
少なくとも部分的に、第1のコンピュータシステムプロセスを用いて前記第1のデータ処理動作を実行し、及び前記第1のコンピュータシステムプロセスとは異なる第2のコンピュータシステムプロセスを用いて、前記第2のデータ処理動作を実行することにより、前記更新されたデータフローグラフを実行することと、
を行わせる、プロセッサ実行可能命令を保存した、少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記プロセッサ実行可能命令が、前記少なくとも1つのコンピュータハードウェアプロセッサに、
前記更新されたデータフローグラフの1つ又は複数のノードのそれぞれに処理レイアウトを割り当てること、
をさらに行わせる、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記更新されたデータフローグラフを実行することが、前記割り当てられた1つ又は複数の処理レイアウトに従って行われる、請求項2に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記第2の複数のノードが、前記第1の複数のノードよりも少ない数のノードを有する、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記第2の複数のリンクが、前記第1の複数のリンクよりも少ない数のリンクを有する、請求項4に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記更新されたデータフローグラフを生成することが、
第1の最適化ルールを選択することと、
前記第1の最適化ルールを適用する前記初期データフローグラフの第1の部分を識別することと、
前記第1の最適化ルールを前記初期データフローグラフの前記第1の部分に適用することと、
を含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記更新されたデータフローグラフを生成することが、
前記第1の最適化ルールとは異なる第2の最適化ルールを選択することと、
前記第2の最適化ルールを適用する前記初期データフローグラフの第2の部分を識別することと、
前記第2の最適化ルールを前記初期データフローグラフの前記第2の部分に適用することと、
をさらに含む、請求項6に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記初期データフローグラフの前記第1の部分を識別することが、データフロー部分グラフパターンマッチング言語を用いて行われる、請求項6に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記初期データフローグラフの前記第1の部分を識別することが、第1のノードに接続される第2のノードによって表される第2のデータ処理動作と交換する第1のデータ処理動作を表す前記第1のノードを識別することを含む、請求項6に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記第1の最適化ルールを適用することが、冗長データ処理動作の除去、強度低下最適化、統合動作最適化、幅減少最適化、及び重複排除最適化から成る群から選択された最適化を適用することを含む、請求項6に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 更新されたデータフローグラフを生成することが、冗長動作を表す第1のノードを識別することと、前記第1のノードを前記初期データフローグラフから除去することと、を含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 更新されたデータフローグラフを生成することが、それぞれのソートデータ処理動作を表す、前記初期データフローグラフにおける2つのノードを識別することと、前記2つのノードを、ソートデータ処理動作を表す単一のノードに置換することと、を含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記2つのノードが、前記初期データフローグラフにおいて、互いに隣接していない、請求項12に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 更新されたデータフローグラフを生成することが、第1のデータ処理動作を表す第1のノードを、前記第1のデータ処理動作よりも弱いタイプの第2のデータ処理動作を表す第2のノードに置換することを含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 更新されたデータフローグラフを生成することが、それぞれの結合データ処理動作を表す、前記初期データフローグラフにおける2つのノードを識別することと、前記2つのノードを、結合データ処理動作を表す単一のノードに置換することと、を含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記自動的に生成された初期データフローグラフを取得することが、前記初期データフローグラフを自動的に生成することを含む、請求項1に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記初期データフローグラフを自動的に生成することが、
構造化照会言語(SQL)クエリーを取得することと、
前記SQLクエリーのクエリープランを生成することと、
前記クエリープランを使用して、前記初期データフローグラフを生成することと、
を含む、請求項16に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 自動的に生成された初期データフローグラフを取得することであって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、取得することと、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成することであって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含する、生成することと、
少なくとも部分的に、第1のコンピュータシステムプロセスを用いて前記第1のデータ処理動作を実行し、及び前記第1のコンピュータシステムプロセスとは異なる第2のコンピュータシステムプロセスを用いて、前記第2のデータ処理動作を実行することにより、前記更新されたデータフローグラフを実行することと、
を行うために、少なくとも1つのコンピュータハードウェアプロセッサを使用することを含む、方法。 - 前記更新されたデータフローグラフの1つ又は複数のノードのそれぞれに処理レイアウトを割り当てることをさらに含み、
前記実行することが、前記割り当てられた1つ又は複数の処理レイアウトに従って行われる、請求項18に記載の方法。 - 前記更新されたデータフローグラフを生成することが、
第1の最適化ルールを選択することと、
前記第1の最適化ルールを適用する前記初期データフローグラフの第1の部分を識別することと、
前記第1の最適化ルールを前記初期データフローグラフの前記第1の部分に適用することと、
を含む、請求項18に記載の方法。 - 前記初期データフローグラフの前記第1の部分を識別することが、第1のノードに接続される第2のノードによって表される第2のデータ処理動作と交換する第1のデータ処理動作を表す前記第1のノードを識別することを含む、請求項20に記載の方法。
- 前記第1の最適化ルールを適用することが、冗長データ処理動作の除去、強度低下最適化、統合動作最適化、幅減少最適化、及び重複排除最適化から成る群から選択された最適化を適用することを含む、請求項20に記載の方法。
- 構造化照会言語(SQL)クエリーを取得することと、
前記SQLクエリーのクエリープランを生成することと、
前記クエリープランを使用して、前記初期データフローグラフを生成することと、
をさらに含む、請求項18に記載の方法。 - 少なくとも1つのコンピュータハードウェアプロセッサと、
前記少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、
自動的に生成された初期データフローグラフを取得することであって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、取得することと、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成することであって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含する、生成することと、
少なくとも部分的に、第1のコンピュータシステムプロセスを用いて前記第1のデータ処理動作を実行し、及び前記第1のコンピュータシステムプロセスとは異なる第2のコンピュータシステムプロセスを用いて、前記第2のデータ処理動作を実行することにより、前記更新されたデータフローグラフを実行することと、
を行わせる、プロセッサ実行可能命令を保存した、少なくとも1つの非一時的コンピュータ可読ストレージ媒体と、
を含む、データ処理システム。 - 前記プロセッサ実行可能命令が、前記少なくとも1つのコンピュータハードウェアプロセッサに、
前記更新されたデータフローグラフの1つ又は複数のノードのそれぞれに処理レイアウトを割り当てることをさらに行わせ、
前記実行することが、前記割り当てられた1つ又は複数の処理レイアウトに従って行われる、請求項24に記載のデータ処理システム。 - 前記更新されたデータフローグラフを生成することが、
第1の最適化ルールを選択することと、
前記第1の最適化ルールを適用する前記初期データフローグラフの第1の部分を識別することと、
前記第1の最適化ルールを前記初期データフローグラフの前記第1の部分に適用することと、
を含む、請求項24に記載のデータ処理システム。 - 前記初期データフローグラフの前記第1の部分を識別することが、第1のノードに接続される第2のノードによって表される第2のデータ処理動作と交換する第1のデータ処理動作を表す前記第1のノードを識別することを含む、請求項26に記載のデータ処理システム。
- 前記第1の最適化ルールを適用することが、冗長データ処理動作の除去、強度低下最適化、統合動作最適化、幅減少最適化、及び重複排除最適化から成る群から選択された最適化を適用することを含む、請求項27に記載のデータ処理システム。
- 前記プロセッサ実行可能命令が、前記少なくとも1つのコンピュータハードウェアプロセッサに、
構造化照会言語(SQL)クエリーを取得することと、
前記SQLクエリーのクエリープランを生成することと、
前記クエリープランを使用して、前記初期データフローグラフを生成することと、
をさらに行わせる、請求項24に記載のデータ処理システム。 - 自動的に生成された初期データフローグラフを取得するための手段であって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、自動的に生成された初期データフローグラフを取得するための手段と、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成するための手段であって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含する、更新されたデータフローグラフを生成するための手段と、
少なくとも部分的に、第1のコンピュータシステムプロセスを用いて前記第1のデータ処理動作を実行し、及び前記第1のコンピュータシステムプロセスとは異なる第2のコンピュータシステムプロセスを用いて、前記第2のデータ処理動作を実行することにより、前記更新されたデータフローグラフを実行するための手段と、
を含む、プロセッサ実行可能命令を保存した、少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、
自動的に生成された初期データフローグラフを取得することであって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、取得することと、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成することであって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含し、前記生成することが、
少なくとも部分的に、第1のノードに接続される第2のノードによって表される第2のデータ処理動作と交換する第1のデータ処理動作を表す前記第1のノードを識別することによって、第1の最適化ルールを適用する前記初期データフローグラフの第1の部分を識別することと、
前記第1の最適化ルールを前記初期データフローグラフの前記第1の部分に適用することと、
を含む、生成することと、
を行わせる、プロセッサ実行可能命令を保存した、少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記プロセッサ実行可能命令が、前記少なくとも1つのコンピュータハードウェアプロセッサに、
前記更新されたデータフローグラフの1つ又は複数のノードのそれぞれに処理レイアウトを割り当てること、
をさらに行わせ、
前記実行することが、前記割り当てられた1つ又は複数の処理レイアウトに従って行われる、請求項31に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記第1のデータ処理動作がソート動作である、請求項31に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記第1の最適化ルールを適用することが、冗長データ処理動作の除去、強度低下最適化、統合動作最適化、幅減少最適化、及び重複排除最適化から成る群から選択された最適化を適用することを含む、請求項31に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
- 前記プロセッサ実行可能命令が、少なくとも1つのコンピュータハードウェアプロセッサに、
構造化照会言語(SQL)クエリーを取得することと、
前記SQLクエリーのクエリープランを生成することと、
前記クエリープランを使用して、前記初期データフローグラフを生成することと、
をさらに行わせる、請求項31に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、
自動的に生成された初期データフローグラフを取得することであって、前記初期データフローグラフが、第1の複数のデータ処理動作を表す第1の複数のノードと、前記第1の複数のノードのノード間のデータのフローを表す第1の複数のリンクと、を含む、取得することと、
前記初期データフローグラフを更新するために、データフローグラフ最適化ルールを反復的に適用することにより、更新されたデータフローグラフを生成することであって、前記更新されたデータフローグラフが、第2の複数のデータ処理動作を表す第2の複数のノードと、前記第2の複数のノードのノード間のデータのフローを表す第2の複数のリンクと、を含み、前記第2の複数のノードが、第1のデータ処理動作を表すノードと、前記第2のデータ処理動作を表す別のノードと、を包含し、前記生成することが、
冗長データ処理動作の除去、強度低下最適化、幅減少最適化、及び重複排除最適化の中から、前記初期データフローグラフの第1の部分に適用する第1の最適化ルールを選択することと、
前記第1の最適化ルールを前記初期データフローグラフの前記第1の部分に適用することと、
を含む、生成することと、
を行わせる、プロセッサ実行可能命令を保存した、少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記プロセッサ実行可能命令が、前記少なくとも1つのコンピュータハードウェアプロセッサに、
前記更新されたデータフローグラフの1つ又は複数のノードのそれぞれに処理レイアウトを割り当てること、
をさらに行わせ、
前記実行することが、前記割り当てられた1つ又は複数の処理レイアウトに従って行われる、請求項36に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。 - 前記プロセッサ実行可能命令が、少なくとも1つのコンピュータハードウェアプロセッサに、
構造化照会言語(SQL)クエリーを取得することと、
前記SQLクエリーのクエリープランを生成することと、
前記クエリープランを使用して、前記初期データフローグラフを生成することと、
をさらに行わせる、請求項36に記載の少なくとも1つの非一時的コンピュータ可読ストレージ媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/993,284 | 2018-05-30 | ||
US15/993,284 US20190370407A1 (en) | 2018-05-30 | 2018-05-30 | Systems and methods for dataflow graph optimization |
PCT/US2019/033573 WO2019231793A1 (en) | 2018-05-30 | 2019-05-22 | Systems and methods for dataflow graph optimization |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021525925A true JP2021525925A (ja) | 2021-09-27 |
JP7487115B2 JP7487115B2 (ja) | 2024-05-20 |
Family
ID=66858007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020567012A Active JP7487115B2 (ja) | 2018-05-30 | 2019-05-22 | データフローグラフ最適化のシステム及び方法 |
Country Status (11)
Country | Link |
---|---|
US (1) | US20190370407A1 (ja) |
EP (3) | EP4250135A3 (ja) |
JP (1) | JP7487115B2 (ja) |
KR (1) | KR20210025024A (ja) |
CN (1) | CN112534401A (ja) |
AU (3) | AU2019276969B2 (ja) |
CA (1) | CA3102118A1 (ja) |
CL (1) | CL2020003100A1 (ja) |
MX (1) | MX2020012906A (ja) |
SG (1) | SG11202011682SA (ja) |
WO (1) | WO2019231793A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10673716B1 (en) * | 2017-10-31 | 2020-06-02 | Amazon Technologies, Inc. | Graph-based generation of dependency-adherent execution plans for data center migrations |
US11188434B2 (en) | 2017-12-08 | 2021-11-30 | Ab Initio Technology Llc | Systems and methods for monitoring execution of structured query language (SQL) queries |
WO2020030807A1 (en) * | 2018-08-09 | 2020-02-13 | Inesc Tec Instituto De Engenharia De Sistemas De Computadores, Tecnologia E Ciência | Method and apparatus for optimizing code for field programmable gate arrays |
US11061596B2 (en) * | 2019-11-04 | 2021-07-13 | Google Llc | Multi-pass distributed data shuffle |
US11281721B2 (en) * | 2019-11-22 | 2022-03-22 | International Business Machines Corporation | Augmenting relational database engines with graph query capability |
US10949178B1 (en) * | 2019-12-13 | 2021-03-16 | Intuit Inc. | Method and system for decomposing a global application programming interface (API) graph into an application-specific API subgraph |
US11593380B2 (en) | 2020-01-28 | 2023-02-28 | Ab Initio Technology Llc | Editor for generating computational graphs |
US11210285B2 (en) * | 2020-03-06 | 2021-12-28 | Ab Initio Technology Llc | Generation of optimized logic from a schema |
CA3209125A1 (en) | 2021-01-31 | 2022-08-04 | Ab Initio Technology Llc | Data processing system with manipulation of logical dataset groups |
US11567998B2 (en) * | 2021-03-25 | 2023-01-31 | Databricks, Inc. | Dataflow graph processing |
CN113852571B (zh) * | 2021-08-20 | 2023-11-28 | 阿里巴巴(中国)有限公司 | 分配流量的方法以及装置 |
US20230093911A1 (en) * | 2021-09-30 | 2023-03-30 | Ab Initio Technology Llc | Systems and methods for performing data processing operations using variable level parallelism |
CN115098093B (zh) * | 2022-08-24 | 2022-12-02 | 湖南云畅网络科技有限公司 | 一种数据流程表达式处理方法及系统 |
CN115964372B (zh) * | 2023-01-03 | 2023-11-21 | 中国科学院空间应用工程与技术中心 | 一种空间站有效载荷分布式事件提取方法和系统 |
CN116107154B (zh) * | 2023-04-13 | 2023-09-05 | 长鑫存储技术有限公司 | 掩膜版数据生成方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06161773A (ja) * | 1992-11-20 | 1994-06-10 | Sanyo Electric Co Ltd | 並列処理プログラムの作成装置 |
JP2001222452A (ja) * | 2000-02-10 | 2001-08-17 | Ricoh Co Ltd | リレーショナルデータベースシステムにおける問い合わせ処理最適化装置 |
JP2005018767A (ja) * | 2003-06-23 | 2005-01-20 | Microsoft Corp | クエリオプティマイザのシステムおよび方法 |
JP2005309684A (ja) * | 2004-04-20 | 2005-11-04 | Ntt Data Corp | データベースシステム、および、プログラム |
JP2014519080A (ja) * | 2011-05-02 | 2014-08-07 | アビニシオ テクノロジー エルエルシー | データクエリの管理 |
WO2014209260A1 (en) * | 2013-06-24 | 2014-12-31 | Hewlett-Packard Development Company, L.P. | Processing a data flow graph of a hybrid flow |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5966072A (en) | 1996-07-02 | 1999-10-12 | Ab Initio Software Corporation | Executing computations expressed as graphs |
US5918255A (en) * | 1997-08-01 | 1999-06-29 | Ut Automotive Dearborn, Inc. | Method for testing motor armature shafts |
US7089172B2 (en) * | 2001-12-28 | 2006-08-08 | Testout Corporation | System and method for simulating a computer environment and evaluating a user's performance within a simulation |
US7716630B2 (en) | 2005-06-27 | 2010-05-11 | Ab Initio Technology Llc | Managing parameters for graph-based computations |
KR101911793B1 (ko) * | 2010-10-25 | 2018-10-25 | 아브 이니티오 테크놀로지 엘엘시 | 컴퓨터 프로그램을 나타내는 데이터플로우 그래프 내의 데이터세트 객체의 관리 |
US8838579B2 (en) * | 2012-04-26 | 2014-09-16 | Sap Ag | Data flow graph optimization using adaptive rule chaining |
US8793243B2 (en) * | 2012-04-26 | 2014-07-29 | Sap Ag | Rule-based extendable query optimizer |
US9990398B2 (en) * | 2013-09-20 | 2018-06-05 | Oracle International Corporation | Inferring dimensional metadata from content of a query |
WO2016078072A1 (zh) * | 2014-11-21 | 2016-05-26 | 华为技术有限公司 | 一种实现业务优化的方法及系统 |
WO2017019879A1 (en) * | 2015-07-29 | 2017-02-02 | Algebraix Data Corp. | Multi-query optimization |
US10133778B2 (en) * | 2015-11-20 | 2018-11-20 | Sap Se | Query optimization using join cardinality |
US10528599B1 (en) * | 2016-12-16 | 2020-01-07 | Amazon Technologies, Inc. | Tiered data processing for distributed data |
US9798527B1 (en) * | 2017-01-06 | 2017-10-24 | Google Inc. | Loop and library fusion |
-
2018
- 2018-05-30 US US15/993,284 patent/US20190370407A1/en active Pending
-
2019
- 2019-05-22 KR KR1020207037986A patent/KR20210025024A/ko active Search and Examination
- 2019-05-22 SG SG11202011682SA patent/SG11202011682SA/en unknown
- 2019-05-22 JP JP2020567012A patent/JP7487115B2/ja active Active
- 2019-05-22 AU AU2019276969A patent/AU2019276969B2/en active Active
- 2019-05-22 CN CN201980049799.4A patent/CN112534401A/zh active Pending
- 2019-05-22 WO PCT/US2019/033573 patent/WO2019231793A1/en unknown
- 2019-05-22 EP EP23191246.0A patent/EP4250135A3/en active Pending
- 2019-05-22 EP EP19730617.8A patent/EP3803570B1/en active Active
- 2019-05-22 MX MX2020012906A patent/MX2020012906A/es unknown
- 2019-05-22 CA CA3102118A patent/CA3102118A1/en active Pending
- 2019-05-22 EP EP23191257.7A patent/EP4250136A3/en active Pending
-
2020
- 2020-11-27 CL CL2020003100A patent/CL2020003100A1/es unknown
-
2023
- 2023-11-23 AU AU2023270294A patent/AU2023270294A1/en active Pending
- 2023-11-23 AU AU2023270295A patent/AU2023270295A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06161773A (ja) * | 1992-11-20 | 1994-06-10 | Sanyo Electric Co Ltd | 並列処理プログラムの作成装置 |
JP2001222452A (ja) * | 2000-02-10 | 2001-08-17 | Ricoh Co Ltd | リレーショナルデータベースシステムにおける問い合わせ処理最適化装置 |
JP2005018767A (ja) * | 2003-06-23 | 2005-01-20 | Microsoft Corp | クエリオプティマイザのシステムおよび方法 |
JP2005309684A (ja) * | 2004-04-20 | 2005-11-04 | Ntt Data Corp | データベースシステム、および、プログラム |
JP2014519080A (ja) * | 2011-05-02 | 2014-08-07 | アビニシオ テクノロジー エルエルシー | データクエリの管理 |
WO2014209260A1 (en) * | 2013-06-24 | 2014-12-31 | Hewlett-Packard Development Company, L.P. | Processing a data flow graph of a hybrid flow |
Also Published As
Publication number | Publication date |
---|---|
AU2019276969A1 (en) | 2020-12-17 |
JP7487115B2 (ja) | 2024-05-20 |
MX2020012906A (es) | 2021-05-27 |
AU2023270295A1 (en) | 2023-12-14 |
WO2019231793A1 (en) | 2019-12-05 |
CL2020003100A1 (es) | 2021-05-14 |
US20190370407A1 (en) | 2019-12-05 |
CN112534401A (zh) | 2021-03-19 |
EP4250135A3 (en) | 2023-12-27 |
EP3803570B1 (en) | 2023-08-30 |
SG11202011682SA (en) | 2020-12-30 |
EP4250135A2 (en) | 2023-09-27 |
AU2023270294A1 (en) | 2023-12-14 |
EP4250136A3 (en) | 2023-12-20 |
AU2019276969B2 (en) | 2023-08-24 |
EP4250136A8 (en) | 2023-12-13 |
CA3102118A1 (en) | 2019-12-05 |
KR20210025024A (ko) | 2021-03-08 |
EP4250136A2 (en) | 2023-09-27 |
EP3803570A1 (en) | 2021-04-14 |
EP4250135A8 (en) | 2023-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7487115B2 (ja) | データフローグラフ最適化のシステム及び方法 | |
AU2018272840B2 (en) | Automated dependency analyzer for heterogeneously programmed data processing system | |
KR102549994B1 (ko) | 가변 레벨 병렬화를 사용하여 데이터 처리 동작을 수행하기 위한 시스템 및 방법 | |
US11288241B1 (en) | Systems and methods for integration and analysis of data records | |
US8204865B2 (en) | Logical conflict detection | |
EP3572952A1 (en) | Unified optimization of iterative analytical query processing | |
Burgueño et al. | On the concurrent execution of model transformations with linda | |
JP2021506043A (ja) | 構造化照会言語(sql)クエリーの実行をモニタするためのシステム及び方法 | |
CN112970011A (zh) | 记录查询优化中的谱系 | |
Talwalkar et al. | Mlbase: A distributed machine learning wrapper | |
US11921710B2 (en) | Systems and methods for accessing data entities managed by a data processing system | |
US20230359668A1 (en) | Dataflow graph datasets | |
US20230093911A1 (en) | Systems and methods for performing data processing operations using variable level parallelism | |
Honório | Plataforma de Mapeamento de Registos Multi-Domínio | |
Abidin et al. | Towards flexible database conversion with automatic restructuring |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220302 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230816 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240214 |
|
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: 20240408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240508 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7487115 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |