JP7360328B2 - 異種にプログラムされたデータ処理システムの自動依存性アナライザ - Google Patents
異種にプログラムされたデータ処理システムの自動依存性アナライザ Download PDFInfo
- Publication number
- JP7360328B2 JP7360328B2 JP2019564843A JP2019564843A JP7360328B2 JP 7360328 B2 JP7360328 B2 JP 7360328B2 JP 2019564843 A JP2019564843 A JP 2019564843A JP 2019564843 A JP2019564843 A JP 2019564843A JP 7360328 B2 JP7360328 B2 JP 7360328B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- dependency
- data structure
- dependencies
- programs
- 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
- 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
-
- 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
Description
リターンされる変数の値は、その関数の処理で使用される変数を含む、関数内の処理に依存し得るため、変数の値をリターンする関数はまた、依存性を作成する場合がある。
関数
は、以下の依存性構成要素によって表現され得る。
要素的なデータ要素以外のデータエンティティに対する動作もまた、本明細書で説明するシステムによって取り扱うことができる。幾つかの実施形態では、データエンティティは階層的であってもよい。動作は、階層の任意のレベルにおいてデータエンティティに対して実行できる。従って、依存性構成要素は、階層の任意の適用可能なレベルにおけるデータエンティティの識別に対応できる。そのようなデータエンティティの1つは、例えば、データセットの例であるグローバルテーブルである。データセットは、その中に他のデータエンティティを含んでもよい。例えば、テーブルには行と列が含まれ、これらがデータエンティティと見なされ得る。
この実施例では、条件付き制御フローを作成するプログラミングステートメントが依存性分析のためにどのように表され得るかを示す。この実施例では、条件付きステートメントは、「if then…else」フォーマットである。この実施例は、以下のような条件付きステートメントを含む関数に関連する。
制御フロー依存性はまた、「while do」ループを実装するステートメントによって作成されてもよい。そのようなループでは、言及された式が真と評価されている間に、コードブロックが実行される。このシナリオでは、そのブロックと、その式の値に影響を与えるデータエンティティとの間に制御フロー依存性がある。そのようなステートメントを用いる関数の例は、以下のとおりである。
この実施例は、たとえ関数が他の関数をコールする場合でも、限られた数の構成要素によって依存性を表わし得ることを示している。この実施例では、3つの関数が定義され、第2の関数「g()」が第1の関数「h()」をコールしている。第3の関数「f()」は、次いで、以下のように第2の関数をコールする。
マルチレベルコールツリーと同様に、抽出された依存性情報でプログラムの再帰を表すために、追加の構成要素は必要ない。むしろ、再帰がより下位の解析ツリーの一部として保存され得ることを示す情報、及びバックエンド処理は、その再帰から生じ得る任意の追加の依存性を計算することができる。
Claims (38)
- データ処理システムで使用するための依存性アナライザであって、
少なくとも1つのコンピュータハードウェアプロセッサと、
プロセッサ実行可能命令を保存する少なくとも1つの非一時的コンピュータ可読記憶媒体であって、前記少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、
前記データ処理システムが実行するように構成された複数のプログラムのそれぞれに対して、前記プログラムの少なくとも部分の解析に基づいて、前記プログラム内の動作を反映する第1のデータ構造を構築させ、ここで、複数のプログラムは、複数の言語で記述されており、
複数の前記第1のデータ構造のそれぞれに対して、
依存性に影響を与えない動作が選択されないように、1つ以上のデータ要素への依存性に影響を与える前記第1のデータ構造に反映される動作を選択させ、ここで、前記動作を選択することは、プログラムが記述されているプログラミング言語に基づいて選択されたツールを用いて、制御フロー又はデータフロー依存性に影響を与える動作の指示をプログラムから識別することを含み、前記プログラムの少なくとも部分は、前記第1のデータ構造を構築するために解析されており、
選択された各動作に対して、依存性構成要素のセットから選択された依存性構成要素を記録することによって、前記選択された動作の指示を第2のデータ構造に記録させ、前記複数のプログラムのそれぞれに対する前記依存性構成要素のセットが、前記プログラムが記述されている言語に依存しておらず、
前記選択された動作の指示が記録されている複数の第2のデータ構造を処理させ、前記処理が、データ要素に対する制御フロー又はデータフロー依存性を識別することを含み、前記依存性が、前記複数のプログラムのうちのいずれかの実行中に生じ得る依存性であり、
前記識別された制御フロー又はデータフロー依存性を依存性データ構造に記録させ、前記依存性データ構造が、データ要素間の制御フロー又はデータフロー依存性を示すように構成された前記複数のプログラム内のデータ要素を示すデータを含む、依存性アナライザ。 - 前記依存性は、制御フロー依存性とデータフロー依存性とを含む、請求項1に記載の依存性アナライザ。
- 前記依存性は、データフロー依存性を含む、請求項1に記載の依存性アナライザ。
- 前記データ処理システムは、複数の、言語に依存するパーサを備え、
前記第1のデータ構造を構築することが、前記複数のプログラムのそれぞれに対して、前記プログラムが記述されている言語に基づいて言語に依存するパーサを選択することを含む、請求項1に記載の依存性アナライザ。 - 前記複数のプログラムは、複数のソース言語で記述されている、請求項4に記載の依存性アナライザ。
- 前記ソース言語にはSQLが含まれる、請求項5に記載の依存性アナライザ。
- 前記ソース言語には、データフローグラフを表すグラフィカルプログラミング言語が含まれる、請求項5に記載の依存性アナライザ。
- 前記ソース言語には、SQL、及びデータフローグラフを表すグラフィカルプログラミング言語が含まれる、請求項5に記載の依存性アナライザ。
- 前記データ処理システムは、制御フロー又はデータフロー依存性に影響を与える動作の指示を、前記第1のデータ構造から抽出するための複数の、言語に依存するツールを備える、請求項4に記載の依存性アナライザ。
- 前記複数の構築された第1のデータ構造のそれぞれに対して、選択された動作の指示を前記第2のデータ構造に記録することは、構成要素のセットからの構成要素を記録することを含む、請求項1に記載の依存性アナライザ。
- 前記構成要素のセットは、割り当て、プロシージャ定義、プロシージャリターン、プロシージャコールサイト、「if…else」フォーマットの条件付き制御フロー、及び「while…do」フォーマットの条件付き制御フローを表す構成要素のうちの2つ以上で構成される、請求項10に記載の依存性アナライザ。
- 前記構成要素のセットは、割り当て、プロシージャ定義、プロシージャリターン、プロシージャコールサイト、「if…else」フォーマットの条件付き制御フロー、及び「while…do」フォーマットの条件付き制御フローを表す構成要素で本質的に構成される、請求項10に記載の依存性アナライザ。
- 前記依存性データ構造にアクセスし、ユーザインタフェースを介して、データ要素に依存するデータエンティティ又はコードブロックに関する情報を提示する、少なくとも1つのツールを更に備える、請求項2に記載の依存性アナライザ。
- 前記データ処理システムは、複数のデータソースを更に含み、
前記複数のプログラムは、前記複数のデータソース内のデータに変換を実行するように構成されており、
前記複数のデータソースは異種である、請求項2に記載の依存性アナライザ。 - 前記複数のデータソースは、ORACLEデータベース若しくはSAPデータベース、又はHADOOP分散ファイルシステムに保存されているデータセット、のうちの少なくとも1つであるデータソースを備える、請求項14に記載の依存性アナライザ。
- データ処理システムで使用するように構成された依存性アナライザの動作方法であって、
前記データ処理システム内で実行し、且つ、プログラミング言語でのデータ処理動作を指定するように構成された複数のプログラムを実行する少なくとも1つのコンピュータハードウェアプロセッサを使用することであって、前記複数のプログラムが複数のプログラミング言語で記述されている、ことと、
各プログラムの少なくとも部分を解析することによって、前記複数のプログラムのそれぞれの第1のデータ構造を構築することと、
複数の前記第1のデータ構造のそれぞれに対して、
1つ以上のデータ要素への依存性に影響を与える前記第1のデータ構造に反映される動作を選択することであって、前記動作を選択することは、プログラムが記述されているプログラミング言語に基づいて選択されたツールを用いて、制御フロー又はデータフロー依存性に影響を与える動作の指示をプログラムから識別することを含み、前記プログラムの少なくとも部分は、前記第1のデータ構造を構築するために解析されている、ことと、
選択された各動作に対して、前記選択された動作の指示を第2のデータ構造に記録することであって、前記指示が、全ての前記第2データ構造に共通する依存性構成要素のセットを使用して前記第2データ構造に記録される、ことと、
前記選択された動作の指示が記録されている前記第2のデータ構造を処理することであって、前記処理が、前記複数のプログラムのうちのいずれかの実行中に生じ得るデータ要素に対する制御フロー又はデータフロー依存性を識別することを含む、ことと、
前記識別された制御フロー又はデータフロー依存性を依存性データ構造に記録することであって、前記依存性データ構造が、データ要素間の制御フロー又はデータフロー依存性を示すように構成された前記複数のプログラム内のデータ要素を示すデータを含む、ことと、
を含む、方法。 - 前記依存性は、データフローの依存性である、請求項16に記載の方法。
- 前記依存性は、制御フロー依存性とデータフロー依存性とを含む、請求項16に記載の方法。
- 前記複数のプログラムのそれぞれの第1のデータ構造を構築することは、前記複数のプログラムが記述されている言語に基づいて前記複数のプログラムのパーサを選択することを含む、請求項16に記載の方法。
- 前記複数のプログラムは、SQL、及びデータフローグラフを表すグラフィカルプログラミング言語を含む複数のソース言語で記述されており、
パーサを選択することは、前記複数のソース言語のそれぞれに対してパーサを選択することを含む、請求項16に記載の方法。 - 前記第2のデータ構造に記録することは、複数のソース言語のそれぞれにおいて記述されたプログラミングについての前記依存性構成要素のセットから第2のデータ構造を構築することを含む、請求項20に記載の方法。
- 前記第1のデータ構造は言語に依存し、
前記第2のデータ構造は言語に依存しない、請求項16に記載の方法。 - 前記選択された動作の指示を前記第2のデータ構造に記録することは、制御フロー又はデータフロー依存性に影響を与えない、前記第1データ構造内の動作に関する情報が前記第2データ構造から省略されるように、制御フロー又はデータフロー依存性に影響を与える動作の指示を前記第1のデータ構造から抽出することを含む、請求項16に記載の方法。
- 前記データ処理システムは、制御フロー又はデータフロー依存性に影響を与える動作の指示を前記第1のデータ構造から抽出するための複数の、言語に依存するツールを備える、請求項22に記載の方法。
- 前記依存性構成要素のセットは、割り当て、プロシージャ定義、プロシージャリターン、プロシージャコールサイト、「if…else」フォーマットの条件付き制御フロー、及び「while…do」フォーマットの条件付き制御フローを表す構成要素のうちの2つ以上で構成される、請求項16に記載の方法。
- データ処理システムとともに使用される依存性アナライザの動作方法であって、
前記データ処理システム内で実行し、且つ、プログラミング言語でのデータ処理動作を指定するように構成された複数のプログラムを実行する少なくとも1つのコンピュータハードウェアプロセッサを使用することであって、前記複数のプログラムが複数のプログラミング言語で記述されている、ことと、
各プログラムの少なくとも部分を解析することによって、前記複数のプログラムのそれぞれの第1のデータ構造を構築することと、
複数の前記第1のデータ構造のそれぞれに対して、
1つ以上のデータ要素への依存性に影響を与える前記第1のデータ構造に反映される動作を選択することであって、前記動作を選択することは、プログラムが記述されているプログラミング言語に基づいて選択されたツールを用いて、制御フロー又はデータフロー依存性に影響を与える動作の指示をプログラムから識別することを含み、前記プログラムの少なくとも部分は、前記第1のデータ構造を構築するために解析されている、ことと、
選択された各動作に対して、前記選択された動作の指示を第2のデータ構造に記録することであって、前記指示が、全ての前記第2データ構造に共通する依存性構成要素のセットを使用して前記第2データ構造に記録される、ことと、
前記第2のデータ構造を処理することであって、前記処理が、前記複数のプログラムの何れかの処理の結果として一つ以上のデータ要素についての制御フロー依存性を識別することを含む、ことと、
前記一つ以上のデータ要素についての識別された制御フロー依存性を依存性データ構造に記録することと、
を含む、方法。 - 前記依存性構成要素のセットは、「if…else」フォーマットの条件付き制御フローを含む、請求項25に記載の方法。
- 前記依存性構成要素のセットは、「while…do」フォーマットの条件付き制御フローを含む、請求項25に記載の方法。
- 複数の前記第1のデータ構造のそれぞれに対して、データフロー依存性を生成する、前記第1のデータ構造における、動作の指示を前記第2のデータ構造に選択的に記録することであって、前記指示は、全ての前記第2データ構造に共通する依存性構成要素のセットを使用して前記第2のデータ構造に記録される、請求項25に記載の方法。
- プロセッサ実行可能命令を保存する少なくとも1つの非一時的コンピュータ可読記憶媒体であって、少なくとも1つのコンピュータハードウェアプロセッサによって実行されると、前記少なくとも1つのコンピュータハードウェアプロセッサに、それぞれのプログラミング言語においてデータ処理動作を規定する複数のプログラムについて、方法を実行させ、前記複数のプログラムは、複数のプログラミング言語を用い、
前記方法は、
各プログラムの少なくとも部分を解析することによって、前記複数のプログラムのそれぞれの第1のデータ構造を構築することと、
複数の前記第1のデータ構造のそれぞれに対して、
1つ以上のデータ要素への制御フロー又はデータフロー依存性に影響を与える前記第1のデータ構造に反映されている動作を、プログラムが記述されているプログラミング言語に基づいて選択されたツールを用いて、前記第1のデータ構造から抽出することであって、前記プログラムの少なくも部分は、前記第1のデータ構造を構築するために解析されている、ことと、
前記抽出された動作の指示を第2のデータ構造に記録することであって、前記抽出された動作の指示は、全ての前記第2データ構造に共通する依存性構成要素のセットを使用して、前記第2のデータ構造に記録に記録される、ことと、
前記第2のデータ構造を処理することであって、前記処理が、前記複数のプログラムの何れかの処理の結果としてデータ要素についての依存性を識別することを含む、ことと、
前記識別された依存性を依存性データ構造に記録することと、
を含む、非一時的コンピュータ可読記憶媒体。 - 前記複数のプログラムのそれぞれの第1のデータ構造を構築することは、前記複数のプログラムが記述されている言語に基づいて前記複数のプログラムのパーサを選択することを含む、請求項30に記載の非一時的コンピュータ可読記憶媒体。
- 前記複数のプログラムは、SQL、及びデータフローグラフを表すグラフィカルプログラミング言語を含む複数のソース言語で記述されており、
パーサを選択することは、前記複数のソース言語のそれぞれに対してパーサを選択することを含む、請求項31に記載の非一時的コンピュータ可読記憶媒体。 - 前記複数の前記構築された第1のデータ構造のそれぞれにおいて動作の指示を抽出することは、前記複数のソース言語のそれぞれで記述されたプログラムの前記依存性構成要素のセットから第2のデータ構造を構築することを含む、請求項32に記載の非一時的コンピュータ可読記憶媒体。
- 前記第1のデータ構造は言語に依存し、
前記第2のデータ構造は言語に依存しない、請求項30に記載の非一時的コンピュータ可読記憶媒体。 - 前記第1のデータ構造における前記動作の指示を抽出することは、依存性に影響を与えない前記第1データ構造内の動作に関する情報が前記第2データ構造から省略されるように、依存性に影響を与える前記第1のデータ構造における前記動作の指示を前記第2のデータ構造に選択的に記録することを含む、請求項30に記載の非一時的コンピュータ可読記憶媒体。
- データ処理システムは、前記第1のデータ構造を下位にするための複数の、言語に依存するツールを備え、
前記第1のデータ構造において動作の指示を抽出することは、前記複数の第1のデータ構造のそれぞれに対して、前記第1のデータ構造を構築するために解析されたプログラムが記述されている言語に基づいて、前記第1のデータ構造における動作の指示を抽出するための言語に依存するツールを選択することを含む、請求項30に記載の少なくとも1つの非一時的コンピュータ可読記憶媒体。 - 前記依存性構成要素のセットは、割り当て、プロシージャ定義、プロシージャリターン、プロシージャコールサイト、「if…else」フォーマットの条件付き制御フロー、及び「while…do」フォーマットの条件付き制御フローを表す構成要素のうちの2つ以上で構成される、請求項30に記載の少なくとも1つの非一時的コンピュータ可読記憶媒体。
- データ処理システムで使用するための依存性アナライザであって、
コンピュータの少なくとも一つのハードウェアコンポーネントを、
複数のプログラムのそれぞれを表す第1のデータ構造を構築するための手段であって、前記第1のデータ構造が前記複数のプログラムのそれぞれのプログラムにおける動作を反映し、前記複数のプログラムは、複数のプログラミング言語で記述されている、手段と、
それぞれの第1のデータ構造から、制御フロー又はデータフロー依存性に影響を与える動作の指示を、第1のデータ構造を構築するために解析されたプログラムが記述されているプログラミング言語に基づいて選択されたツールを用いて、識別する手段と、
依存性に影響を及ぼさない前記複数の前記構築された第1のデータ構造のそれぞれにおける動作に関する情報が前記第2のデータ構造から省略されるように、一つ以上のデータ要素についての制御フロー又はデータフロー依存性に影響を与える前記第1のデータ構造における動作の指示を第2のデータ構造に記録するための手段と、
前記第2のデータ構造を処理して、前記複数のプログラムのうちのいずれかにおける動作の実行の結果として一つ以上のデータ要素に対する制御フロー又はデータフロー依存性を識別するための手段と、
前記識別された一つ以上のデータ要素に対する制御フロー又はデータフロー依存性を依存性データ構造に記録するための手段と、
として機能させる、依存性アナライザ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023170105A JP2023182708A (ja) | 2017-05-22 | 2023-09-29 | 異種にプログラムされたデータ処理システムの自動依存性アナライザ |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/601,911 | 2017-05-22 | ||
US15/601,911 US10379825B2 (en) | 2017-05-22 | 2017-05-22 | Automated dependency analyzer for heterogeneously programmed data processing system |
PCT/US2018/033882 WO2018217745A1 (en) | 2017-05-22 | 2018-05-22 | Automated dependency analyzer for heterogeneously programmed data processing system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023170105A Division JP2023182708A (ja) | 2017-05-22 | 2023-09-29 | 異種にプログラムされたデータ処理システムの自動依存性アナライザ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020522790A JP2020522790A (ja) | 2020-07-30 |
JP2020522790A5 JP2020522790A5 (ja) | 2021-07-26 |
JP7360328B2 true JP7360328B2 (ja) | 2023-10-12 |
Family
ID=63592791
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019564843A Active JP7360328B2 (ja) | 2017-05-22 | 2018-05-22 | 異種にプログラムされたデータ処理システムの自動依存性アナライザ |
JP2023170105A Pending JP2023182708A (ja) | 2017-05-22 | 2023-09-29 | 異種にプログラムされたデータ処理システムの自動依存性アナライザ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023170105A Pending JP2023182708A (ja) | 2017-05-22 | 2023-09-29 | 異種にプログラムされたデータ処理システムの自動依存性アナライザ |
Country Status (7)
Country | Link |
---|---|
US (2) | US10379825B2 (ja) |
EP (2) | EP4202644A1 (ja) |
JP (2) | JP7360328B2 (ja) |
CN (1) | CN110998516B (ja) |
AU (1) | AU2018272840B2 (ja) |
CA (1) | CA3064561A1 (ja) |
WO (1) | WO2018217745A1 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3238381A1 (en) * | 2014-12-23 | 2017-11-01 | Entit Software LLC | Load testing |
US10795935B2 (en) | 2016-02-05 | 2020-10-06 | Sas Institute Inc. | Automated generation of job flow definitions |
US10642896B2 (en) * | 2016-02-05 | 2020-05-05 | Sas Institute Inc. | Handling of data sets during execution of task routines of multiple languages |
US10650046B2 (en) | 2016-02-05 | 2020-05-12 | Sas Institute Inc. | Many task computing with distributed file system |
USD898059S1 (en) | 2017-02-06 | 2020-10-06 | Sas Institute Inc. | Display screen or portion thereof with graphical user interface |
US10379825B2 (en) | 2017-05-22 | 2019-08-13 | Ab Initio Technology Llc | Automated dependency analyzer for heterogeneously programmed data processing system |
USD898060S1 (en) | 2017-06-05 | 2020-10-06 | Sas Institute Inc. | Display screen or portion thereof with graphical user interface |
US10990364B2 (en) | 2018-06-06 | 2021-04-27 | Ab Initio Technology Llc | Updating executable graphs |
US10877870B2 (en) * | 2018-06-11 | 2020-12-29 | Tata Consultancy Services Limited | Method and system for verifying properties of source code |
US10733075B2 (en) * | 2018-08-22 | 2020-08-04 | Fujitsu Limited | Data-driven synthesis of fix patterns |
EP3850559A4 (en) * | 2018-09-20 | 2021-11-10 | Huawei Technologies Co., Ltd. | SYSTEMS AND METHODS FOR GRAPH-BASED QUERY ANALYSIS |
US11029927B2 (en) | 2019-03-30 | 2021-06-08 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US10965536B2 (en) | 2019-03-30 | 2021-03-30 | Intel Corporation | Methods and apparatus to insert buffers in a dataflow graph |
US11294894B2 (en) | 2019-08-30 | 2022-04-05 | Oracle International Corporation | Dynamic resolution of dependencies for database guest languages |
US20210149734A1 (en) * | 2019-11-15 | 2021-05-20 | Nvidia Corporation | Techniques for modifying an executable graph to perform a workload associated with a new task graph |
LU101480B1 (en) * | 2019-11-18 | 2021-05-18 | Luxembourg Inst Science & Tech List | Data preprocessing for a supervised machine learning process |
US11385889B2 (en) | 2019-12-04 | 2022-07-12 | Oracle International Corporation | Inferring intra package and module dependencies |
US11440190B1 (en) * | 2020-02-26 | 2022-09-13 | Trend Micro Incorporated | Detecting unsecure data flow in automation task programs |
US11360751B2 (en) | 2020-03-19 | 2022-06-14 | Codelogic, Inc. | Systems and methods for dependency analysis |
US11366648B2 (en) * | 2020-05-28 | 2022-06-21 | Red Hat, Inc. | Compiling monoglot function compositions into a single entity |
CN112162776B (zh) * | 2020-09-04 | 2023-07-14 | 维沃移动通信有限公司 | 依赖关系获取方法及装置 |
CN114741993B (zh) * | 2022-04-18 | 2023-06-16 | 山东浪潮科学研究院有限公司 | 一种基于脚本的数据流图生成方法及装置 |
CN114611712B (zh) * | 2022-05-10 | 2022-08-26 | 富算科技(上海)有限公司 | 基于异构联邦学习的预测方法、模型生成方法及装置 |
CN114968364B (zh) * | 2022-07-12 | 2022-11-08 | 飞腾信息技术有限公司 | 一种条件语句的处理方法、装置及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005018114A (ja) | 2003-06-23 | 2005-01-20 | Internatl Business Mach Corp <Ibm> | プログラム保守支援装置、プログラム保守支援方法、およびプログラム |
US20110302563A1 (en) | 2010-06-08 | 2011-12-08 | Avaya Inc. | Program structure recovery using multiple languages |
JP2013156786A (ja) | 2012-01-30 | 2013-08-15 | Hitachi Automotive Systems Ltd | ソフトウェアの構造可視化プログラムおよびシステム |
JP2017502385A (ja) | 2013-12-06 | 2017-01-19 | アビニシオ テクノロジー エルエルシー | ソースコード変換 |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4914585A (en) | 1988-05-23 | 1990-04-03 | Hewlett-Packard Company | Modular complier with a class independent parser and a plurality of class dependent parsers |
IL100989A (en) * | 1991-02-27 | 1995-10-31 | Digital Equipment Corp | Analysis of inductive expressions in multilingual mehadoptimization |
US5826256A (en) * | 1991-10-22 | 1998-10-20 | Lucent Technologies Inc. | Apparatus and methods for source code discovery |
JP3328056B2 (ja) * | 1994-03-01 | 2002-09-24 | 新日鉄ソリューションズ株式会社 | 構文解析木からの情報抽出装置 |
CA2143145C (en) | 1994-04-18 | 1999-12-28 | Premkumar Thomas Devanbu | Determining dynamic properties of programs |
US5966072A (en) | 1996-07-02 | 1999-10-12 | Ab Initio Software Corporation | Executing computations expressed as graphs |
US6745384B1 (en) * | 1998-05-29 | 2004-06-01 | Microsoft Corporation | Anticipatory optimization with composite folding |
US6988183B1 (en) * | 1998-06-26 | 2006-01-17 | Derek Chi-Lan Wong | Methods for increasing instruction-level parallelism in microprocessors and digital system |
US7974875B1 (en) | 2000-03-21 | 2011-07-05 | Aol Inc. | System and method for using voice over a telephone to access, process, and carry out transactions over the internet |
US6681383B1 (en) * | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
JP2002099561A (ja) | 2000-09-21 | 2002-04-05 | Toshiba Corp | データ変換方法およびデータ変換システム並びに記憶媒体 |
US7174536B1 (en) * | 2001-02-12 | 2007-02-06 | Iowa State University Research Foundation, Inc. | Integrated interactive software visualization environment |
US7369984B2 (en) | 2002-02-01 | 2008-05-06 | John Fairweather | Platform-independent real-time interface translation by token mapping without modification of application code |
US20040010752A1 (en) | 2002-07-09 | 2004-01-15 | Lucent Technologies Inc. | System and method for filtering XML documents with XPath expressions |
US7398516B2 (en) | 2003-04-18 | 2008-07-08 | Ounce Labs, Inc. | Method and system for detecting race condition vulnerabilities in source code |
US7707566B2 (en) * | 2003-06-26 | 2010-04-27 | Microsoft Corporation | Software development infrastructure |
US7788652B2 (en) * | 2003-06-27 | 2010-08-31 | Microsoft Corporation | Representing type information in a compiler and programming tools framework |
US7757212B2 (en) * | 2004-05-21 | 2010-07-13 | Bea Systems, Inc. | System and method for managing cross project dependencies at development time |
US7734619B2 (en) | 2005-05-27 | 2010-06-08 | International Business Machines Corporation | Method of presenting lineage diagrams representing query plans |
US7716630B2 (en) | 2005-06-27 | 2010-05-11 | Ab Initio Technology Llc | Managing parameters for graph-based computations |
US7493570B2 (en) | 2005-09-12 | 2009-02-17 | International Business Machines Corporation | User interface options of a data lineage tool |
US7958493B2 (en) | 2006-01-20 | 2011-06-07 | Kevin Edward Lindsey | Type inference system and method |
US20090043489A1 (en) | 2007-01-17 | 2009-02-12 | Weidner David P | Point of reference directions |
US8181167B2 (en) | 2008-01-09 | 2012-05-15 | Kan Zhao | Method and system for presenting and analyzing software source code through intermediate representation |
KR101510355B1 (ko) | 2008-02-26 | 2015-04-14 | 아브 이니티오 테크놀로지 엘엘시 | 데이터 관계의 그래픽 표현 |
US8347272B2 (en) | 2008-07-23 | 2013-01-01 | International Business Machines Corporation | Call graph dependency extraction by static source code analysis |
US8458654B2 (en) | 2008-10-22 | 2013-06-04 | International Business Machines Corporation | Identifying impact of database changes on an application |
AU2009322441B2 (en) | 2008-12-02 | 2016-07-28 | Ab Initio Technology Llc | Visualizing relationships between data elements |
US8819010B2 (en) | 2010-06-28 | 2014-08-26 | International Business Machines Corporation | Efficient representation of data lineage information |
CN103119561B (zh) * | 2010-09-23 | 2016-03-09 | 苹果公司 | 用于对非叶代码进行基于编译器的矢量化的系统和方法 |
US8775476B2 (en) | 2010-12-30 | 2014-07-08 | Skai, Inc. | System and method for creating, deploying, integrating, and distributing nodes in a grid of distributed graph databases |
JP5886878B2 (ja) | 2011-01-07 | 2016-03-16 | アビニシオ テクノロジー エルエルシー | フロー分析計装 |
US8782614B2 (en) | 2011-04-08 | 2014-07-15 | Ca, Inc. | Visualization of JVM and cross-JVM call stacks |
US9202185B2 (en) | 2011-04-08 | 2015-12-01 | Ca, Inc. | Transaction model with structural and behavioral description of complex transactions |
US8874525B2 (en) | 2011-04-19 | 2014-10-28 | Autodesk, Inc. | Hierarchical display and navigation of document revision histories |
US9430583B1 (en) | 2011-06-10 | 2016-08-30 | Salesforce.Com, Inc. | Extracting a portion of a document, such as a web page |
US8849824B2 (en) | 2011-10-07 | 2014-09-30 | Kabushiki Kaisha Square Enix | Database visualization system |
US20130283250A1 (en) | 2012-04-23 | 2013-10-24 | International Business Machines Corporation | Thread Specific Compiler Generated Customization of Runtime Support for Application Programming Interfaces |
US9753926B2 (en) | 2012-04-30 | 2017-09-05 | Salesforce.Com, Inc. | Extracting a portion of a document, such as a web page |
US9298453B2 (en) | 2012-07-03 | 2016-03-29 | Microsoft Technology Licensing, Llc | Source code analytics platform using program analysis and information retrieval |
US10089335B2 (en) | 2012-07-10 | 2018-10-02 | Microsoft Technology Licensing, Llc | Data lineage across multiple marketplaces |
US9182957B2 (en) | 2012-07-10 | 2015-11-10 | Loring Craymer | Method and system for automated improvement of parallelism in program compilation |
US9075860B2 (en) | 2012-10-18 | 2015-07-07 | Oracle International Corporation | Data lineage system |
US20150012315A1 (en) | 2013-07-02 | 2015-01-08 | Bank Of America Corporation | Data lineage role-based security tools |
US9256656B2 (en) | 2013-08-20 | 2016-02-09 | International Business Machines Corporation | Determining reliability of data reports |
US20150081701A1 (en) | 2013-09-16 | 2015-03-19 | Metanautix, Inc. | Systems and methods for data flow exploration |
US9710243B2 (en) | 2013-11-07 | 2017-07-18 | Eagle Legacy Modernization, LLC | Parser that uses a reflection technique to build a program semantic tree |
SG11201700381XA (en) | 2014-07-18 | 2017-02-27 | Ab Initio Technology Llc | Managing lineage information |
CA2956078C (en) | 2014-07-24 | 2021-12-07 | Ab Initio Technology Llc | Data lineage summarization |
US10025878B1 (en) | 2014-11-11 | 2018-07-17 | Google Llc | Data lineage analysis |
SG11201706195YA (en) | 2015-02-11 | 2017-08-30 | Ab Initio Technology Llc | Filtering data lineage diagrams |
WO2016130626A1 (en) | 2015-02-11 | 2016-08-18 | Ab Initio Technology Llc | Filtering data lineage diagrams |
US9712554B2 (en) | 2015-04-09 | 2017-07-18 | Accenture Global Services Limited | Event correlation across heterogeneous operations |
US10382566B2 (en) | 2015-04-16 | 2019-08-13 | Entit Software Llc | Business service discovery |
US10120923B2 (en) | 2015-11-30 | 2018-11-06 | Bank Of America Corporation | Data discovery and analysis tool |
US10379825B2 (en) | 2017-05-22 | 2019-08-13 | Ab Initio Technology Llc | Automated dependency analyzer for heterogeneously programmed data processing system |
-
2017
- 2017-05-22 US US15/601,911 patent/US10379825B2/en active Active
-
2018
- 2018-05-22 CN CN201880049296.2A patent/CN110998516B/zh active Active
- 2018-05-22 JP JP2019564843A patent/JP7360328B2/ja active Active
- 2018-05-22 EP EP23156996.3A patent/EP4202644A1/en active Pending
- 2018-05-22 WO PCT/US2018/033882 patent/WO2018217745A1/en active Application Filing
- 2018-05-22 CA CA3064561A patent/CA3064561A1/en active Pending
- 2018-05-22 AU AU2018272840A patent/AU2018272840B2/en active Active
- 2018-05-22 EP EP18770112.3A patent/EP3631618B1/en active Active
-
2019
- 2019-07-15 US US16/512,160 patent/US10817271B2/en active Active
-
2023
- 2023-09-29 JP JP2023170105A patent/JP2023182708A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005018114A (ja) | 2003-06-23 | 2005-01-20 | Internatl Business Mach Corp <Ibm> | プログラム保守支援装置、プログラム保守支援方法、およびプログラム |
US20110302563A1 (en) | 2010-06-08 | 2011-12-08 | Avaya Inc. | Program structure recovery using multiple languages |
JP2013156786A (ja) | 2012-01-30 | 2013-08-15 | Hitachi Automotive Systems Ltd | ソフトウェアの構造可視化プログラムおよびシステム |
JP2017502385A (ja) | 2013-12-06 | 2017-01-19 | アビニシオ テクノロジー エルエルシー | ソースコード変換 |
Also Published As
Publication number | Publication date |
---|---|
EP3631618A1 (en) | 2020-04-08 |
CA3064561A1 (en) | 2018-11-29 |
US20180336020A1 (en) | 2018-11-22 |
EP4202644A1 (en) | 2023-06-28 |
US10379825B2 (en) | 2019-08-13 |
CN110998516A (zh) | 2020-04-10 |
JP2020522790A (ja) | 2020-07-30 |
US10817271B2 (en) | 2020-10-27 |
US20190339952A1 (en) | 2019-11-07 |
CN110998516B (zh) | 2024-04-16 |
AU2018272840A1 (en) | 2019-12-12 |
WO2018217745A1 (en) | 2018-11-29 |
EP3631618B1 (en) | 2023-03-29 |
AU2018272840B2 (en) | 2023-02-16 |
JP2023182708A (ja) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7360328B2 (ja) | 異種にプログラムされたデータ処理システムの自動依存性アナライザ | |
JP7090778B2 (ja) | 影響分析 | |
KR102432104B1 (ko) | 데이터 요소 간의 관계를 결정하기 위한 시스템 및 방법 | |
US10162612B2 (en) | Method and apparatus for inventory analysis | |
CN110383238B (zh) | 用于基于模型的软件分析的系统和方法 | |
US10133649B2 (en) | System and methods for model-based analysis of software | |
Syme et al. | Expert F♯ | |
US11341116B2 (en) | Techniques for automated data analysis | |
Syme et al. | Expert F♯ 3.0 | |
Biswas et al. | Boa meets python: A boa dataset of data science software in python language | |
US20200210158A1 (en) | Automated or machine-enhanced source code debugging | |
US11243958B2 (en) | Implementing contract-based polymorphic and parallelizable SQL user-defined scalar and aggregate functions | |
Yang et al. | Powerstation: Automatically detecting and fixing inefficiencies of database-backed web applications in ide | |
Wei et al. | Discovering behavioural interfaces for overloaded web services | |
US20240146769A1 (en) | Systems and methods for managing privileges in a data processing system | |
Koitzsch | Pro Hadoop Data Analytics | |
Koitzsch | Pro Hadoop Data Analytics: Designing and Building Big Data Systems Using the Hadoop Ecosystem | |
CN115879945A (zh) | 一种智能合约写后读风险检测方法和电子设备 | |
Fortuin | Improving maintenance of templates | |
Iu | Database Queries in Java |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210513 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210513 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220531 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220822 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230522 |
|
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: 20230802 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230901 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230929 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7360328 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |