(57)【要約】【課題】ネットワークを介して接続された情報処理装置間で負荷を分散させることができる情報処理装置及び情報処理方法を提供する。【解決手段】データ処理定義取得部２０８は、情報受信部２０７により受信された情報からデータ処理定義を取得する。ステータス情報取得部２０９は、情報受信部２０７により受信された情報からステータス情報を取得する。処理データ取得部２１０は、情報受信部２０７により受信された情報から処理データを取得する。リソース情報取得部２１１は、自身である情報処理装置のリソース情報を取得する。データ処理判断部２１２は、リソース情報、データ処理定義及びステータス情報に基づいて、データ処理実行部２１３が実行可能なデータ処理を判断する。データ処理実行部２１３は、データ処理判断部２１２により実行可能と判断されたデータ処理を、処理データに対して実行する。【選択図】図２
2007108954.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークインタフェースを備えた情報処理装置であって、
前記ネットワークインタフェースを介して情報を受け取る情報受け取り手段と、
前記情報受け取り手段により受け取られた情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出手段と、
前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断手段と、
前記データ処理判断手段により実行可能と判断されたデータ処理を前記処理データに対して実行するデータ処理実行手段と、
を有することを特徴とする情報処理装置。
【請求項２】
ネットワークインタフェースを備えた情報処理装置であって、
処理対象となる処理データを設定する処理データ設定手段と、
前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義手段と、
前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定手段と、
ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択手段と、
前記情報処理装置選択手段により選択された情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡し手段と、
を有することを特徴とする情報処理装置。
【請求項３】
自身である当該情報処理装置の属性情報を取得する属性情報取得手段を有し、
前記データ処理判断手段は、前記属性情報にも基づいて実行可能なデータ処理を判断することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
属性情報取得手段は、前記属性情報として、当該情報処理装置のリソース情報を取得することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
属性情報取得手段は、前記属性情報として、当該情報処理装置の処理機能情報を取得することを特徴とする請求項３に記載の情報処理装置。
【請求項６】
自身である当該情報処理装置の動作状況を把握する動作状況把握手段を有し、
前記データ処理判断手段は、前記動作状況にも基づいて実行可能なデータ処理を判断することを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記情報処理装置選択手段は、前記ネットワーク上の情報処理装置の属性情報を取得する属性情報取得手段を有し、前記属性情報、前記データ処理定義情報及び前記ステータス情報に基づいてデータ処理を実行させる情報処理装置を選択することを特徴とする請求項２に記載の情報処理装置。
【請求項８】
属性情報取得手段は、前記属性情報として、前記ネットワーク上の情報処理装置のリソース情報を取得することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
属性情報取得手段は、前記属性情報として、前記ネットワーク上の情報処理装置の処理機能情報を取得することを特徴とする請求項７に記載の情報処理装置。
【請求項１０】
前記情報処理装置選択手段は、前記ネットワーク上の情報処理装置の動作状況を把握する動作状況把握手段を有し、前記動作状況、前記データ処理定義情報及び前記ステータス情報に基づいてデータ処理を実行させる情報処理装置を選択することを特徴とする請求項２に記載の情報処理装置。
【請求項１１】
ネットワークインタフェースを備えた情報処理装置を用いた情報処理方法であって、
前記ネットワークインタフェースを介して情報を受け取る情報受け取りステップと、
前記情報受け取りステップにおいて受け取った情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出ステップと、
前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断ステップと、
前記データ処理判断ステップにおいて実行可能と判断したデータ処理を前記処理データに対して実行するデータ処理実行ステップと、
を有することを特徴とする情報処理方法。
【請求項１２】
ネットワークインタフェースを備えた情報処理装置を用いた情報処理方法であって、
処理対象となる処理データを設定する処理データ設定ステップと、
前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義ステップと、
前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定ステップと、
ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択ステップと、
前記情報処理装置選択ステップにおいて選択した情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡しステップと、
を有することを特徴とする情報処理方法。
【請求項１３】
ネットワークインタフェースを備えた情報処理装置の制御をコンピュータに行わせるためのプログラムであって、
前記コンピュータに、
前記ネットワークインタフェースを介して情報を受け取る情報受け取り手順と、
前記情報受け取り手順において受け取った情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出手順と、
前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断手順と、
前記データ処理判断手順において実行可能と判断したデータ処理を前記処理データに対して実行するデータ処理実行手順と、
を実行させることを特徴とするプログラム。
【請求項１４】
ネットワークインタフェースを備えた情報処理装置の制御をコンピュータに行わせるためのプログラムであって、
処理対象となる処理データを設定する処理データ設定手順と、
前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義手順と、
前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定手順と、
ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択手順と、
前記情報処理装置選択手順において選択した情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡し手順と、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続して使用される情報処理装置及びそれを用いた情報処理方法に関する。
【背景技術】
【０００２】
コンピュータ及びネットワークの発達に伴ってデータベース、パーソナルコンピュータ等の情報処理装置のネットワークへの接続が進展しつつある。また、これに伴ってネットワーク上に分散されたデータベース、パーソナルコンピュータ等の情報処理装置においての電子処理、例えばデータ情報の処理への期待が高まってきている。
【０００３】
このようなデータ処理技術においては、ネットワーク上に分散された情報処理装置においてのデータを効率的に処理する技術が必要である。これまで、データを効率的に処理する技術については、多数の提案がなされている。
【０００４】
従来、ネットワーク上に分散された情報処理装置においてのデータを処理する技術としては、ネットワーク上に分散された情報処理装置において情報処理装置毎にデータ処理の内容及び順番が固定的に決められている。そして、各情報処理装置において順番通りに特定のデータ処理が行われている。
【０００５】
また、特許文献１には、データ処理装置の属性情報を取得し、該取得した属性情報にしたがって、データを処理させるデータ処理装置を選択するシステムが開示されている。
【０００６】
【特許文献１】特開２００１−０２４３０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、これらの従来技術では、上述のように、データ処理を実行させる情報処理装置の選択は属性情報に従って行われている。このため、各情報処理装置のコンフィギュレーションに応じた最適なデータ処理が困難であり、また負荷を分散することも困難である。
【０００８】
本発明は、ネットワークを介して接続された情報処理装置間で負荷を分散させることができる情報処理装置及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本願発明者は、前記課題を解決すべく鋭意検討を重ねた結果、以下に示す発明の諸態様に想到した。
【００１０】
本発明に係る第１の情報処理装置は、ネットワークインタフェースを備えた情報処理装置であって、前記ネットワークインタフェースを介して情報を受け取る情報受け取り手段と、前記情報受け取り手段により受け取られた情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出手段と、前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断手段と、前記データ処理判断手段により実行可能と判断されたデータ処理を前記処理データに対して実行するデータ処理実行手段と、を有することを特徴とする。
【００１１】
本発明に係る第２の情報処理装置は、ネットワークインタフェースを備えた情報処理装置であって、処理対象となる処理データを設定する処理データ設定手段と、前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義手段と、前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定手段と、ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択手段と、前記情報処理装置選択手段により選択された情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡し手段と、を有することを特徴とする。
【００１２】
本発明に係る第１の情報処理方法は、ネットワークインタフェースを備えた情報処理装置を用いた情報処理方法であって、前記ネットワークインタフェースを介して情報を受け取る情報受け取りステップと、前記情報受け取りステップにおいて受け取った情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出ステップと、前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断ステップと、前記データ処理判断ステップにおいて実行可能と判断したデータ処理を前記処理データに対して実行するデータ処理実行ステップと、を有することを特徴とする。
【００１３】
本発明に係る第２の情報処理方法は、ネットワークインタフェースを備えた情報処理装置を用いた情報処理方法であって、処理対象となる処理データを設定する処理データ設定ステップと、前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義ステップと、前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定ステップと、ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択ステップと、
前記情報処理装置選択ステップにおいて選択した情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡しステップと、を有することを特徴とする。
【００１４】
本発明に係る第１のプログラムは、ネットワークインタフェースを備えた情報処理装置の制御をコンピュータに行わせるためのプログラムであって、前記コンピュータに、前記ネットワークインタフェースを介して情報を受け取る情報受け取り手順と、前記情報受け取り手順において受け取った情報から、処理対象となる処理データ、前記処理データを用いるデータ処理の内容を定義したデータ処理定義情報、及び前記データ処理定義情報に示されたデータ処理のステータス情報を抽出する情報抽出手順と、前記データ処理定義情報及びステータス情報に基づいて実行可能なデータ処理を判断するデータ処理判断手順と、前記データ処理判断手順において実行可能と判断したデータ処理を前記処理データに対して実行するデータ処理実行手順と、を実行させることを特徴とする。
【００１５】
本発明に係る第２のプログラムは、ネットワークインタフェースを備えた情報処理装置の制御をコンピュータに行わせるためのプログラムであって、処理対象となる処理データを設定する処理データ設定手順と、前記処理データを用いるデータ処理の内容を定義することにより、データ処理定義情報を作成するデータ処理定義手順と、前記データ処理定義情報に示されたデータ処理のステータス情報を設定するステータス情報設定手順と、ネットワーク上の情報処理装置のうちから任意の情報処理装置を選択する情報処理装置選択手順と、前記情報処理装置選択手順において選択した情報処理装置に、前記処理データ、前記データ処理定義情報及び前記ステータス情報を受け渡す情報受け渡し手順と、を実行させることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ネットワークを介して接続された情報処理装置のコンフィギュレーションに応じてデータ処理を分散することが可能となり、負荷を分散させることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。
【００１８】
（第１の実施形態）
先ず、本発明の第１の実施形態について説明する。図１は、本発明の第１の実施形態に係る情報処理装置の構成を示すブロック図である。
【００１９】
本実施形態に係る情報処理装置では、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、入力装置１０４、表示装置１０５、ハードディスク１０６、リムーバル外部記憶装置１０７及びネットワーク装置１０８がバス１０９を介して互いに接続されている。
【００２０】
ＣＰＵ１０１は、例えばマイクロプロセッサであり、情報処理のための演算、論理判断等を行い、バス１０９を介してバス１０９に接続された各構成要素を制御する。
【００２１】
ＲＯＭ１０２は、読み出し専用の固定メモリ（リードオンリメモリ）であり、例えばＣＰＵ１０１により実行されるブートプログラムを記憶している。ブートプログラムは、システム起動時にハードディスク１０６に記憶された制御プログラム１０６ａをＲＡＭ１０３にロードし、ＣＰＵ１０１に実行させる。制御プログラムについては、後にフローチャートを参照しながら詳述する。
【００２２】
ＲＡＭ１０３は書き込み可能なランダムアクセスメモリであって、各構成要素からの各種データの一次記憶に用いられる。
【００２３】
入力装置１０４は、例えばキーボード及びマウス等である。表示装置１０５は、例えばＣＲＴ又は液晶ディスプレイ等である。
【００２４】
ハードディスク１０６は、ＣＰＵ１０１により実行される制御プログラム１０６ａ等を格納している。
【００２５】
リムーバブル外部記憶装置１０７は、例えばフレキシブルディスク、ＣＤ、ＤＶＤ等の外部記憶にアクセスするためのドライブ等である。リムーバブル外部記憶装置１０７は、ハードディスク１０６と同様に使用することも可能であり、それらの記録媒体を通じて他の情報処理装置とのデータ交換を行うことが可能である。なお、ハードディスク１０６に記憶される制御プログラム１０６ａは、これらの外部記憶装置から必要に応じてハードディスク１０６にコピーすることもできる。
【００２６】
ネットワーク装置１０８は、ネットワークコントローラ（ネットワークインタフェース）であり、ネットワーク回線を介して複数の外部の情報処理装置とのデータ交換を行う。
【００２７】
バス１０９は、ＣＰＵ１０１の制御対象である各構成要素に対してＣＰＵ１０１から出力されたアドレス信号及びコントロール信号等を転送する。また、各構成要素間のデータ転送をも行う。
【００２８】
このように構成された情報処理装置においては、入力装置１０４からの各種の入力に応じて作動し、入力装置１０４からの入力が供給されると、先ずインタラプト信号がＣＰＵ１０１に送られる。そして、ＣＰＵ１０１がＲＯＭ１０２又はＲＡＭ１０３内に記憶されている各種命令を読み出し、その実行によって各種の制御を行う。
【００２９】
次に、上述の情報処理装置の機能的な構成について説明する。図２は、本発明の第１の実施形態に係る情報処理装置の個性を示す機能構成図である。本実施形態においては、制御プログラム１０６ａ及びＣＰＵ１０１等から下記の各部が構成されている。
【００３０】
処理データ設定部２０１は、データ処理を行うための処理データを設定する。データ処理定義設定部２０２は、処理データ設定部０１により設定された処理データを用いる複数のデータ処理を定義する。ステータス情報設定部２０３は、データ処理定義設定部２０２により定義されたデータ処理のステータス情報を設定する。情報処理装置認識部２０４は、ネットワークを介して接続された複数の外部の情報処理装置を認識する。情報処理装置選択部２０５は、情報処理装置認識部２０４により認識された情報処理装置から任意の情報処理装置を選択する。この選択の対象は、自分自身及び外部の情報処理装置である。情報送信部２０６は、情報処理装置選択部２０５により選択された情報処理装置に、処理データ、データ処理定義及びステータス情報を送信する。
【００３１】
情報受信部２０７は、自分自身の情報送信部２０６又は外部の情報処理装置の情報送信部２０６から送信された情報を受信する。データ処理定義取得部２０８は、情報受信部２０７により受信された情報からデータ処理定義を取得する。ステータス情報取得部２０９は、情報受信部２０７により受信された情報からステータス情報を取得する。処理データ取得部２１０は、情報受信部２０７により受信された情報から処理データを取得する。リソース情報取得部２１１は、自身である情報処理装置のリソース情報を取得する。データ処理判断部２１２は、リソース情報取得部２１１により取得されたリソース情報並びにデータ処理定義及びステータス情報に基づいて、データ処理実行部２１３が実行可能なデータ処理を判断する。データ処理実行部２１３は、データ処理判断部２１２により実行可能と判断されたデータ処理を、処理データに対して実行する。
【００３２】
図３は、本発明の第１の実施形態に係る情報処理装置が用いられたネットワークの構成を示すブロック図である。このネットワークでは、本発明の第１の実施形態に係る５個の情報処理装置３０１〜３０５がネットワーク回線３１０を介して互いに接続されている。
【００３３】
次に、図３に示すようなネットワークに用いられた場合の情報処理装置の動作について説明する。ここでは、３つの場合を想定して、情報処理装置３０５の動作について説明する。１つは、設定したデータ処理の一部を自身で実行し、一部を外部の情報処理装置に実行させる場合（第１のケース）である。１つは、設定したデータ処理を外部の情報処理装置のみに実行させる場合（第２のケース）である。１つは、外部の情報処理装置３０１〜３０４のいずれかからデータ処理の命令が送られてきた場合（第３のケース）である。
【００３４】
−第１のケース−
図４は、本発明の第１の実施形態に係る情報処理装置の動作の一例（第１のケース）を示すフローチャートである。図４に示す処理は、制御プログラム１０６ａに基づいてＣＰＵ１０１により実行される。
【００３５】
ステップＳ４０１では、データ処理を行うための処理データを処理データ設定部２０１が設定する。例えば、図５に示すような処理データを設定する。
【００３６】
ステップＳ４０２では、処理データ設定部２０１により設定された処理データを用いる複数のデータ処理をデータ処理定義設定部２０２が定義する。例えば、図６に示すように、データ処理の順番とデータ処理の内容とを対応付けて定義する。ここでは、一例として、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」のデータ処理を定義することとする。
【００３７】
ステップＳ４０３では、データ処理定義設定部２０２により定義されたデータ処理のステータス情報をステータス情報設定部２０３が設定する。例えば、図７−１に示すように、データ処理を実行した情報処理装置の情報とデータ処理の内容とを互いに関連付けて設定する。また、データ処理を実行しない場合は情報処理装置の情報のみを設定する。ここでは、情報処理装置３０４が「降順ソート」処理を実行し、情報処理装置３０３が「重複データ削除」処理を実行したが、情報処理装置３０１はデータ処理を実行しなかったこととする。
【００３８】
なお、ステータス情報として、図７−２のようなものが設定されることもある。即ち、初期状態において、すべての情報がクリアされているステータス情報が設定されることもある。
【００３９】
ステップＳ４０５では、ネットワーク回線３１０を介して接続された複数の外部の情報処理装置を情報処理装置認識部２０４が認識する。例えば、自身を含めて図３に示すようなネットワーク回線３１０を介して接続された複数の情報処理装置３０１〜３０５が存在する場合、図８に示すように、認識された情報処理装置の情報を出力する。また、各情報処理装置３０１〜３０５の情報としてＩＰアドレスを出力する。ここでは、情報処理装置３０４のＩＰアドレスが１７２．２３．３９．１０１であるとする。また、情報処理装置３０１のＩＰアドレスが１７２．２３．３９．１０３であるとする。また、情報処理装置３０３のＩＰアドレスが１７２．２３．３９．１１０であるとする。また、情報処理装置３０５のＩＰアドレスが１７２．２３．３９．１４１であるとする。また、情報処理装置３０２のＩＰアドレスが１７２．２３．３９．１２０であるとする。
【００４０】
ステップＳ４０６では、情報処理装置認識部２０４により認識された情報処理装置から任意の情報処理装置を情報処理装置選択部２０５が選択する。ここでは、例えば、図８に示すような認識された情報処理装置の情報から、「情報処理装置３０５：ＩＰアドレス１７２．２３．３９．１４１」を選択することとする。即ち、自分自身を選択する。
【００４１】
ステップＳ４０７では、情報処理装置選択部２０５において選択された情報処理装置３０５に、処理データ、データ処理定義及びステータス情報を情報送信部２０６が送信する。例えば、自分自身に、ステップＳ４０１において設定された処理データ、ステップＳ４０２において定義されたデータ処理定義及びステップＳ４０３において設定されたステータス情報を送信する。
【００４２】
ステップＳ４０８では、ステップＳ４０７において送信された情報を情報受信部２０７が受信する。なお、この動作例では、送受信が１個の情報処理装置３０５の内部で行われるため、実際に情報の送受信が行われるのではなく、情報送信部２０６及び情報受信部２０７間で情報の授受が行われるのみである。
【００４３】
ステップＳ４０９では、ステップＳ４０８において受信された情報から処理データを処理データ取得部２１０が取得する。例えば、図５に示すような処理データを取得する。
【００４４】
ステップＳ４１０では、ステップＳ４０８において受信された情報からデータ処理定義情報をデータ処理定義取得部２０８が取得する。例えば、図６に示すようなデータ処理定義情報を取得する。
【００４５】
ステップＳ４１１では、ステップＳ４０８において受信された情報からステータス情報をステータス情報取得部２０９が取得する。例えば、図７−１に示すようなステータス情報を取得する。
【００４６】
ステップＳ４１２では、自分自身（情報処理装置３０５）のリソース情報をリソース情報取得部２１１が取得する。例えば、図９に示すようなリソース情報を取得する。ここでは、リソース情報として、メモリ情報（現在のメモリ使用量、利用可能な量及び合計）を取得することとする。
【００４７】
ステップＳ４１３では、データ処理を行うか否かの判定をデータ処理判定部２１２が判定する。ここでは、ステップＳ４１０において取得されたデータ処理定義情報、ステップＳ４１１において取得されたステータス情報及びステップＳ４１２において取得されたリソース情報に基づいて判定する。
【００４８】
一例として、例えば、図６に示すように、データ処理定義が、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」と定義されていたとする。また、ステータス情報は、図７−１に示すように、情報処理装置３０４が「降順ソート」処理を実行し、情報処理装置３０１がデータ処理を実行せず、情報処理装置３０３が「重複データ削除」処理を実行したことを示しているとする。このような状況では、次のデータ処理を「平均値計算」処理と判定する。次に、図９に示すようなリソース情報、特にここではメモリの利用可能な量及びデータ処理「平均値計算」に必要なメモリ量に基づいて、データ処理「平均値計算」を実行できるか否かを判定する。
【００４９】
ステップＳ４１４では、ステップＳ４１３においてデータ処理を実行すると判定された場合にステップＳ４１５に処理を進め、データ処理を実行しないと判定された場合にステップＳ４０４に処理を進める。
【００５０】
ステップＳ４１５では、ステップＳ４１３において判定されたデータ処理を、ステップＳ４０９において取得された処理データを用いて、データ処理実行部２１３が実行する。
【００５１】
ステップＳ４１６では、ステップＳ４１５においてデータ処理が実行された場合にステータス情報をステータス情報設定部２０３が再設定する。
【００５２】
ステップＳ４０４では、データ処理定義及びステータス情報に基づいてデータ処理を継続するか否かを判断し、データ処理を継続する場合は、ステップＳ４０５に処理を進める。一方、データ処理を終了する場合は処理を終了する。
【００５３】
以降、ステップＳ４０５からステップＳ４０４までの処理を、データ処理を終了するまで繰り返す。但し、ステップＳ４０６において、外部の情報処理装置を選択する場合もある。この場合でも、処理を終了することなく、すべてのデータ処理を終了するまで図４に示す処理を継続する。
【００５４】
−第２のケース−
図１０は、本発明の第１の実施形態に係る情報処理装置の動作の一例（第２のケース）を示すフローチャートである。図１０に示す処理は、制御プログラム１０６ａに基づいてＣＰＵ１０１により実行される。
【００５５】
ステップＳ１００１では、データ処理を行うための処理データを処理データ設定部２０１が設定する。例えば、図１１に示すような処理データを設定する。
【００５６】
ステップＳ１００２では、処理データ設定部２０１により設定された処理データを用いる複数のデータ処理をデータ処理定義設定部２０２が定義する。例えば、図６に示すように、データ処理の順番とデータ処理の内容とを対応付けて定義する。ここでは、一例として、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」のデータ処理を定義することとする。
【００５７】
ステップＳ１００３では、データ処理定義設定部２０２により定義されたデータ処理のステータス情報をステータス情報設定部２０３が設定する。例えば、図７−２に示すように、データ処理を実行した情報処理装置の情報とデータ処理の内容とを互いに関連付けて設定する。また、データ処理を実行しない場合は情報処理装置の情報のみを設定する。ここでは、最初のデータ処理の要求なのでステータス情報はクリアされている。
【００５８】
なお、図７−１に示すようなステータス情報が設定されることもある。
【００５９】
ステップＳ１００４では、ネットワーク回線３１０を介して接続された複数の外部の情報処理装置を情報処理装置認識部２０４が認識する。例えば、自身を含めて図３に示すようなネットワーク回線３１０を介して接続された複数の情報処理装置３０１〜３０５が存在する場合、図８に示すように、認識された情報処理装置の情報を出力する。また、各情報処理装置３０１〜３０５の情報としてＩＰアドレスを出力する。ここでは、情報処理装置３０４のＩＰアドレスが１７２．２３．３９．１０１であるとする。また、情報処理装置３０１のＩＰアドレスが１７２．２３．３９．１０３であるとする。また、情報処理装置３０３のＩＰアドレスが１７２．２３．３９．１１０であるとする。また、情報処理装置３０５のＩＰアドレスが１７２．２３．３９．１４１であるとする。また、情報処理装置３０２のＩＰアドレスが１７２．２３．３９．１２０であるとする。
【００６０】
ステップＳ１００５では、情報処理装置認識部２０４により認識された情報処理装置から任意の情報処理装置を情報処理装置選択部２０５が選択する。ここでは、例えば、図８に示すような認識された情報処理装置の情報から、「情報処理装置３０４：ＩＰアドレス１７２．２３．３９．１０１」を選択することとする。
【００６１】
ステップＳ１００６では、情報処理装置選択部２０５により選択された情報処理装置３０４に、処理データ、データ処理定義及びステータス情報を情報送信部２０６が送信する。例えば、情報処理装置３０４に、ステップＳ１００１において設定された処理データ、ステップＳ１００２において定義されたデータ処理定義及びステップＳ１００３において設定されたステータス情報を送信する。
【００６２】
−第３のケース−
図１２は、本発明の第１の実施形態に係る情報処理装置の動作の一例（第３のケース）を示すフローチャートである。図１２に示す処理は、制御プログラム１０６ａに基づいてＣＰＵ１０１により実行される。
【００６３】
ステップＳ１２０１では、外部の情報処理装置から送信された情報を情報受信部２０７が受信する。
【００６４】
ステップＳ１２０２では、ステップＳ１２０１において受信された情報から処理データを処理データ取得部２１０が取得する。例えば、図５に示すような処理データを取得する。
【００６５】
ステップＳ１２０３では、ステップＳ１２０１において受信された情報からデータ処理定義情報をデータ処理定義取得部２０８が取得する。例えば、図６に示すようなデータ処理定義情報を取得する。
【００６６】
ステップＳ１２０４では、ステップＳ１２０１において受信された情報からステータス情報をステータス情報取得部２０９が取得する。例えば、図７−１に示すようなステータス情報を取得する。
【００６７】
ステップＳ１２０５では、自分自身（情報処理装置３０５）のリソース情報をリソース情報取得部２１１が取得する。例えば、図９に示すようなリソース情報を取得する。ここでは、リソース情報として、メモリ情報（現在のメモリ使用量、利用可能な量及び合計）を取得することとする。
【００６８】
ステップＳ１２０６では、データ処理を行うか否かの判定をデータ処理判定部２１２が判定する。ここでは、ステップＳ１２０３において取得されたデータ処理定義情報、ステップＳ１２０４において取得されたステータス情報及びステップＳ１２０５において取得されたリソース情報に基づいて判定する。
【００６９】
一例として、例えば、図６に示すように、データ処理定義が、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」と定義されていたとする。また、ステータス情報は、図７−１に示すように、情報処理装置３０４が「降順ソート」処理を実行し、情報処理装置３０１がデータ処理を実行せず、情報処理装置３０３が「重複データ削除」処理を実行したことを示しているとする。このような状況では、次のデータ処理を「平均値計算」処理と判定する。次に、図９に示すようなリソース情報、特にここではメモリの利用可能な量及びデータ処理「平均値計算」に必要なメモリ量に基づいて、データ処理「平均値計算」を実行できるか否かを判定する。
【００７０】
ステップＳ１２０７では、ステップＳ１２０６においてデータ処理を実行すると判定された場合にステップＳ１２０８に処理を進め、データ処理を実行しないと判定された場合にステップＳ１２１０に処理を進める。
【００７１】
ステップＳ１２０８では、ステップＳ１２０６において判定されたデータ処理を、ステップＳ１２０２において取得された処理データを用いて、データ処理実行部２１３が実行する。
【００７２】
ステップＳ１２０９では、ステップＳ１２０８においてデータ処理が実行された場合にステータス情報をステータス情報設定部２０３が再設定する。
【００７３】
ステップＳ１２１０では、データ処理定義及びステータス情報に基づいてデータ処理を継続するか否か判断し、データ処理を継続する場合は、ステップＳ１２１１に処理を進める。一方、データ処理を終了する場合は処理を終了する。
【００７４】
ステップＳ１２１１では、ネットワーク回線３１０を介して接続された複数の外部の情報処理装置を情報処理装置認識部２０４が認識する。例えば、自身を含めて図３に示すようなネットワーク回線３１０を介して接続された複数の情報処理装置３０１〜３０５が存在する場合、図８に示すように、認識された情報処理装置の情報を出力する。また、情報処理装置３０１〜３０５の情報としてＩＰアドレスを出力する。ここでは、情報処理装置３０４のＩＰアドレスが１７２．２３．３９．１０１であるとする。また、情報処理装置３０１のＩＰアドレスが１７２．２３．３９．１０３であるとする。また、情報処理装置３０３のＩＰアドレスが１７２．２３．３９．１１０であるとする。また、情報処理装置３０５のＩＰアドレスが１７２．２３．３９．１４１であるとする。また、情報処理装置３０２のＩＰアドレスが１７２．２３．３９．１２０であるとする。
【００７５】
ステップＳ１２１２では、情報処理装置認識部２０４により認識された情報処理装置から任意の情報処理装置を情報処理装置選択部２０５が選択する。例えば、図８に示すような認識された情報処理装置の情報から、「情報処理装置３０５：ＩＰアドレス１７２．２３．３９．１４１」を選択する。即ち、自分自身を選択することもある。
【００７６】
ステップＳ４３では、情報処理装置選択部０５において選択された情報処理装置３０５に、処理データ、データ処理定義及びステータス情報を情報送信部２０６が送信する。例えば、自分自身に、ステップＳ１２０２において取得した処理データ、ステップＳ１２０３において取得したデータ処理定義及びステップＳ１２０４において取得したステータス情報を送信する。
【００７７】
このような第１の実施形態では、図１３に示すような処理データ等の授受が複数の情報処理装置間で行われ、複数の情報処理装置間でデータ処理が分散される。この結果、各情報処理装置にかかる負荷が軽減される。
【００７８】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。第２の実施形態では、その機能的な構成が第１の実施形態と相違している。図１４は、本発明の第２の実施形態に係る情報処理装置の個性を示す機能構成図である。本実施形態においては、第１の実施形態のリソース情報取得部２１１に替わって、処理機能情報取得部１４１１が設けられている。処理機能情報取得部１４１１は、自身である情報処理装置の処理機能情報を取得する。他の構成は、第１の実施形態と同様である。
【００７９】
次に、図３に示すようなネットワークに用いられた場合の情報処理装置の動作について説明する。ここでは、２つの場合を想定して、情報処理装置３０５の動作について説明する。１つは、設定したデータ処理の一部を自身で実行し、一部を外部の情報処理装置に実行させる場合（第１のケース）である。１つは、外部の情報処理装置３０１〜３０４のいずれかからデータ処理の命令が送られてきた場合（第３のケース）である。
【００８０】
−第１のケース−
図１５は、本発明の第２の実施形態に係る情報処理装置の動作の一例（第１のケース）を示すフローチャートである。図１５に示す処理は、制御プログラム１０６ａに基づいてＣＰＵ１０１により実行される。図１５に示すように、第２の実施形態の動作では、ステップＳ４１１とステップＳ４１３との間の動作が、図４に示す第１の実施形態の動作と相違している。即ち、第２の実施形態では、ステップＳ１５１２において、自分自身（情報処理装置３０５）の処理機能情報を処理機能情報取得部１１１が取得する。例えば、図１６に示すような処理機能情報を取得する。ここでは、処理機能情報として、実行可能な「昇順ソート」処理、「データマージ」処理、「平均値計算」処理及び「検索」処理の情報を取得することとする。
【００８１】
そして、ステップＳ４１３において、データ処理を行うか否かの判定をデータ処理判定部１１２が判定する。ここでは、ステップＳ４１０において取得されたデータ処理定義情報、ステップＳ４１１において取得されたステータス情報及びステップＳ１５１２において取得された処理機能情報に基づいて判定する。
【００８２】
一例として、例えば、図６に示すように、データ処理定義が、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」と定義されていたとする。また、ステータス情報は、図７−１に示すように、情報処理装置３０４が「降順ソート」処理を実行し、情報処理装置３０１がデータ処理を実行せず、情報処理装置３０３が「重複データ削除」処理を実行したことを示しているとする。このような状況では、次のデータ処理を「平均値計算」処理と判定する。次に、図１６に示すような処理機能情報、特にここでは実行可能な処理を取得し、次のデータ処理「平均値計算」を実行できるか否かを判定する。
【００８３】
他の処理は、第１の実施形態と同様である。
【００８４】
−第３のケース−
図１７は、本発明の第２の実施形態に係る情報処理装置の動作の一例（第３のケース）を示すフローチャートである。図１７に示す処理は、制御プログラム１０６ａに基づいてＣＰＵ１０１により実行される。図１７に示すように、第２の実施形態の動作では、ステップＳ１２０４とステップＳ１２０６との間の動作が、図１２に示す第１の実施形態の動作と相違している。即ち、第２の実施形態では、ステップＳ１７０５において、自分自身（情報処理装置３０５）の処理機能情報を処理機能情報取得部１１１が取得する。例えば、図１６に示すような処理機能情報を取得する。ここでは、処理機能情報として、実行可能な「昇順ソート」処理、「データマージ」処理、「平均値計算」処理及び「検索」処理の情報を取得することとする。
【００８５】
そして、ステップＳ１２０６において、データ処理を行うか否かの判定をデータ処理判定部１１２が判定する。ここでは、ステップＳ１２０３において取得されたデータ処理定義情報、ステップＳ１２０４において取得されたステータス情報及びステップＳ１７０５において取得された処理機能情報に基づいて判定する。
【００８６】
一例として、例えば、図６に示すように、データ処理定義が、順番１：データ処理内容「降順ソート」、順番２：データ処理内容「重複データ削除」、順番３：データ処理内容「平均値計算」と定義されていたとする。また、ステータス情報は、図７−１に示すように、情報処理装置３０４が「降順ソート」処理を実行し、情報処理装置３０１がデータ処理を実行せず、情報処理装置３０３が「重複データ削除」処理を実行したことを示しているとする。このような状況では、次のデータ処理を「平均値計算」処理と判定する。次に、図１６に示すような処理機能情報、特にここでは実行可能な処理を取得し、次のデータ処理「平均値計算」を実行できるか否かを判定する。
【００８７】
他の処理は、第１の実施形態と同様である。
【００８８】
このような第２の実施形態では、図１８に示すような処理データ等の授受が複数の情報処理装置間で行われ、複数の情報処理装置間でデータ処理が分散される。この結果、各情報処理装置にかかる負荷が軽減される。
【００８９】
なお、第１の実施形態におけるリソース情報取得部２１１又は第２の実施形態における処理機能情報取得部１４１１のような属性情報を取得する機能の代わりに、当該情報処理記憶装置の動作状況を把握する機能を設けてもよい。
【００９０】
また、第１の実施形態及び第２の実施形態では、情報処理装置選択部２０５が情報処理装置を任意に選択することとしているが、情報処理装置認識部２０４により認識された情報処理装置の属性情報又は動作状況に基づいて選択するようにしてもよい。この場合、属性情報としては、例えばリソース情報又は処理機能情報等を用いればよい。
【００９１】
なお、本発明の実施形態は、例えばコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びプログラムプロダクトは、本発明の範疇に含まれる。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１の実施形態に係る情報処理装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る情報処理装置の個性を示す機能構成図である。
【図３】本発明の第１の実施形態に係る情報処理装置が用いられたネットワークの構成を示すブロック図である。
【図４】本発明の第１の実施形態に係る情報処理装置の動作の一例を示すフローチャートである。
【図５】処理データの一例を示す図である。
【図６】データ処理定義の一例を示す図である。
【図７−１】ステータス情報の一例を示す図である。
【図７−２】ステータス情報の他の一例を示す図である。
【図８】情報処理装置情報の一例を示す図である。
【図９】リソース情報の一例を示す図である。
【図１０】本発明の第１の実施形態に係る情報処理装置の動作の他の一例を示すフローチャートである。
【図１１】処理データの一例を示す図である。
【図１２】本発明の第１の実施形態に係る情報処理装置の動作の更に他の一例を示すフローチャートである。
【図１３】本発明の第１の実施形態における情報の授受を示す図である。
【図１４】本発明の第２の実施形態に係る情報処理装置の個性を示す機能構成図である。
【図１５】本発明の第２の実施形態に係る情報処理装置の動作の一例を示すフローチャートである。
【図１６】処理機能情報の一例を示す図である。
【図１７】本発明の第２の実施形態に係る情報処理装置の動作の他の一例を示すフローチャートである。
【図１８】本発明の第２の実施形態における情報の授受を示す図である。
【符号の説明】
【００９３】
１０１：ＣＰＵ
１０２：ＲＯＭ
１０３：ＲＡＭ
１０４：入力装置
１０５：表示装置
１０６：ハードディスク
１０６ａ：制御プログラム
１０７：リムーバブル外部記憶装置
１０８：ネットワーク装置
１０９：バス
２０１：処理データ設定部
２０２：データ処理定義設定部
２０３：ステータス情報設定部
２０４：情報処理装置認識部
２０５：情報処理装置選択部
２０６：情報送信部
２０７：情報受信部
２０８：データ処理定義取得部
２０９：ステータス情報取得部
２１０：処理データ取得部
２１１：リソース情報取得部
２１２：データ処理判定部
２１３：データ処理実行部
１４１１：処理機能情報取得部
【図１】
2007108954.tif 000003
【図２】
2007108954.tif 000004
【図３】
2007108954.tif 000005
【図４】
2007108954.tif 000006
【図５】
2007108954.tif 000007
【図６】
2007108954.tif 000008
【図７−１】
2007108954.tif 000009
【図７−２】
2007108954.tif 000010
【図８】
2007108954.tif 000011
【図９】
2007108954.tif 000012
【図１０】
2007108954.tif 000013
【図１１】
2007108954.tif 000014
【図１２】
2007108954.tif 000015
【図１３】
2007108954.tif 000016
【図１４】
2007108954.tif 000017
【図１５】
2007108954.tif 000018
【図１６】
2007108954.tif 000019
【図１７】
2007108954.tif 000020
【図１８】
2007108954.tif 000021