JP2012511784A - プログラム実行状態の保存 - Google Patents
プログラム実行状態の保存 Download PDFInfo
- Publication number
- JP2012511784A JP2012511784A JP2011540808A JP2011540808A JP2012511784A JP 2012511784 A JP2012511784 A JP 2012511784A JP 2011540808 A JP2011540808 A JP 2011540808A JP 2011540808 A JP2011540808 A JP 2011540808A JP 2012511784 A JP2012511784 A JP 2012511784A
- Authority
- JP
- Japan
- Prior art keywords
- execution
- jobs
- job
- program
- 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
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
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 (15)
- プログラムの分散型実行を管理する為のコンピュータ実装方法であって、:
ユーザのためのプログラムの分散型実行を管理する分散型プログラム実行サービスを提供する1つ以上のコンピューティングシステムの制御の下で、分散型プログラム実行サービスがユーザのためのプログラムを実行するために形成可能な複数のコンピューティングノードを提供すること、
複数のコンピューティングノードの多数での、指示されたプログラムの多数の実行ジョブの開始の後、指示されたプログラムの実行は第1ユーザのために実施されていて、多数の実行ジョブが、指示された入力データの少なくとも幾つかを使用して実施されるべき1つ以上の動作をそれぞれ有する様に指示された入力データを使用し、多数のコンピューティングノードでの多数の実行ジョブの実行状態についての情報を自動的に追尾し、追尾は、実施が完全である多数の実行ジョブの動作のサブセットから生成される中間結果及び多数のコンピューティングノードに格納される中間結果を識別することを含むこと、
少なくとも1つの多数の実行ジョブの実行を終了すると最初に決定した後、少なくとも1つの実行ジョブは、実施が完全である動作のサブセット中に在る少なくとも1つの動作を有し、サブセット中には無くて実施が完全でない少なくとも1つの他の動作を有し、追尾された情報を用いた少なくとも1つの動作を自動的に識別して、少なくとも1つの動作から生成される識別された中間結果の永続的な格納を開始すること、
第1時間の後の第2時間に、実施が完全であるサブセット中には無い少なくとも1つの他の動作の実施を完了するために、またサブセット中の少なくとも1つの動作の完了した実施を繰り返さないために少なくとも1つのコンピューティングノードでの少なくとも1つの実行ジョブの再開された実行を開始し、再開された実行は、永続的に格納された中間結果の少なくとも一部に基いた様式で実施されていること、及び、
指示されたプログラムの多数の実行ジョブの実行が完了された後、最初のユーザに対する実行からの最終結果を提供すること、
を含むコンピュータ実装方法。 - 少なくとも1つの実行ジョブの第1時間での実行の終了を決定することは、少なくとも1つの実行ジョブの実行を、第1時間での少なくとも1つの実行ジョブの実行が行われている1つ以上のコンピューティングノードから1つ以上の他のコンピューティングノードへ移動することの決定に少なくとも部分的に基づいており、1つ以上の他のコンピューティングノードは、少なくとも1つの実行ジョブの再開された実行が第2時間に発生する少なくとも1つのコンピューティングノードであり、第2時間は、実質的に第1時間の直後に発生することを特徴とする請求項1に記載の方法。
- 少なくとも1つの実行ジョブの第1時間での実行の終了を決定することは指示されたプログラムの実行を一時的に保留する要求に少なくとも部分的に基づき、少なくとも1つの実行ジョブは、第1時間に実行している多数の実行ジョブの全てを含むことを特徴とする請求項1に記載の方法。
- 多数の実行ジョブの1つが実行している多数のコンピューティングノードの1つが1つの実行ジョブの実行中に失敗したと決定し、相違したコンピューティングノードの1つの実行ジョブの後の時間での実行を自動的に再開し、再開された実行は、1つのコンピューティングノードが失敗する前に実施が前以て完了された1つの実行ジョブの少なくとも1つの動作の実施を繰り返すことを更に含むことを特徴とする請求項1に記載の方法。
- 多数のコンピューティングノードの多数の実行ジョブの実行は、マスターノードで実行しているソフトウェアによって管理され、多数の実行ジョブの実行状態の自動追尾は、多数の実行ジョブの実行状態についてのマスターノードでの情報を維持することを含み、少なくとも1つの実行ジョブの第1時間での実行の終了を決定することは、マスターノードでの失敗に少なくとも部分的に基づくことを特徴とする請求項1に記載の方法。
- 実行が終了している少なくとも1つの実行ジョブは、第1時間に実行している多数の実行ジョブの全てを含み、少なくとも1つの実行ジョブの再開された実行の開始は、新規な第2マスターノードの実行を開始すること、および多数の実行ジョブの実行状態についてのマスターノードからの維持された情報の第2マスターノードへ再格納することを含み、少なくとも1つのコンピューティングノードの少なくとも1つの実行ジョブの再開された実行は、第2マスターノードによって管理されることを特徴とする請求項5に記載の方法。
- 識別された中間結果の永続的な格納の開始は、識別された中間結果を多数のコンピューティングノードから離隔した場所へ格納することを含むことを特徴とする請求項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グループを使用し、完了した時に出力データの第2グループを生成し、1ユーザのための少なくとも1つの実行ジョブの部分的実行は、入力データの第1グループの少なくとも幾つかを使用し、出力データの第2グループのサブセットを生成し、1ユーザのための少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納は、後の使用のための出力データの第2グループの生成されたサブセットを格納することを含むことを特徴とする請求項12に記載のコンピューティングシステム。
- 多数の関連した実行ジョブの分散型実行を実施する1ユーザからの指示は分散型実行サービスによって自動的に分割されて多数の関連した実行ジョブとなる実施されるべきプログラムの指示を含み、入力データの第1グループを含むプログラムのために使用されるべき入力データの指示を含み、1ユーザの少なくとも1つの実行ジョブは、入力データの第1グループの一部分にそれぞれ動作する多数の動作を含み、完了時に出力データの第2グループの部分を生成し、1ユーザの少なくとも1つの実行ジョブの部分的な実行は、完了している多数の動作のサブセットを含み、出力データの第2グループの生成されたサブセットは、完了した多数の動作のサブセットによって生成した出力データの第2グループの一部を含み、1ユーザのための少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納は、出力データの第2のグループのサブセットを生成するために完了する多数の動作のサブセットによって、使用されなかった入力データの第1グループの1つ以上の部分を格納することを更に含むことを特徴とする請求項12に記載のコンピューティングシステム。
- システムマネージャコンポーネントは以下:
ユーザから指示を受信し、多数の関連した実行ジョブの分散型実行を実施すること、
多数のコンピューティングノードで多数の実行ジョブの実行を開始すること、
多数の実行ジョブのうち少なくとも1つの部分的実行が実施された後であって、しかし多数の実行ジョブの少なくとも1つの実行が完了する前に、少なくとも1つの実行ジョブの実行を終了すると決定し、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を自動的に開始すること、
後の時間で、少なくとも1つの実行ジョブの部分的な実行の中間状態の永続的な格納を検索し、検索された永続的に格納された中間状態の少なくとも一部に基づいて少なくとも1つの実行ジョブの実行を再開すること、及び、
多数の実行ジョブの実行が完了された後、実行からの最終結果をユーザへ提供すること、
による分散型実行サービスのユーザのための分散型実行を管理する手段から成ることを特徴とする請求項12に記載のコンピューティングシステム。
Applications Claiming Priority (3)
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 |
PCT/US2009/067003 WO2010068592A1 (en) | 2008-12-12 | 2009-12-07 | Saving program execution state |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013178559A Division JP5843823B2 (ja) | 2008-12-12 | 2013-08-29 | プログラム実行状態の保存 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012511784A true JP2012511784A (ja) | 2012-05-24 |
JP5357266B2 JP5357266B2 (ja) | 2013-12-04 |
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 After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013178559A Active JP5843823B2 (ja) | 2008-12-12 | 2013-08-29 | プログラム実行状態の保存 |
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 (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018515844A (ja) * | 2015-05-04 | 2018-06-14 | アリババ グループ ホウルディング リミテッド | データ処理方法及びシステム |
JP2018521399A (ja) * | 2015-06-25 | 2018-08-02 | アマゾン テクノロジーズ インコーポレイテッド | コマンド実行に対するユーザアクセスの制御 |
JP2018523192A (ja) * | 2015-05-19 | 2018-08-16 | アマゾン テクノロジーズ インコーポレイテッド | 分散型コンピューティング環境における仮想マシンインスタンス上のコマンドの実行 |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
CA2719005A1 (en) | 2008-04-21 | 2009-10-29 | 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 |
WO2011153155A2 (en) | 2010-05-30 | 2011-12-08 | 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 |
WO2012105056A1 (ja) * | 2011-02-04 | 2012-08-09 | 株式会社日立製作所 | 並列分散処理システムのデータ転送制御方法、並列分散処理システム及び記憶媒体 |
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 |
CN103403696B (zh) * | 2011-03-29 | 2015-11-25 | 英派尔科技开发有限公司 | 针对漫游应用的“回家”特征 |
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查询计划生成方法 |
US9098328B2 (en) * | 2012-06-26 | 2015-08-04 | Wal-Mart Stores, Inc. | Systems and methods for event stream processing |
US9063721B2 (en) | 2012-09-14 | 2015-06-23 | 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 |
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 |
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 |
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 |
WO2018004367A1 (en) * | 2016-06-27 | 2018-01-04 | Emc Corporation | Techniques for accurately apprising a user of progress in booting a virtual appliance |
JP6542172B2 (ja) * | 2016-09-20 | 2019-07-10 | 株式会社東芝 | ジョブ実行制御装置およびプログラム |
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 |
US11994964B2 (en) * | 2021-05-28 | 2024-05-28 | Paypal, Inc. | Dynamic node insertion of secondary services for high-availability during main decision failure at runtime |
US11968280B1 (en) | 2021-11-24 | 2024-04-23 | Amazon Technologies, Inc. | Controlling ingestion of streaming data to serverless function executions |
US12015603B2 (en) | 2021-12-10 | 2024-06-18 | Amazon Technologies, Inc. | Multi-tenant mode for serverless code execution |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6385846A (ja) * | 1986-09-30 | 1988-04-16 | Agency Of Ind Science & Technol | 仮想情報処理システム |
JPH08123768A (ja) * | 1994-10-21 | 1996-05-17 | Mitsubishi Electric Corp | 分散システム管理方式及び分散システム管理方法 |
JP2008502953A (ja) * | 2003-11-17 | 2008-01-31 | ヴァージニア テック インテレクチュアル プロパティーズ,インコーポレイテッド | 分散システムにおけるトランスペアレントなチェックポインティング及びプロセス移行 |
JP2008123357A (ja) * | 2006-11-14 | 2008-05-29 | Honda Motor Co Ltd | 並列計算機システム、並列計算方法および並列計算機用プログラム |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US7367028B2 (en) | 2001-08-14 | 2008-04-29 | National Instruments Corporation | Graphically deploying programs on devices in a system |
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 |
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 |
WO2007074408A2 (en) * | 2005-07-14 | 2007-07-05 | Yotta Yotta, Inc. | Maintaining write order fidelity on a multi-writer 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 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム |
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 |
JP5251002B2 (ja) * | 2007-05-25 | 2013-07-31 | 富士通株式会社 | 分散処理プログラム、分散処理方法、分散処理装置、および分散処理システム |
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 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
- 2009-12-07 EP EP09832425A patent/EP2359256A4/en not_active Ceased
-
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 (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6385846A (ja) * | 1986-09-30 | 1988-04-16 | Agency Of Ind Science & Technol | 仮想情報処理システム |
JPH08123768A (ja) * | 1994-10-21 | 1996-05-17 | Mitsubishi Electric Corp | 分散システム管理方式及び分散システム管理方法 |
JP2008502953A (ja) * | 2003-11-17 | 2008-01-31 | ヴァージニア テック インテレクチュアル プロパティーズ,インコーポレイテッド | 分散システムにおけるトランスペアレントなチェックポインティング及びプロセス移行 |
JP2008123357A (ja) * | 2006-11-14 | 2008-05-29 | Honda Motor Co 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 (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018515844A (ja) * | 2015-05-04 | 2018-06-14 | アリババ グループ ホウルディング リミテッド | データ処理方法及びシステム |
US10872070B2 (en) | 2015-05-04 | 2020-12-22 | Advanced New Technologies Co., Ltd. | Distributed data processing |
JP2018523192A (ja) * | 2015-05-19 | 2018-08-16 | アマゾン テクノロジーズ インコーポレイテッド | 分散型コンピューティング環境における仮想マシンインスタンス上のコマンドの実行 |
JP2018521399A (ja) * | 2015-06-25 | 2018-08-02 | アマゾン テクノロジーズ インコーポレイテッド | コマンド実行に対するユーザアクセスの制御 |
US10397232B2 (en) | 2015-06-25 | 2019-08-27 | Amazon Technologies, Inc. | Controlling user access to command execution |
Also Published As
Publication number | Publication date |
---|---|
JP5843823B2 (ja) | 2016-01-13 |
US11263084B2 (en) | 2022-03-01 |
US20100153955A1 (en) | 2010-06-17 |
US8370493B2 (en) | 2013-02-05 |
CN102246152A (zh) | 2011-11-16 |
US8935404B2 (en) | 2015-01-13 |
US20180129570A1 (en) | 2018-05-10 |
WO2010068592A1 (en) | 2010-06-17 |
EP2359256A1 (en) | 2011-08-24 |
EP2359256A4 (en) | 2012-11-07 |
US20130191847A1 (en) | 2013-07-25 |
US20150169412A1 (en) | 2015-06-18 |
CN102246152B (zh) | 2015-05-27 |
JP5357266B2 (ja) | 2013-12-04 |
JP2013257903A (ja) | 2013-12-26 |
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 | |
US11190415B2 (en) | Flexible capacity reservations for network-accessible resources |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130212 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130513 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130520 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130611 |
|
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: 20130730 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130829 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5357266 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |