【手続補正書】
【提出日】平成30年6月29日(2018.6.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
分散コンピューティング環境内のノードにおいて、クライアントからの実行可能コードの動的配置をサポートする方法であって、
前記ノード上で、前記クライアントからのシリアル化されたオブジェクトを受信するステップを含み、前記シリアル化されたオブジェクトは、前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含み、
前記ノード上で、前記シリアル化されたオブジェクトをデシリアル化することによって、前記クラス定義と前記エージェントの前記捕捉状態とを取得するステップと、
前記クラス定義と前記エージェントの前記捕捉状態とを前記ノードのメモリにロードすることによって、前記ノード上で前記新規クラスのインスタンスを生成するステップと、
前記ノード上で前記エージェントを実行するステップとを含む、方法。
【請求項２】
前記クラス定義は、ラムダ式を実装する、請求項１に記載の方法。
【請求項３】
前記クライアント上でエージェントコードを受信するステップと、
前記クライアント上の前記エージェントコードから、前記新規クラスのクラス定義を判断するステップと、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成するステップとをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記クライアント上でクラス／ＩＤテーブルを保持するステップと、
前記クライアント上で前記エージェントのエージェントコードを受信するステップと、
前記クライアント上の前記エージェントコードから、前記新規クラスのクラス定義を判断するステップと、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成するステップと、
前記クラス／ＩＤテーブルを用いて、前記新規クラスが前記ノードのクラスパスに存在しないことを判断するステップとをさらに含む、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記クライアント上でクラス／ＩＤテーブルを保持するステップと、
前記クライアント上で前記エージェントのエージェントコードを受信するステップと、
前記クライアント上の前記エージェントコードから、前記新規クラスのクラス定義を判断するステップと、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成するステップと、
前記クラス／ＩＤテーブルを用いて、前記新規クラスが前記ノードのクラスパスに存在しないことを判断するステップと、
前記新規クラスの前記クラスＩＤを前記クラス／ＩＤテーブルに追加するステップとをさらに含む、請求項１〜３のいずれか１項に記載の方法。
【請求項６】
前記クライアント上で前記エージェントのエージェントコードを受信するステップと、
前記クライアント上の前記エージェントコードから、前記新規クラスのクラス定義を判断するステップと、
前記クライアント上で、前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含む前記シリアル化されたオブジェクトを生成するステップと、
前記シリアル化されたオブジェクトを前記ノードに送信するステップとをさらに含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記クライアント上で前記クライアントのエージェントコードを受信するステップを含み、前記エージェントコードは、ラムダ式を含み、
前記クライアント上の前記エージェントコードから、前記新規クラスのクラス定義を判断するステップを含み、前記クラス定義は、前記ラムダ式を実装し、
前記クライアント上で、前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含む前記シリアル化されたオブジェクトを生成するステップと、
前記シリアル化されたオブジェクトを前記ノードに送信するステップとをさらに含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記分散コンピューティング環境は、データグリッドクラスタを含み、
前記実行可能コードの動的配置は、前記エージェントによって操作されるデータを保持する複数のノードを前記データグリッドクラスタに再配置することなく、前記データグリッドクラスタ内の前記複数のノード上で前記エージェントの実行を可能にする、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記分散コンピューティング環境は、データグリッドクラスタを含み、
前記エージェントは、前記ノードに保持されたデータを処理するためのエントリプロセッサである、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記分散コンピューティング環境は、データグリッドクラスタを含み、
前記エージェントは、前記ノードに保持されたデータを処理するためのアグリゲータ、フィルタ、値エクストラクタおよび呼び出し可能物のうち、１つである、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
分散コンピューティング環境において実行可能コードの動的配置をサポートするシステムであって、
マイクロプロセッサとメモリとを含むコンピュータシステムと、
前記分散コンピューティング環境の一部として前記コンピュータシステム上で配置されたノードとを備え、
前記ノードは、
クライアントからのシリアル化されたオブジェクトを受信するように構成され、前記シリアル化されたオブジェクトは、前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含み、
前記ノード上で前記シリアル化されたオブジェクトをデシリアル化することによって、前記クラス定義と前記エージェントの前記捕捉状態とを取得し、
前記クラス定義と前記エージェントの前記捕捉状態とを前記ノードに割り当てられた前記メモリの一部にロードすることによって、前記ノード上で前記新規クラスのインスタンスを生成し、
前記ノード上で前記エージェントを実行するように構成される、システム。
【請求項１２】
前記クラス定義は、ラムダ式を実装する、請求項１１に記載のシステム。
【請求項１３】
マイクロプロセッサとメモリとを含むクライアントコンピュータシステムと、
前記クライアントコンピュータシステム上で動作するクライアントとをさらに備え、
前記クライアントは、
前記エージェントのエージェントコードを受信し、
前記エージェントコードから、前記新規クラスのクラス定義を判断し、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成するように構成される、請求項１１または１２に記載のシステム。
【請求項１４】
マイクロプロセッサとメモリとを含むクライアントコンピュータシステムと、
前記クライアントコンピュータシステム上で動作するクライアントとをさらに備え、
前記クライアントは、
クラス／ＩＤテーブルを保持し、
前記エージェントのエージェントコードを受信し、
前記エージェントコードから、前記新規クラスのクラス定義を判断し、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成し、
前記クラス／ＩＤテーブルを用いて、前記新規クラスが前記ノードのクラスパスに存在しないことを判断するように構成される、請求項１１〜１３のいずれか１項に記載のシステム。
【請求項１５】
マイクロプロセッサとメモリとを含むクライアントコンピュータシステムと、
前記クライアントコンピュータシステム上で動作するクライアントとをさらに備え、
前記クライアントは、
クラス／ＩＤテーブルを保持し、
前記エージェントのエージェントコードを受信し、
前記エージェントコードから、前記新規クラスのクラス定義を判断し、
前記クラス定義に基づいて、前記新規クラスのクラスＩＤを生成し、
前記クラス／ＩＤテーブルを用いて、前記新規クラスが前記ノードのクラスパスに存在しないことを判断し、
前記新規クラスの前記クラスＩＤを前記クラス／ＩＤテーブルに追加するように構成される、請求項１１〜１３のいずれか１項に記載のシステム。
【請求項１６】
マイクロプロセッサとメモリとを含むクライアントコンピュータシステムと、
前記クライアントコンピュータシステム上で動作するクライアントとをさらに備え、
前記クライアントは、
クラス／ＩＤテーブルを保持し、
前記エージェントのエージェントコードを受信し、
前記エージェントコードから、前記新規クラスのクラス定義を判断し、
前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含む前記シリアル化されたオブジェクトを生成し、
前記シリアル化されたオブジェクトを前記ノードに送信するように構成される、請求項１１〜１５のいずれか１項に記載のシステム。
【請求項１７】
マイクロプロセッサとメモリとを含むクライアントコンピュータシステムと、
前記クライアントコンピュータシステム上で動作するクライアントとをさらに備え、
前記クライアントは、
クラス／ＩＤテーブルを保持し、
前記エージェントのエージェントコードを受信するように構成され、前記エージェントコードは、ラムダ式を含み、
前記エージェントコードから、前記新規クラスのクラス定義を判断するように構成され、前記クラス定義は、前記ラムダ式を実装し、
前記ノードのクラスパスに存在しない新規クラスのクラス定義と、前記新規クラスを利用するエージェントの捕捉状態とを含む前記シリアル化されたオブジェクトを生成し、
前記シリアル化されたオブジェクトを前記ノードに送信するように構成される、請求項１１〜１６のいずれか１項に記載のシステム。
【請求項１８】
前記分散コンピューティング環境は、データグリッドクラスタを含み、
前記実行可能コードの動的配置は、前記エージェントによって操作されるデータを保持
する複数のノードを前記データグリッドクラスタに再配置することなく、前記データグリッドクラスタ内の前記複数のノード上で前記エージェントの実行を可能にする、請求項１１〜１７のいずれか１項に記載のシステム。
【請求項１９】
前記分散コンピューティング環境は、データグリッドクラスタを含み、
前記エージェントは、前記ノードに保持されたデータを処理するためのアグリゲータ、フィルタ、値エクストラクタおよび呼び出し可能物のうち、１つである、請求項１１〜１８のいずれか１項に記載のシステム。
【請求項２０】
１つ以上のコンピュータシステム上で実行するためのプログラム命令を含むコンピュータプログラムであって、これらの命令は、コンピュータシステムによって実行されると、前記コンピュータシステムに、請求項１〜１０のいずれか１項に記載の方法を実行させる、コンピュータプログラム。