JP2013257903A - プログラム実行状態の保存 - Google Patents
プログラム実行状態の保存 Download PDFInfo
- Publication number
- JP2013257903A JP2013257903A JP2013178559A JP2013178559A JP2013257903A JP 2013257903 A JP2013257903 A JP 2013257903A JP 2013178559 A JP2013178559 A JP 2013178559A JP 2013178559 A JP2013178559 A JP 2013178559A JP 2013257903 A JP2013257903 A JP 2013257903A
- Authority
- JP
- Japan
- Prior art keywords
- execution
- program
- job
- distributed
- computing
- 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
- 238000000034 method Methods 0.000 claims abstract description 60
- 238000003860 storage Methods 0.000 claims description 111
- 230000006870 function Effects 0.000 claims description 21
- 230000000977 initiatory effect Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 4
- 230000000717 retained effect Effects 0.000 claims 1
- 230000009471 action Effects 0.000 description 23
- 230000007774 longterm Effects 0.000 description 17
- 230000015654 memory Effects 0.000 description 17
- 230000002085 persistent effect Effects 0.000 description 14
- 230000000875 corresponding effect Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000007726 management method Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
- Retry When Errors Occur (AREA)
Abstract
【解決手段】少なくとも幾つかの状況では、この技術は、プログラム用入力データの相違するサブセットを使用する実行ジョブのそれぞれと並列な方式の如き相違したコンピューティングノードにてそれぞれ実行できる多数の相違した実行ジョブにプログラム実行を分解若しくは分割することを含む。その上、実行ジョブの部分的な実行の中間状態を持続的に格納するが如く、少なくとも幾つかの実行ジョブを一時的に終了し、後に再開し、その後に、中間状態からその実行ジョブの実行を再開するために格納された中間状態を検索して使用することを本技術が含み得る。さらにまた、多数の顧客又は他のサービス利用者の為に多数のプログラムを実行する分散型プログラム実行サービスに関連して、本技術を利用できる。
【選択図】 図1A
Description
分散型プログラム実行サービスのコンピューティングシステムの制御の下で、複数のユーザのプログラムを実行するために形成可能な複数のコンピューティングノードを提供している分散型プログラム実行サービスであって、指示された入力データを使用して指示されたプログラムを実行する多数の要求を受信し、要求のそれぞれは複数のユーザの1人からのものであって、プログラムの指示と要求用に使われるべき入力データとを含み、そして、以下により自動的に各要求に応答する:
分散並列的な要求用に指示されたプログラムの多数の実行ジョブ実行に用いられる複数のコンピューティングノードの多数を自動的に選択することであって、多数の実行ジョブのそれぞれは、実行ジョブ用に選択される指示された入力データのサブセットを使用して実施されるべき多数の動作を有すること、
多数のコンピューティングノードのそれぞれに対して、1つの実行ジョブ用の入力データの選択されたサブセットを使用している多数の実行ジョブの1つのコンピューティングノードで実行を開始することであって、1つの実行ジョブのための多数の動作のうちの1つ以上の完了した実施によって生成される中間出力データを局所的に格納するために用いるコンピューティングノード上の一部の分散ファイルシステムを形成することを含むこと、
多数のコンピューティングノードの少なくとも幾つかでの多数の実行ジョブの実行の少なくとも幾つかが完了する前に、
少なくとも幾つかの実行ジョブのそれぞれの部分的実行状態を自動的に監視し、実行ジョブが実行しているコンピューティングノード用の分散ファイルシステム部分に局所的に格納される中間出力データを識別することを含む少なくとも幾つかの実行ジョブのそれぞれを監視し、中間出力データは実施が完了される実行ジョブの1つ以上の動作によって生成されていること、及び、
少なくとも幾つかの実行ジョブの1つ以上の最初の実行の終了を決定し、その決定に応答して、及び、1つ以上の実行ジョブのそれぞれに対して、実行ジョブが実行するコンピューティングノード用の分散ファイルシステム部分に格納される中間出力データの離隔した永続的な格納を自動的に開始すること,
第1時間後の第2時間に、1つ以上の実行ジョブのそれぞれに対して、第1時間に完了されなかった実行ジョブの動作の実施を開始することによって選択されたコンピューティングノードでの実行ジョブの再開実行を開始し、実行ジョブのために第1時間に格納された永続的に格納された中間出力データを検索することを含む再開された実行及び、選択されたコンピューティングノードでの分散ファイルシステムの一部分で検索された出力データの第2時間で格納を始めること、及び、
指示されたプログラムの多数の実行ジョブの実行が完了された後、1ユーザに対する実行からの最終結果を提供すること。
ユーザのためのプログラムの分散型実行を管理する分散型プログラム実行サービスを提供する1つ以上のコンピューティングシステムの制御の下で、分散型プログラム実行サービスはユーザのためのプログラムを実行するために形成可能な複数のコンピューティングノードを提供しており、
複数のコンピューティングノードの多数での指示されたプログラムの多数の実行ジョブの開始の後、指示されたプログラムの実行は第1ユーザのために実施されていて、多数の実行ジョブが、指示された入力データの少なくとも幾つかを使用して実施されるべき1つ以上の動作をそれぞれ有する様に指示された入力データを使用し、多数のコンピューティングノードでの多数の実行ジョブの実行状態についての情報を自動的に追尾し、追尾は、実施が完全である多数の実行ジョブの動作のサブセットから生成される中間結果及び多数のコンピューティングノードに格納される中間結果を識別することを含むこと、
少なくとも1つの多数の実行ジョブの実行を終了すると最初に決定した後、少なくとも1つの実行ジョブは、実施が完全である動作のサブセット中に在る少なくとも1つの動作を有し、サブセット中には無くて実施が完全でない少なくとも1つの他の動作を有し、追尾された情報を用いた少なくとも1つの動作を自動的に識別して、少なくとも1つの動作から生成される識別された中間結果の永続的な格納を開始すること、
第1時間以後の第2時間に、実施が完全であるサブセット中には無い少なくとも1つの他の動作の実施を完了するために、またサブセット中の少なくとも1つの動作の完了した実施を繰り返さないために少なくとも1つのコンピューティングノードでの少なくとも1つの実行ジョブの再開された実行を開始し、再開された実行は、永続的に格納された中間結果に少なくとも一部に基いた様式で実施されていること、及び、
指示されたプログラムの多数の実行ジョブの実行が完了された後、最初のユーザに対する実行からの最終結果を提供すること。
多数の実行ジョブの1つ以上の実行が完了された後、多数のコンピューティングノードのうちの1つ以上への1つ以上の付加的実行ジョブの実行を開始することであって、付加的実行ジョブの少なくとも1つは1つ以上の実行ジョブのうちの少なくとも1つの完了された実行によって生成される出力データを含む入力データを使用すること、及び、
多数の実行ジョブの実行と、指示されたプログラムの付加的実行ジョブの実行とが完了された後、第1ユーザに提供されるべき最終結果を生成することであって、生成された最終結果は、少なくとも幾つかの多数の実行ジョブ及び付加的実行ジョブの実行完了によって生成される出力データの一部に少なくとも基づく。
多数のコンピューティングノードの指示されたプログラムの分散型実行状態についての情報を追尾することであって、指示されたプログラムは多数のコンピューティングノードで実行している多数の実行ジョブを有し、実行ジョブは実施されるべき1つ以上の動作をそれぞれ有し、追尾された状態情報は、実施が完全である多数の実行ジョブの動作から生成される中間結果についての情報を含むこと、
少なくとも1つの実行ジョブの実行が終了した後であって、少なくとも1つの実行ジョブの動作の全ての実施が完了される前に、少なくとも1つの実行ジョブは実施が完全である少なくとも1つの動作を有し、少なくとも1つの動作以外の少なくとも1つの実行ジョブの動作の再開された実施を自動的に開始して指示されたプログラムの分散型実行を続けること、及び
指示されたプログラムの分散型実行が完了された後、分散型実行からの最終結果の指示を提供すること。
1つ以上のメモリ、及び
多数のユーザのそれぞれのため、以下による分散型実行サービスのユーザのために分散型実行を管理するために形成されるシステムマネージャコンポーネント:
ユーザから指示を受信し、多数の関連した実行ジョブの分散型実行を実施すること、
多数のコンピューティングノードで多数の実行ジョブの実行を開始すること、
多数の実行ジョブのうち少なくとも1つの実行ジョブの部分的実行が実施された後であって、しかし多数の実行ジョブの少なくとも1つの実行が完了する前に、少なくとも1つの実行ジョブの実行を終了すると決定し、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を自動的に開始すること、
後の時間で、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を検索し、検索された永続的に格納された中間状態の少なくとも一部に基づいて少なくとも1つの実行ジョブの実行を再開すること、及び、
多数の実行ジョブの実行が完了された後、実行からの最終結果をユーザへ提供すること。
ユーザから指示を受信し、多数の関連した実行ジョブの分散型実行を実施すること、
多数のコンピューティングノードで多数の実行ジョブの実行を開始すること、
多数の実行ジョブのうち少なくとも1つの部分的実行が実施された後であって、しかし多数の実行ジョブの少なくとも1つの実行が完了する前に、少なくとも1つの実行ジョブの実行を終了すると決定し、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を自動的に開始すること、
後の時間で、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を検索し、検索された永続的に格納された中間状態の少なくとも一部に基づいて少なくとも1つの実行ジョブの実行を再開すること、及び、
多数の実行ジョブの実行が完了された後、実行からの最終結果をユーザへ提供すること。
Claims (16)
- 複数のコンピューティングノード上のプログラムの分散型実行を開始するステップであって、前記プログラムは前記複数のコンピューティングノード上で実行する複数の実行ジョブを有し、前記複数の実行ジョブの各々は、実行される1または複数の操作を有する、開始するステップと、
前記複数の実行ジョブの1つまたは複数について完了した操作から生成された中間結果をトラッキングするステップであって、前記複数の実行ジョブは、実行が第1の時刻に終了する第1の実行ジョブを含み、前記第1の実行ジョブは、前記第1の時刻に完了する1または複数の第1の操作を有し、かつ前記第1の時刻に完了しない1または複数の他の第2の操作を有する、トラッキングするステップと、
前記第1の時刻の後で、前記1または複数の第1の操作のいずれをもさらに実行せずに、前記第1の実行ジョブの前記1または複数の第2の操作の再開された実行を開始することにより、前記プログラムの分散型実行を継続するステップであって、前記再開された実行の開始は、前記中間結果の少なくとも一部を用いることを含む、継続するステップと、
前記プログラムの分散型実行が完了した後で、前記分散型実行の最終結果の表示を提供するステップと
を含むことを特徴とするコンピュータにより実装される方法。 - 前記複数のコンピューティングノードは分散型プログラム実行サービスにより提供され、かつ前記分散型プログラム実行サービスのユーザに対してプログラムの分散型実行を実行するように構成され、前記プログラムの分散型実行は、前記分散型プログラム実行サービスの第1のユーザのために開始され、かつ前記第1のユーザにより指定されたプログラムに対する入力データを用いることを特徴とする請求項1に記載の方法。
- 前記中間結果のトラッキングは、前記少なくとも一部の中間結果を永続的に格納するステップを含み、前記第1の実行ジョブの実行は、前記実行が終了する前に前記第1の実行ジョブについて用いられる前記複数のコンピューティングノードの1または複数の、前記第1の時刻における失敗に基づいて終了し、前記プログラムの分散型実行の継続は、前記1または複数の第2の動作の再開された実行の間に用いるための前記格納された少なくとも一部の中間結果を取り出す手段を含むことを特徴とする請求項1に記載の方法。
- 前記第1の実行ジョブの実行を終了することを前記第1の時刻に決定するステップと、前記1または複数の第1の操作の完了から生成された中間結果の永続的な格納を開始するステップとをさらに含み、前記少なくとも一部の中間結果は、前記1または複数の第1の操作の完了から生成された中間結果を含むことを特徴とする請求項1に記載の方法。
- 前記第1の実行ジョブの実行を終了して、前記第1の時刻より前に前記第1の実行ジョブを実行する1または複数のコンピューティングノードから、前記再開された実行が発生する1または複数の他のコンピューティングノードへの前記第1の実行ジョブ実効の移動を可能にするステップをさらに含むことを特徴とする請求項1に記載の方法。
- 前記プログラムの実行を一時停止する要求に少なくとも部分的に基づいて前記第1の実行ジョブの実行を終了することを決定するステップと、前記要求に応答して、実行が完了していない前記複数の実行ジョブの全ての実行を終了するステップとをさらに含むことを特徴とする請求項1に記載の方法。
- 前記再開された実行が発生する1または複数の第1のコンピューティングノードは、前記第1の時刻より前に前記第1の実行ジョブの実行が発生した1または複数の第2のコンピューティングノードとは別個であることを特徴とする請求項6に記載の方法。
- 前記継続した分散型実行が発生するコンピューティングノードの数は、前記複数のコンピューティングノードの数とは別個であることを特徴とする請求項6に記載の方法。
- 前記複数のコンピューティングノードは、分散型実行サービスにより提供され、前記プログラムの分散型実行は、前記分散型実行サービスの第1のユーザのために実行され、前記要求は、前記第1のユーザとは別個の第2のユーザから受信されることを特徴とする請求項6に記載の方法。
- 前記第1の実行ジョブを前記第1の時刻より前に実行する1または複数のコンピューティングノード上の管理動作を実行することの決定に少なくとも部分的に基づいて前記第1の実行ジョブの実行を終了するよう決定するステップをさらに含むことを特徴とする請求項1に記載の方法。
- 前記第1の実行ジョブを前記第1の時刻より前に実行している1または複数のコンピューティングノード上の1または複数の他のプログラムを実行することの決定に少なくとも部分的に基づいて、前記第1の実行ジョブの実行を終了するステップをさらに含み、前記終了することの決定は、前記プログラムより優先順位が高い前記1または複数の他のプログラムに基づくことを特徴とする請求項1に記載の方法。
- 前記複数のコンピューティングノード上のプログラムの分散型実行は、マスタノード上で実行するソフトウェアにより管理され、前記中間結果のトラッキングは、前記分散型実行の状態について前記マスタノードに情報を保持することを含み、前記第1の実行ジョブの実行の終了は、前記マスタノードの失敗に少なくとも部分的に基づき、前記第1の実行ジョブの再開された実行の開始は、第2のマスタノードの実行を開始し、前記第2のマスタノード上で、前記マスタノードの前記保持された情報を復元することを含むことを特徴とする請求項1に記載の方法。
- 前記プログラムは、複数の入力データサブセットの各々で1または複数のマップ関数を実行し、前記1または複数のマップ関数の結果に関する1または複数のリデュース関数を実行するように設計され、前記方法は、各々が前記マップ関数および前記リデュース関数を含むグループからの少なくとも1つの関数を実装する前記複数の実行ジョブを生成するステップをさらに含むことを特徴とする請求項1に記載の方法。
- 1または複数のプロセッサと、
複数のコンピュータノード上のプログラムの分散型実行を開始する手段であって、前記プログラムは前記複数のコンピューティングノード上で実行する複数の実行ジョブを有し、前記複数の実行ジョブの各々は、実行される1または複数の操作を有する、開始する手段と、
前記複数の実行ジョブの1つまたは複数について完了した操作から生成された中間結果をトラッキングする手段であって、前記複数の実行ジョブは、実行が第1の時刻に終了する第1の実行ジョブを含み、前記第1の実行ジョブは、前記第1の時刻に完了する1または複数の第1の操作を有し、かつ前記第1の時刻に完了しない1または複数の他の第2の操作を有する、トラッキングする手段と、
前記第1の時刻の後で、前記1または複数の第1の操作のいずれをもさらに実行せずに、前記第1の実行ジョブの前記1または複数の第2の操作の再開された実行を開始することにより、前記プログラムの分散型実行を継続する手段であって、前記再開された実行の開始は、前記中間結果の少なくとも一部を用いることを含む、継続する手段と、
前記プログラムの分散型実行が完了した後で、前記分散型実行の最終結果の表示を提供するステップと
を含むことを特徴とするコンピューティングシステム。 - 前記複数のコンピューティングノードは分散型プログラム実行サービスにより提供され、かつ前記分散型プログラム実行サービスのユーザに対してプログラムの分散型実行を実行するように構成され、前記プログラムの分散型実行は、前記分散型プログラム実行サービスの第1のユーザのために開始され、かつ前記第1のユーザにより指定されたプログラムに対する入力データを用いることを特徴とする請求項14に記載のコンピューティングシステム。
- 前記中間結果のトラッキングは、前記少なくとも一部の中間結果を永続的に格納することを含み、前記第1の実行ジョブの実行は、前記実行が終了する前に前記第1の実行ジョブについて用いられる前記複数のコンピューティングノードの1または複数の、前記第1の時刻における失敗に基づいて終了し、前記プログラムの分散型実行の継続は、前記1または複数の第2の動作の再開された実行の間に用いるための前記格納された少なくとも一部の中間結果を取り出すことを含むことを特徴とする請求項14に記載のコンピューティングシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/334,004 | 2008-12-12 | ||
US12/334,004 US8370493B2 (en) | 2008-12-12 | 2008-12-12 | Saving program execution state |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011540808A Division JP5357266B2 (ja) | 2008-12-12 | 2009-12-07 | プログラム実行状態の保存 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013257903A true JP2013257903A (ja) | 2013-12-26 |
JP5843823B2 JP5843823B2 (ja) | 2016-01-13 |
Family
ID=42242144
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011540808A Active JP5357266B2 (ja) | 2008-12-12 | 2009-12-07 | プログラム実行状態の保存 |
JP2013178559A Active JP5843823B2 (ja) | 2008-12-12 | 2013-08-29 | プログラム実行状態の保存 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011540808A Active JP5357266B2 (ja) | 2008-12-12 | 2009-12-07 | プログラム実行状態の保存 |
Country Status (5)
Country | Link |
---|---|
US (4) | US8370493B2 (ja) |
EP (1) | EP2359256A4 (ja) |
JP (2) | JP5357266B2 (ja) |
CN (1) | CN102246152B (ja) |
WO (1) | WO2010068592A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018049395A (ja) * | 2016-09-20 | 2018-03-29 | 株式会社東芝 | ジョブ実行制御装置およびプログラム |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2008355092A1 (en) | 2008-04-21 | 2009-10-29 | Adaptive Computing Enterprises, Inc. | System and method for managing energy consumption in a compute environment |
US9405348B2 (en) * | 2008-04-21 | 2016-08-02 | Adaptive Computing Enterprises, Inc | System and method for managing energy consumption in a compute environment |
US20140298349A1 (en) * | 2008-04-21 | 2014-10-02 | Adaptive Computing Enterprises, Inc. | System and Method for Managing Energy Consumption in a Compute Environment |
US8296419B1 (en) | 2009-03-31 | 2012-10-23 | Amazon Technologies, Inc. | Dynamically modifying a cluster of computing nodes used for distributed execution of a program |
WO2011013120A1 (en) * | 2009-07-30 | 2011-02-03 | Rascalim Software Security Ltd. | System and method for limiting execution of software to authorized users |
US8769543B2 (en) * | 2010-09-27 | 2014-07-01 | Throughputer, Inc. | System and method for maximizing data processing throughput via application load adaptive scheduling and context switching |
US20110320233A1 (en) | 2010-05-30 | 2011-12-29 | Sonian, Inc. | Method and system for arbitraging computing resources in a cloud computing environment |
US8260840B1 (en) * | 2010-06-28 | 2012-09-04 | Amazon Technologies, Inc. | Dynamic scaling of a cluster of computing nodes used for distributed execution of a program |
US8719415B1 (en) | 2010-06-28 | 2014-05-06 | Amazon Technologies, Inc. | Use of temporarily available computing nodes for dynamic scaling of a cluster |
US8782434B1 (en) | 2010-07-15 | 2014-07-15 | The Research Foundation For The State University Of New York | System and method for validating program execution at run-time |
US8443367B1 (en) * | 2010-07-16 | 2013-05-14 | Vmware, Inc. | Federated management in a distributed environment |
US8812677B2 (en) * | 2010-12-21 | 2014-08-19 | Hitachi, Ltd. | Data processing method and apparatus for remote storage system |
US9223611B2 (en) | 2010-12-28 | 2015-12-29 | Microsoft Technology Licensing, Llc | Storing and resuming application runtime state |
US20130117168A1 (en) | 2011-11-04 | 2013-05-09 | Mark Henrik Sandstrom | Maximizing Throughput of Multi-user Parallel Data Processing Systems |
US8789065B2 (en) | 2012-06-08 | 2014-07-22 | Throughputer, Inc. | System and method for input data load adaptive parallel processing |
US8843932B2 (en) * | 2011-01-12 | 2014-09-23 | Wisconsin Alumni Research Foundation | System and method for controlling excessive parallelism in multiprocessor systems |
US9244737B2 (en) * | 2011-02-04 | 2016-01-26 | Hitachi, Ltd. | Data transfer control method of parallel distributed processing system, parallel distributed processing system, and recording medium |
US9778915B2 (en) | 2011-02-28 | 2017-10-03 | Microsoft Technology Licensing, Llc | Distributed application definition |
US9990184B2 (en) | 2011-03-25 | 2018-06-05 | Microsoft Technology Licensing, Llc | Distributed component model |
WO2012134453A2 (en) * | 2011-03-29 | 2012-10-04 | Empire Technology Development Llc | "go home" feature for roaming applications |
US9465589B2 (en) | 2011-04-05 | 2016-10-11 | Microsoft Technology Licensing, Llc | Stateful component authoring and execution |
US20120284360A1 (en) * | 2011-04-11 | 2012-11-08 | Ebay Inc. | Job planner and execution engine for automated, self-service data movement |
US8612580B2 (en) * | 2011-05-31 | 2013-12-17 | Microsoft Corporation | Distributed computing framework |
US8726081B2 (en) * | 2011-06-14 | 2014-05-13 | International Business Machines Corporation | Event based model for managing application health and failure recovery for asynchronous processing systems |
US9148846B2 (en) * | 2011-06-30 | 2015-09-29 | Motorola Solutions, Inc. | Methods for intelligent network selection |
US9448847B2 (en) | 2011-07-15 | 2016-09-20 | Throughputer, Inc. | Concurrent program execution optimization |
RU2494453C2 (ru) * | 2011-11-24 | 2013-09-27 | Закрытое акционерное общество "Лаборатория Касперского" | Способ распределенного выполнения задач компьютерной безопасности |
CN102609451B (zh) * | 2012-01-11 | 2014-12-17 | 华中科技大学 | 面向流式数据处理的sql查询计划生成方法 |
US8954972B2 (en) * | 2012-06-26 | 2015-02-10 | Wal-Mart Stores, Inc. | Systems and methods for event stream processing |
US9122873B2 (en) | 2012-09-14 | 2015-09-01 | The Research Foundation For The State University Of New York | Continuous run-time validation of program execution: a practical approach |
US9069782B2 (en) | 2012-10-01 | 2015-06-30 | The Research Foundation For The State University Of New York | System and method for security and privacy aware virtual machine checkpointing |
US9373074B2 (en) * | 2012-10-09 | 2016-06-21 | Qualcomm Incorporated | Method and apparatus for time management and scheduling for sychronous processing on a cluster of processing nodes |
US9002982B2 (en) | 2013-03-11 | 2015-04-07 | Amazon Technologies, Inc. | Automated desktop placement |
US10142406B2 (en) | 2013-03-11 | 2018-11-27 | Amazon Technologies, Inc. | Automated data center selection |
US9148350B1 (en) * | 2013-03-11 | 2015-09-29 | Amazon Technologies, Inc. | Automated data synchronization |
US10313345B2 (en) * | 2013-03-11 | 2019-06-04 | Amazon Technologies, Inc. | Application marketplace for virtual desktops |
US9477523B1 (en) * | 2013-06-25 | 2016-10-25 | Amazon Technologies, Inc. | Scheduling data access jobs based on job priority and predicted execution time using historical execution data |
US10623243B2 (en) | 2013-06-26 | 2020-04-14 | Amazon Technologies, Inc. | Management of computing sessions |
US10686646B1 (en) | 2013-06-26 | 2020-06-16 | Amazon Technologies, Inc. | Management of computing sessions |
CN103414577B (zh) * | 2013-08-19 | 2017-04-26 | 北京高森明晨信息科技有限公司 | 用于Hadoop平台的计费系统及方法 |
US11132173B1 (en) * | 2014-02-20 | 2021-09-28 | Amazon Technologies, Inc. | Network scheduling of stimulus-based actions |
JP2015158773A (ja) * | 2014-02-24 | 2015-09-03 | 富士通株式会社 | 仮想装置の動作検証装置,仮想装置の動作検証システム及びプログラム |
KR20150106233A (ko) * | 2014-03-11 | 2015-09-21 | 삼성전자주식회사 | 복수의 전자 장치에서 기능을 수행하는 방법 및 전자 장치 |
CN103995745B (zh) * | 2014-05-22 | 2017-09-05 | 华为技术有限公司 | 一种ip硬盘任务执行方法以及ip硬盘 |
US9641580B2 (en) * | 2014-07-01 | 2017-05-02 | Microsoft Technology Licensing, Llc | Distributed stream processing in the cloud |
US9678773B1 (en) * | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US10489203B2 (en) * | 2015-04-03 | 2019-11-26 | Oracle International Corporation | System and method for using an in-memory data grid to improve performance of a process defined by a process execution language in a SOA middleware environment |
CN106202092B (zh) | 2015-05-04 | 2020-03-06 | 阿里巴巴集团控股有限公司 | 数据处理的方法及系统 |
US20160344671A1 (en) * | 2015-05-19 | 2016-11-24 | Amazon Technologies, Inc. | Executing commands on virtual machine instances in a distributed computing environment |
US10397232B2 (en) * | 2015-06-25 | 2019-08-27 | Amazon Technologies, Inc. | Controlling user access to command execution |
WO2018004367A1 (en) * | 2016-06-27 | 2018-01-04 | Emc Corporation | Techniques for accurately apprising a user of progress in booting a virtual appliance |
CN113535382A (zh) * | 2016-12-23 | 2021-10-22 | 创新先进技术有限公司 | 资源处理方法及装置 |
US10521312B1 (en) * | 2017-03-17 | 2019-12-31 | Amazon Technologies, Inc. | Downtime management during database instance patching |
US10498817B1 (en) * | 2017-03-21 | 2019-12-03 | Amazon Technologies, Inc. | Performance tuning in distributed computing systems |
JP6874706B2 (ja) * | 2018-02-07 | 2021-05-19 | オムロン株式会社 | アプリケーションプログラムを生成する方法、装置、プログラム |
US11099917B2 (en) * | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
TWI674780B (zh) * | 2018-11-23 | 2019-10-11 | 財團法人工業技術研究院 | 網路服務系統及網路服務方法 |
US11099891B2 (en) | 2019-04-22 | 2021-08-24 | International Business Machines Corporation | Scheduling requests based on resource information |
US11347564B2 (en) * | 2019-04-24 | 2022-05-31 | Red Hat, Inc. | Synchronizing batch job status across nodes on a clustered system |
US20220382655A1 (en) * | 2021-05-28 | 2022-12-01 | Paypal, Inc. | Dynamic node insertion of secondary services for high-availability during main decision failure at runtime |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008293358A (ja) * | 2007-05-25 | 2008-12-04 | Fujitsu Ltd | 分散処理プログラム、分散処理方法、分散処理装置、および分散処理システム |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0616279B2 (ja) * | 1986-09-30 | 1994-03-02 | 工業技術院長 | 仮想情報処理システム |
JPH08123768A (ja) * | 1994-10-21 | 1996-05-17 | Mitsubishi Electric Corp | 分散システム管理方式及び分散システム管理方法 |
US6832380B1 (en) * | 1996-06-28 | 2004-12-14 | Tarantella, Inc. | Client-server application partitioning with metering technique for distributed computing |
US6128642A (en) * | 1997-07-22 | 2000-10-03 | At&T Corporation | Load balancing based on queue length, in a network of processor stations |
US6802053B1 (en) * | 1997-08-18 | 2004-10-05 | National Instruments Corporation | Graphical programming system with distributed block diagram execution and front panel display |
US6490693B1 (en) * | 1999-08-31 | 2002-12-03 | International Business Machines Corporation | Dynamic reconfiguration of a quorum group of processors in a distributed computing system |
JP2001306341A (ja) * | 2000-04-26 | 2001-11-02 | Mitsubishi Electric Corp | コンピュータシステムおよびコンピュータ読み取り可能な記録媒体 |
US6799208B1 (en) * | 2000-05-02 | 2004-09-28 | Microsoft Corporation | Resource manager architecture |
US6934755B1 (en) * | 2000-06-02 | 2005-08-23 | Sun Microsystems, Inc. | System and method for migrating processes on a network |
CN1368809A (zh) * | 2001-02-02 | 2002-09-11 | 中国航天科技集团公司第七○七研究所 | 一种网络工作流管理方法 |
US20030149735A1 (en) * | 2001-06-22 | 2003-08-07 | Sun Microsystems, Inc. | Network and method for coordinating high availability system services |
US7305492B2 (en) | 2001-07-06 | 2007-12-04 | Juniper Networks, Inc. | Content service aggregation system |
US7627860B2 (en) * | 2001-08-14 | 2009-12-01 | National Instruments Corporation | Graphically deployment of a program with automatic conversion of program type |
US7043393B2 (en) | 2001-08-15 | 2006-05-09 | National Instruments Corporation | System and method for online specification of measurement hardware |
GB0213073D0 (en) * | 2002-06-07 | 2002-07-17 | Hewlett Packard Co | Method of maintaining availability of requested network resources |
US7559060B2 (en) * | 2003-06-10 | 2009-07-07 | National Instruments Corporation | Time-bounded program execution |
JP2008502953A (ja) * | 2003-11-17 | 2008-01-31 | ヴァージニア テック インテレクチュアル プロパティーズ,インコーポレイテッド | 分散システムにおけるトランスペアレントなチェックポインティング及びプロセス移行 |
US7415704B2 (en) * | 2004-05-20 | 2008-08-19 | Sap Ag | Sharing objects in runtime systems |
US7953843B2 (en) * | 2004-06-14 | 2011-05-31 | Hewlett-Packard Development Company, L.P. | System and method for evaluating a heterogeneous cluster for supporting expected workload in compliance with at least one service parameter |
US7756919B1 (en) * | 2004-06-18 | 2010-07-13 | Google Inc. | Large-scale data processing in a distributed and parallel processing enviornment |
US7155558B1 (en) * | 2004-07-21 | 2006-12-26 | Vmware, Inc. | Providing access to a raw data storage unit in a computer system |
EP1913482A4 (en) * | 2005-07-14 | 2010-08-25 | Emc Corp | MIANTIEN OF A FIDELITY TO WRITING ORDER IN A MULTI-PRINTER SYSTEM |
US7681075B2 (en) * | 2006-05-02 | 2010-03-16 | Open Invention Network Llc | Method and system for providing high availability to distributed computer applications |
US7873422B2 (en) * | 2005-09-02 | 2011-01-18 | Sap Ag | Event-based coordination of process-oriented composite applications |
US8122427B2 (en) | 2006-01-04 | 2012-02-21 | Microsoft Corporation | Decentralized system services |
US8555288B2 (en) * | 2006-05-17 | 2013-10-08 | Teradata Us, Inc. | Managing database utilities to improve throughput and concurrency |
US20070277154A1 (en) * | 2006-05-23 | 2007-11-29 | Microsoft Corporation | Testing distributed components |
US8365182B2 (en) * | 2006-10-02 | 2013-01-29 | International Business Machines Corporation | Method and system for provisioning of resources |
US8086710B2 (en) * | 2006-10-30 | 2011-12-27 | Quest Software, Inc. | Identity migration apparatus and method |
JP4308241B2 (ja) * | 2006-11-10 | 2009-08-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム |
JP2008123357A (ja) * | 2006-11-14 | 2008-05-29 | Honda Motor Co Ltd | 並列計算機システム、並列計算方法および並列計算機用プログラム |
US7523123B2 (en) | 2006-11-16 | 2009-04-21 | Yahoo! Inc. | Map-reduce with merge to process multiple relational datasets |
CN100435106C (zh) * | 2006-11-21 | 2008-11-19 | 西安交通大学 | 应用服务器的分级再生方法 |
US7694188B2 (en) * | 2007-02-05 | 2010-04-06 | Microsoft Corporation | Disk failure prevention and error correction |
US7823023B2 (en) * | 2007-02-26 | 2010-10-26 | Red Hat, Inc. | Test framework for testing an application |
US20080250227A1 (en) | 2007-04-04 | 2008-10-09 | Linderman Michael D | General Purpose Multiprocessor Programming Apparatus And Method |
US7769864B2 (en) * | 2007-08-02 | 2010-08-03 | Sap Ag | Adaptation of clusters to virtualization technologies |
US8041773B2 (en) * | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US8086726B2 (en) * | 2007-12-21 | 2011-12-27 | Sap Ag | XI monitoring in high load scenarios (monitoring cockpit) |
US7994790B2 (en) * | 2008-03-19 | 2011-08-09 | Baker Hughes Incorporated | Electromagnetic and magnetostatic shield to perform measurements ahead of the drill bit |
US20090254621A1 (en) * | 2008-04-08 | 2009-10-08 | Venali, Inc. | Peer-to-peer messaging of facsimile messages |
US8392312B2 (en) * | 2008-09-24 | 2013-03-05 | Netapp, Inc. | Adaptive scheduling of storage operations based on utilization of a multiple client and server resources in a distributed network storage system |
US8627123B2 (en) * | 2010-03-25 | 2014-01-07 | Microsoft Corporation | Managing power provisioning in distributed computing |
-
2008
- 2008-12-12 US US12/334,004 patent/US8370493B2/en active Active
-
2009
- 2009-12-07 EP EP09832425A patent/EP2359256A4/en not_active Ceased
- 2009-12-07 JP JP2011540808A patent/JP5357266B2/ja active Active
- 2009-12-07 CN CN200980149598.8A patent/CN102246152B/zh active Active
- 2009-12-07 WO PCT/US2009/067003 patent/WO2010068592A1/en active Application Filing
-
2013
- 2013-01-09 US US13/737,815 patent/US8935404B2/en active Active
- 2013-08-29 JP JP2013178559A patent/JP5843823B2/ja active Active
-
2014
- 2014-12-15 US US14/571,093 patent/US20150169412A1/en not_active Abandoned
-
2018
- 2018-01-10 US US15/867,516 patent/US11263084B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008293358A (ja) * | 2007-05-25 | 2008-12-04 | Fujitsu Ltd | 分散処理プログラム、分散処理方法、分散処理装置、および分散処理システム |
Non-Patent Citations (2)
Title |
---|
CSNG200600930019; 中島佳宏ほか: '大規模P2Pグリッドでの大容量コンピューティングのためのスケーラブルなプログラミング環境の検討' 情報処理学会研究報告 Vol.2006 No.87, 20060801, 115-120頁, 社団法人情報処理学会 * |
JPN6013005622; 中島佳宏ほか: '大規模P2Pグリッドでの大容量コンピューティングのためのスケーラブルなプログラミング環境の検討' 情報処理学会研究報告 Vol.2006 No.87, 20060801, 115-120頁, 社団法人情報処理学会 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018049395A (ja) * | 2016-09-20 | 2018-03-29 | 株式会社東芝 | ジョブ実行制御装置およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
CN102246152A (zh) | 2011-11-16 |
US20150169412A1 (en) | 2015-06-18 |
JP2012511784A (ja) | 2012-05-24 |
EP2359256A4 (en) | 2012-11-07 |
JP5357266B2 (ja) | 2013-12-04 |
US20180129570A1 (en) | 2018-05-10 |
EP2359256A1 (en) | 2011-08-24 |
US11263084B2 (en) | 2022-03-01 |
US20100153955A1 (en) | 2010-06-17 |
US20130191847A1 (en) | 2013-07-25 |
US8935404B2 (en) | 2015-01-13 |
JP5843823B2 (ja) | 2016-01-13 |
WO2010068592A1 (en) | 2010-06-17 |
CN102246152B (zh) | 2015-05-27 |
US8370493B2 (en) | 2013-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5843823B2 (ja) | プログラム実行状態の保存 | |
US11425194B1 (en) | Dynamically modifying a cluster of computing nodes used for distributed execution of a program | |
US9276987B1 (en) | Identifying nodes already storing indicated input data to perform distributed execution of an indicated program in a node cluster | |
US8321558B1 (en) | Dynamically monitoring and modifying distributed execution of programs | |
US9826031B2 (en) | Managing distributed execution of programs | |
US9280390B2 (en) | Dynamic scaling of a cluster of computing nodes | |
US8260840B1 (en) | Dynamic scaling of a cluster of computing nodes used for distributed execution of a program | |
US20200387431A1 (en) | Providing executing programs with access to stored block data of others | |
US10824343B2 (en) | Managing access of multiple executing programs to non-local block data storage | |
US8015343B2 (en) | Providing executing programs with reliable access to non-local block data storage | |
US7831682B2 (en) | Providing a reliable backing store for block data storage | |
US10616034B1 (en) | Time-based computing instances |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150113 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150413 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150513 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150615 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150713 |
|
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: 20151020 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151117 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5843823 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |