【手続補正書】
【提出日】平成27年12月28日(2015.12.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
分散コンピューティング環境内のリソースを提供するコンピュータ実装方法であって、
ユーザからワークアイテムを受信するステップと、
前記ワークアイテムからジョブを作成するステップと、
プロセッサおよびメモリを用いて、少なくとも第１の仮想マシンを第１のプールに自動的に割り振るステップと、
前記第１のプールに関連付けられ、ジョブキューから前記ジョブのタスクをリースする第１のスケジューラで、前記第１のプール上で前記ジョブをスケジューリングするステップであって、前記タスクは再試行カウントと関連する、ステップと、
前記第１のスケジューラで、前記第１のプールの前記第１の仮想マシン上で前記ジョブを開始するためのタスクをリースするステップであって、前記第１の仮想マシンは前記ジョブキューからある期間前記タスク上の前記リースを維持する、ステップと、
前記第１の仮想マシン上で前記タスクを実行するステップであって、前記タスクは障害のときに、前記第１の仮想マシンをある回数まで再スケジューリングする、ステップと、
前記期間中の再試行カウントに対応する前記回数に応じて、少なくとも第２の仮想マシンからなる第２のプールに前記タスクを再割当てするステップであって、前記ジョブのタスクへのリースは第１のスケジューラから開放される、ステップと、
前記第２のプールに関連付けられ、前記ジョブキューからジョブのタスクをリースする第２のスケジューラで、前記第２のプール上で前記第２の仮想マシン上のタスクをスケジューリングするステップと、
前記第２のプールの前記第２の仮想マシン上で前記タスクを開始するステップと
を含む方法。
【請求項２】
前記第１のプール上で前記ジョブを前記スケジューリングするステップが、前記第２のプール上で前記タスクをスケジューリングするのに利用されない第１のスケジューラを少なくとも部分的に利用して行われる請求項１に記載の方法。
【請求項３】
前記第１のプールにおける障害を検出するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記タスクの前記再割当てが、前記第１のプール内の検出された障害に応答するものである請求項３に記載の方法。
【請求項５】
前記タスクの前記再割当てが、前記第２のプール上の前記タスクの継続を可能にする請求項１に記載の方法。
【請求項６】
前記再試行カウントは前記タスクにより指定される請求項１に記載の方法。
【請求項７】
前記タスクを前記期間中に前記再試行カウントに対応する前記回数に基づいてエラーと共に完了とマークするステップをさらに含む請求項１に記載の方法。
【請求項８】
前記再割当てするステップは、前記第１のプールに関連付けられる１つまたは複数のタスク位置サービスと通信する高レベル位置サービスにより管理される、請求項１に記載の方法。
【請求項９】
前記タスクを前記再割当てするステップが、ユーザ介入なしに前記第１のプールから前記第２のプールへの前記ジョブの移行を可能にする請求項１に記載の方法。
【請求項１０】
前記第２の仮想マシンは、前記第１の仮想マシンとは異なる地理的位置にある請求項１に記載の方法。
【請求項１１】
前記第２の仮想マシンは前記第１の仮想マシンとは異なるタスクテナントにある請求項１に記載の方法。
【請求項１２】
前記期間の間前記再試行カウントに対応する前記回数は前記再試行カウントと同じ回数を含む請求項１に記載の方法。
【請求項１３】
前記第１のプールは２つ以上のタスクテナントからなる請求項１に記載の方法。
【請求項１４】
前記第２の仮想マシンは前記ワークアイテムに関連づけられた仕様に部分的に基づいて前記第２のプールに割り当てられる請求項１に記載の方法。
【請求項１５】
前記第１の仮想マシン及び前記第２の仮想マシンは異なる物理プロセッサを利用する請求項１に記載の方法。
【請求項１６】
プロセッサおよびメモリを有するコンピューティング装置によって実行されるとき、分散コンピューティング環境内のリソースを提供する方法を行うコンピュータ使用可能命令を格納する１つまたは複数のコンピュータ記憶媒体であって、前記方法が、
リソースの第１のプールに関連付けられる第１のスケジューラを用いて、前記分散コンピューティング環境内のリソースの第１のプール上でジョブをスケジューリングするステップであって、前記ジョブのタスクはジョブキューからリースされ、前記第１のプール上の第１の仮想マシンは、ある期間前記タスク上で前記リースを維持し、前記タスクは再試行カウントに関連付けられる、ステップと、
前記第１の仮想マシン上の前記タスクを前記第１のプールで実行するステップであって、前記タスクは障害のときに、前記第１の仮想マシンをある回数まで再スケジューリングする、ステップと、
前記期間の間、前記再試行カウントに対応する前記回数に応答して、前記タスクが前記分散コンピューティング環境内の前記第１のプールから第２のプールに移行すべきであると決定するステップと、
前記第１の仮想マシンから前記ジョブキューにおける前記タスク上のリースを開放するステップと、
前記ワークアイテムに関連付けられる前記タスクを前記第２のプールへ移行するステップと、
プロセッサおよびメモリを使用する前記第２のプールに関連する第２のスケジューラを用いて、前記第２のプール上で第２の仮想マシン上の前記タスクをスケジューリングして、前記第２のスケジューラが前記タスク上のリースを得るようにするステップと、
前記第２のプール上の前記第２の仮想マシン上で前記ジョブを開始するステップと
を含む、コンピュータ記憶媒体。
【請求項１７】
前記第１のプールおよび前記第２のプールが、前記第１のスケジューラに関連するタスク位置サービスと通信し、前記第２のスケジューラに関連するタスク位置サービスと通信する高レベル位置サービスによって選択される請求項１６に記載のコンピュータ記憶媒体。
【請求項１８】
前記再試行カウントは前記タスクにより指定される請求項１６に記載のコンピュータ記憶媒体。
【請求項１９】
前記移行後、前記ジョブに関連するタスクの部分は前記第１のプールで引き続きスケジューリングされる請求項１６に記載のコンピュータ記憶媒体。
【請求項２０】
分散コンピューティング環境内のリソースを提供するシステムであって、該システムは、
前記分散コンピューティング環境でタスクアカウントに関連するユーザからワークアイテムを受信するステップと、
前記分散コンピューティング環境の第１の仮想マシンを第１のプールに自動的に割り振るステップと、
前記第１のプールに関連する第１のスケジューラを用いて、前記第１のプール上の第１の仮想マシン上でジョブをスケジューリングするステップであって、前記ジョブが、前記ワークアイテムに関連する１つまたは複数のタスク及び再試行カウントにそれぞれ関連する前記１つまたは複数のタスクからなる、ステップと、
前記第１のスケジューラで、ジョブキューから前記１つまたは複数のタスクのうち１つのタスクをリースするステップであって、前記第１の仮想マシンは前記ジョブキューからある期間前記タスク上のリースを維持する、ステップと、
前記第１の仮想マシン上で前記タスクを実行するステップであって、前記タスクは障害のときに、前記第１の仮想マシンをある回数まで再スケジューリングする、ステップと、
前記期間の間、前記再試行カウントに対応する前記回数に応答して、前記タスクが前記分散コンピューティング環境内の前記第２のプールに移行すべきであると決定するステップと、
前記第１の仮想マシンから前記タスクのリースを開放するステップと、
前記ワークアイテムに関連する前記タスクを前記第２のプールへ移行するステップと、
前記第２のプールに関連する第２のスケジューラを用いて、前記第２のプール上で第２の仮想マシン上の前記タスクをスケジューリングするステップと、
前記第２のプール上で開始するための前記タスクを前記第２のスケジューラでリースするステップと
を含む方法を実行する１または複数のプロセッサを備えるシステム。