【手続補正書】
【提出日】平成27年4月24日(2015.4.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
拡張可能な集中型の動的なリソース分散を提供するためにコンピュータで実現される方法であって、前記方法は、
コンピュータノードのクラスタに亘って分散しているデータセットの複数のパーティションを記憶することと、
前記クラスタのグローバル状態を示す情報を収集し、前記グローバル状態へのアクセスを提供する中央分散コーディネータとなる前記コンピュータノードの１つを指定することと、
前記コンピュータノードの間での前記パーティションの分散に対して変更を加えるべきであるかどうかを判断するために、定期的に、分散コーディネータによるクラスタのグローバル状態を分析することと、
前記パーティションの分散に対する前記変更に基づいて、前記分散コーディネータによって、新たな分散プランを生成し、コンピュータノードのクラスタ中のすべてのコンピュータノードに、前記分散プランへのアクセスを提供することと、
前記新たな分散プランを実施するために前記コンピュータノードに関連付けられた個々のパーティション転送をどのように実行するかをクラスタ内の各コンピュータノードによって独立して判断するための分散アルゴリズムを使用することとを含む、方法。
【請求項２】
前記パーティションの分散に対して変更を加えるべきであるかどうかを判断するために、定期的に、分散コーディネータによるクラスタのグローバル状態を分析することは、
前記分散コーディネータによってプラガブルな分散ロジックモジュールを呼び出すことを含み、前記プラガブルな分散ロジックモジュールは、コンピュータノードのクラスタの間で前記パーティションを分散するために利用されるアルゴリズムを調節するためにランタイムで切り替えられ得る、請求項１に記載の方法。
【請求項３】
分散アルゴリズムを使用することは、さらに、
送信ノードと受信ノードとの間の直接的な非同期通信の結果として、コンピュータノードのクラスタにおける２つのコンピュータノード間で二地点間での個々のパーティションの転送を実行することを含み、前記分散コーディネータは前記パーティションの転送の命令に関与しない、請求項１または２に記載の方法。
【請求項４】
前記クラスタのグローバル状態は、クラスタ内の各コンピュータノードに対して前記パーティションのうちどれが割り当てられるかを示す情報を含む、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記クラスタのグローバル状態は、クラスタ内の各コンピュータノードに対する現在の処理負荷を示す情報を含み、現在の処理負荷は、前記分散コーディネータにランタイムフィードバックの統計を定期的に送信する前記各コンピュータノードによって決定される、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
前記クラスタのグローバル状態は、クラスタ内の各コンピュータノードのメモリ容量とプロセッサ容量とを示す情報を含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記複数のパーティションは、さらに、基本パーティションの組とバックアップパーティションの組とを有し、分散コーディネータは、各基本パーティションが当該基本パーティションに関連付けられたバックアップパーティションとは異なる物理的ノード上に位置されることを確実にする、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
分散コーディネータによって生成された新たな分散プランは、所与の各コンピュータノ
ード毎に限られた数のコンピュータノード、前記所与のコンピュータノード上に位置する基本パーティションに関連付けられたバックアップパーティションを含むことを許される制限を課す、請求項７に記載の方法。
【請求項９】
前記分散コーディネータは、前記クラスタ内のコンピュータノードの間での前記パーティションの分散のための単一の調節点を提供する、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記新しい分散プランは、特定のパーティションが前記クラスタ内の指定されたコンピュータノード上に位置することを特定する、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
１つ以上のコンピュータによって実行されると前記１つ以上のコンピュータに請求項１〜１０のいずれか１項に記載の方法を実行させる命令を含む、コンピュータプログラム。
【請求項１２】
請求項１〜１０のいずれか１項に記載の方法のすべてのステップを実行するように構成された１つ以上のコンピュータを含む装置。
【請求項１３】
拡張可能な集中型の動的なリソース分散を提供するためのシステムであって、前記システムは、
データセットの複数のパーティションを記憶しているコンピュータノードのクラスタを含み、前記パーティションは、コンピュータノードの前記クラスタに亘って分散しており、さらに、
コンピュータノードから選択された分散コーディネータを含み、前記分散コーディネータは、前記クラスタのグローバル状態を示す情報を収集し、前記コンピュータノードの間での前記パーティションの分散に対して変更を加えるべきであるかどうかを判断するために、定期的にグローバル状態を分析し、前記変更に基づいて新たな分散プランを生成し、コンピュータノードのクラスタ内のすべてのコンピュータノードに前記分散プランへのアクセスを提供し、
コンピュータノードの前記クラスタは、前記分散コーディネータによって生成された前記新たな分散プランを実行するために前記コンピュータノードに関連付けられた個々のパーティション転送をどのように実行するかをクラスタ内の各コンピュータノードによって独立して判断するための分散アルゴリズムを使用する、システム。
【請求項１４】
拡張可能な集中型の動的なリソース分散を提供するための方法であって、前記方法は、
コンピュータノードのクラスタに亘って分散しているデータセットの複数のパーティションを記憶することと、
前記コンピュータノードの間での前記パーティションの分散に対して変更を加えるべきであるかどうかを判断するために、定期的に、分散コーディネータによるクラスタのグローバル状態を分析することととを含み、前記分散コーディネータは前記コンピュータノードの中の１つであり、さらに、
前記パーティションの分散に対する前記変更に基づいて、前記分散コーディネータによって、新たな分散プランを生成し、コンピュータノードのクラスタの全体に、前記分散プランへのアクセスを提供することと、
前記新たな分散プランを実施するために前記コンピュータノードに関連付けられた個々のパーティション転送をどのように実行するかをクラスタ内の各コンピュータノードによって独立して判断するための分散アルゴリズムを使用することとを含む、方法。
【請求項１５】
プロセッサに、以下のステップの組を実行させるためのプログラムであって、前記ステップの組は、
コンピュータノードのクラスタに亘って分散しているデータセットの複数のパーティションを記憶することと、
前記コンピュータノードの間での前記パーティションの分散に対して変更を加えるべきであるかどうかを判断するために、定期的に、分散コーディネータによるクラスタのグローバル状態を分析することととを含み、前記分散コーディネータは前記コンピュータノードの中の１つであり、
前記パーティションの分散に対する前記変更に基づいて、前記分散コーディネータによって、新たな分散プランを生成し、コンピュータノードのクラスタの全体に、前記分散プランへのアクセスを提供することと、
前記新たな分散プランを実施するために前記コンピュータノードに関連付けられた個々のパーティション転送をどのように実行するかをクラスタ内の各コンピュータノードによって独立して判断するために分散アルゴリズムを使用することとを含む、プログラム。