(57)【要約】【課題】処理を行う装置を選択する際に、ネットワーク資源を効率的に活用することが出来る装置を選択することが難しい、という課題を解決すること。【解決手段】装置の接続経路を示す接続経路情報を記憶する記憶部と、複数の装置の中から処理を実行する装置を選択する選択部と、を有し、選択部は、接続経路情報に基づいて、処理に用いるデータの格納場所と装置との間の経路が少なくとも一部共通する装置を、当該処理を実行する装置として選択する。【選択図】図１５
2018148477.tif 000002
【特許請求の範囲】
【請求項１】
装置の接続経路を示す接続経路情報を記憶する記憶部と、
複数の前記装置の中から処理を実行する前記装置を選択する選択部と、
を有し、
前記選択部は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
選択装置。
【請求項２】
請求項１に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
選択装置。
【請求項３】
請求項１又は２に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所から所定箇所まで接続経路が一致する複数の前記装置を、当該処理を実行する前記装置として選択する
選択装置。
【請求項４】
請求項１乃至３のいずれかに記載の選択装置であって、
前記選択部は、同一のデータを用いる複数の処理を同一の装置が実行するよう、処理を実行する前記装置を選択する
選択装置。
【請求項５】
請求項１乃至４のいずれかに記載の選択装置であって、
前記装置の移動情報を取得する移動情報取得部を有し、
前記選択部は、複数の前記装置のうちの前記移動情報取得部が取得した前記移動情報が所定の条件を満たす前記装置の中から、処理を実行する前記装置を選択する
選択装置。
【請求項６】
請求項５に記載の選択装置であって、
前記移動情報は、前記装置が通信する中継装置が変化した数を示す情報を含んでおり、
前記選択部は、前記移動情報に基づいて、通信する中継装置の変化数が予め定められた基準以下の前記装置の中から、処理を実行する前記装置を選択する
選択装置。
【請求項７】
装置の接続経路を示す接続経路情報を記憶する記憶部を有する選択装置により行われる装置選択方法であって、
装置の接続経路を示す接続経路情報を取得し、
取得した前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
装置選択方法。
【請求項８】
請求項７に記載の装置選択方法であって、
同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
装置選択方法。
【請求項９】
装置の接続経路を示す接続経路情報を記憶する記憶部を有する情報処理装置に、
複数の前記装置の中から処理を実行する前記装置を選択する選択手段を実現させ、
前記選択手段は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラム。
【請求項１０】
請求項９に記載のプログラムであって、
前記選択手段は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、選択装置、装置選択方法、プログラムに関し、特に、ネットワークを介して接続される複数の装置の中から処理を行う装置を選択する選択装置、装置選択方法、プログラムに関する。
【背景技術】
【０００２】
インターネットなどのネットワークを介して接続されたユーザからのリクエストに応じて様々な処理を行うクラウドコンピューティングなどが知られている。
【０００３】
上記のようなシステムでは、処理を行う装置をシステムに属する装置の中から選択する。このような処理を行う装置を選択する際に用いられる技術として、例えば、特許文献１がある。特許文献１には、サービス受け付け手段と、サービス選択方針取得手段と、候補機器選択手段と、サービス機器決定手段と、を有する情報処理装置が記載されている。例えば、候補機器選択手段は、サービス受け付け手段が受け付けたサービスを提供可能なサービス提供機器をサービス種類情報に基づき決定する。また、サービス機器決定手段は、候補機器選択手段が決定したサービス提供機器から１つ以上のサービス提供機器を、サービス選択方針取得手段が取得した選択方針に従って決定する。特許文献１によると、このような構成により、ユーザの目的に応じてクラウドサービスを動的に選択することが可能となる。
【０００４】
また、関連する技術としては、例えば、特許文献２がある。特許文献２には、起点ノードと宛先ノードとの接続を確立するための時間を短縮するための技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−５３８５３号公報
【特許文献２】特開平１０−７０５７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術の場合、ユーザから受け付けたサービスの種類に基づいて処理を行う装置を選択しており、依頼先の装置の状況などは考慮していない。そのため、例えば、同一のデータを用いる複数の処理がネットワーク経路の重複しない異なる装置により実行されることがあった。その結果、例えば、重複するデータをネットワーク経路の異なるそれぞれの装置に送信することが必要となり、トラフィックの増大につながるおそれがあった。換言すると、特許文献１に記載されている技術では、ネットワーク資源を効率的に活用できない、という問題が生じていた。
【０００７】
また、特許文献２においても、ネットワーク資源を効率的に活用するための方法は何ら開示されていない。そのため、特許文献１の技術と同様に、ネットワーク資源を効率的に活用できない、という問題が生じていた。
【０００８】
以上のように、処理を行う装置を選択する際に、ネットワーク資源を効率的に活用することが出来る装置を選択することが難しい、という問題が生じていた。
【０００９】
そこで、本発明の目的は、処理を行う装置を選択する際に、ネットワーク資源を効率的に活用することが出来る装置を選択することが難しい、という問題を解決する選択装置、装置選択方法、プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
かかる目的を達成するため本発明の一形態である選択装置は、
装置の接続経路を示す接続経路情報を記憶する記憶部と、
複数の前記装置の中から処理を実行する前記装置を選択する選択部と、
を有し、
前記選択部は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
という構成を採る。
【００１１】
また、本発明の他の形態である装置選択方法は、
装置の接続経路を示す接続経路情報を記憶する記憶部を有する選択装置により行われる装置選択方法であって、
装置の接続経路を示す接続経路情報を取得し、
取得した前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
という構成を採る。
【００１２】
また、本発明の他の形態であるプログラムは、
装置の接続経路を示す接続経路情報を記憶する記憶部を有する情報処理装置に、
複数の前記装置の中から処理を実行する前記装置を選択する選択手段を実現させ、
前記選択手段は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラムである。
【発明の効果】
【００１３】
本発明は、以上のように構成されることにより、処理を行う装置を選択する際に、ネットワーク資源を効率的に活用することが出来る装置を選択することが難しい、という問題を解決する選択装置、装置選択方法、プログラムを提供することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係る情報処理システムの全体の構成の一例を示す図である。
【図２】図１で示すシステム管理装置の構成の一例を示す図である。
【図３】図２で示すＳＬＡ一覧情報の一例を示す図である。
【図４】図２で示す装置構成情報、装置状態情報、装置信頼性情報を説明するための図である。
【図５】図２で示すネットワーク構成情報、ネットワーク状態情報、ネットワーク信頼性情報を説明するための図である。
【図６】リクエスト中のＳＬＡと信頼性情報とに基づいて決定される装置の一例を示す図である。
【図７】ネットワーク信頼性の低い装置に処理を実行させる場合の一例を示す図である。
【図８】装置信頼性の低い装置に処理を実行させる場合の一例を示す図である。
【図９】関連する処理の一例を示す図である。
【図１０】関連する処理を実行させる装置群を選択する場合の一例を示す図である。
【図１１】システム管理装置が処理を依頼する際の全体的な流れの一例を示すフローチャートである。
【図１２】図１１で示すステップＳ１０２の処理の詳細な一例を示すフローチャートである。
【図１３】システム管理装置が処理結果を返信する際の処理の一例を示すフローチャートである。
【図１４】本発明の第２の実施形態に係る情報処理システムの全体の構成の一例を示す図である。
【図１５】図１４で示す選択装置の構成の一例を示すブロック図である。
【図１６】図１５で示す選択手段が処理を実行する装置を選択する際の一例を説明するための図である。
【図１７】図１５で示す選択手段が処理を実行する装置を選択する際の他の一例を説明するための図である。
【図１８】選択装置により行われる装置選択方法の一例を示すフローチャートである。
【図１９】選択装置により行われる装置選択方法の一例を示すフローチャートである。
【図２０】本発明の第３の実施形態に係る選択装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
［第１の実施形態］
本発明の第１の実施形態を図１乃至図１３を参照して説明する。図１は、情報処理システム１の全体の構成の一例を示す図である。図２は、システム管理装置２の構成の一例を示す図である。図３は、ＳＬＡ一覧情報２４１の一例を示す図である。図４は、装置構成情報２４３、装置状態情報２４５、装置信頼性情報２４７を説明するための図である。図５は、ネットワーク構成情報２４４、ネットワーク状態情報２４６、ネットワーク信頼性情報２４８を説明するための図である。図６は、リクエスト中のＳＬＡと信頼性情報とに基づいて決定される装置の一例を示す図である。図７は、ネットワーク信頼性の低い装置に処理を実行させる場合の一例を示す図である。図８は、装置信頼性の低い装置に処理を実行させる場合の一例を示す図である。図９は、関連する処理の一例を示す図である。図１０は、関連する処理を実行させる装置群を選択する場合の一例を示す図である。図１１は、システム管理装置２が処理を依頼する際の全体的な流れの一例を示すフローチャートである。図１２は、図１１で示すステップＳ１０２の処理の詳細な一例を示すフローチャートである。図１３は、システム管理装置２が処理結果を返信する際の処理の一例を示すフローチャートである。
【００１６】
第１の実施形態では、クラウド利用端末３からのリクエストに応じた処理を、予め契約されたサービス利用者の過剰ＩＴ（information technology）リソースを活用して行うシステム管理装置２（選択装置）を有する情報処理システム１について説明する。後述するように、本実施形態におけるシステム管理装置２が活用するリソースの中には、個人が有するタブレットやスマートフォンなどの装置信頼性やネットワーク信頼性が低い装置も存在する。本実施形態におけるシステム管理装置２は、リクエスト中のＳＬＡ（Service Level Agreement）と、各リソースの信頼性情報と、に基づいて、処理を実行させる装置を決定する。また、システム管理装置２は、装置信頼性やネットワーク信頼性の低い装置に処理を実行させる場合などにおいて、同一の処理を複数の装置に実行させる。このように、リクエスト中のＳＬＡと各リソースの信頼性情報とに基づいて処理を実行させる装置を決定するとともに、必要に応じて処理を多重化することで、処理の信頼性を保ちつつ、様々な過剰ＩＴリソースを活用することが可能となる。
【００１７】
図１は、本実施形態における情報処理システム１の全体的な構成の一例を示している。図１を参照すると、本実施形態における情報処理システム１は、システム管理装置２と、クラウド利用端末３と、企業内ＤＣ（data center）４と、エッジサーバ５と、端末６と、を含んでいる。
【００１８】
図１で示すように、システム管理装置２とクラウド利用端末３とは、例えば、図示しない中継装置やネットワークなどを介して、互いに通信可能なよう接続されている。また、システム管理装置２と企業内ＤＣ４、システム管理装置２とエッジサーバ５、システム管理装置２と端末６とも同様に、図示しない中継装置やネットワークなどを介して、互いに通信可能なよう接続されている。システム管理装置２と端末６とは、エッジサーバ５を介して接続されても構わないし、エッジサーバ５を介さずに直接接続されても構わない。同様に、システム管理装置２と企業内ＤＣ４とは、エッジサーバ５を介して接続されても構わないし、エッジサーバ５を介さずに直接接続されても構わない。
【００１９】
なお、情報処理システム１が有するクラウド利用端末３の数や企業内ＤＣ４の数、エッジサーバ５の数、端末６の数は、図１で示す場合に限定されない。情報処理システム１は、任意の数のクラウド利用端末３、企業内ＤＣ４、エッジサーバ５、端末６を有することが出来る。
【００２０】
システム管理装置２は、クラウド利用端末３からリクエストを受信する。すると、システム管理装置２は、受信したリクエストに応じた処理を、企業内ＤＣ４、エッジサーバ５、端末６、などの過剰ＩＴリソースを活用して行う。後述するように、システム管理装置２は、リクエストに含まれるＳＬＡと、企業内ＤＣ４、エッジサーバ５、端末６、などの各装置の信頼性情報と、に基づいて、処理を実行させる装置を決定する。また、システム管理装置２は、ネットワーク信頼性や装置信頼性などが低い装置に処理を実行させる場合など、必要がある場合において、同一の処理を複数の処理で実行させる。
【００２１】
図２を参照すると、システム管理装置２は、主な構成要素として、通信Ｉ／Ｆ部２１と、操作入力部２２と、画面表示部２３と、記憶部２４と、演算処理部２５と、を有している。
【００２２】
通信Ｉ／Ｆ部２１は、専用のデータ通信回路からなり、通信回線を介して接続されたクラウド利用端末３や企業内ＤＣ４、エッジサーバ５、端末６との間でデータ通信を行う。
【００２３】
操作入力部２２は、キーボードやマウスなどの操作入力装置からなり、システム管理装置２を操作する操作者の操作を検出して演算処理部２５に出力する。
【００２４】
画面表示部２３は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などの画面表示装置からなる。画面表示部２３は、演算処理部２５からの指示に応じて各種情報を画面表示する。
【００２５】
記憶部２４は、ハードディスクやメモリなどの記憶装置である。記憶部２４は、演算処理部２５における各種処理に必要な処理情報やプログラム２４９を記憶する。プログラム２４９は、演算処理部２５に読み込まれて実行されることにより各種処理部を実現するプログラムである。プログラム２４９は、通信Ｉ／Ｆ部２１などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれ、記憶部２４に保存されている。記憶部２４で記憶される主な情報としては、例えば、ＳＬＡ一覧情報２４１、接続経路情報２４２、装置構成情報２４３、ネットワーク構成情報２４４、装置状態情報２４５、ネットワーク状態情報２４６、装置信頼性情報２４７、ネットワーク信頼性情報２３８などがある。
【００２６】
ＳＬＡ一覧情報２４１は、リクエスト制御手段２５１によりクラウド利用端末３に対して送信される情報である。ＳＬＡ一覧情報２４１は、例えば、図３で示すように、クラウド利用端末３が選択可能な複数のＳＬＡ（数は任意で構わない）を含んでいる。ＳＬＡ一覧情報２４１に含まれるＳＬＡは、例えば、ＳＬＡが高くなるほどシステム管理装置２に処理を依頼する際の料金が高くなるよう構成されている。
【００２７】
なお、ＳＬＡは、リクエストを送信するごと（又はリクエストに含まれる処理ごと）にクラウド利用端末３により選択されるのではなく、情報処理システム１を利用する顧客（つまり、クラウド利用端末３）ごとに固有のものであっても構わない。この場合、例えば、サービス利用者として新たにクラウド利用端末３を登録する際に、当該クラウド利用端末３とＳＬＡとを対応付けた情報を記憶部２４に格納しておくことになる。換言すると、記憶部２４は、ＳＬＡ一覧情報２４１とともに、又は、その代わりに、クラウド利用端末３を識別するための情報とＳＬＡとを対応付けた情報を記憶していても構わない。
【００２８】
接続経路情報２４２は、企業内ＤＣ４やエッジサーバ５、端末６などのネットワーク上の接続経路を示す情報である。接続経路情報２４２は、システム管理装置２と企業内ＤＣ４やエッジサーバ５、端末６との間の接続経路を示す情報を含んでいる。接続経路情報２４２には、端末６間や企業内ＤＣ４とエッジサーバ５間などの装置間の接続経路を示す情報を含んでも構わない。
【００２９】
接続経路情報２４２は、例えば、企業内ＤＣ４、エッジサーバ５、端末６などをサービス利用者として新たに登録する際に、当該装置や当該装置と通信を行う途上の図示しない中継装置などから必要な情報を取得することで生成される（上記情報は、既知の様々な手段を用いて収集して構わない）。接続経路情報２４２は、定期的に更新されても構わない。接続経路情報２４２は、処理制御手段２５４などにおいて利用される。
【００３０】
装置構成情報２４３は、企業内ＤＣ４やエッジサーバ５、端末６などの装置の構成を示す情報である。装置構成情報２４３には、例えば、装置の性能を示す構成情報とデータ信頼性を示す構成情報とが含まれている。装置の性能を示す構成情報としては、例えば、ＣＰＵ（Central Processing Unit）のコア数やクロック数、メモリ容量、ストレージ容量、ＧＰＵ（Graphics Processing Unit）の有無やアクセラレータの有無（汎用ＣＰＵ以外のアクセラレーション機能の有無）などがある。また、データ信頼性を示す構成情報としては、例えば、ストレージの種類（ＨＤＤ（Hard Disk Drive）であるか、ＳＤＤ（Solid State Drive）であるかなど）、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）化されているか否か、ＲＡＩＤ化されている場合のＲＡＩＤレベル、ミラーリングの有無などがある。このように、装置構成情報２４３は、短期的に変化しにくい静的な情報から構成されている。
【００３１】
装置構成情報２４３は、例えば、企業内ＤＣ４、エッジサーバ５、端末６などをサービス利用者として新たに登録する際に、当該装置から取得されて記憶部２４に格納されている。装置構成情報２４３は、例えば、信頼性判断手段２５３で利用される。
【００３２】
ネットワーク構成情報２４４は、企業内ＤＣ４やエッジサーバ５、端末６などが接続するネットワークの構成を示す情報である。ネットワーク構成情報２４４には、有線であるか、無線であるか、バンド幅やネットワークの太さ、バックボーンの太さ、レイテンシ、時間帯などによるレイテンシのバラツキ、などを示す情報が含まれている。このように、ネットワーク構成情報２４４は、短期的に変化しにくい静的な情報から構成されている。
【００３３】
ネットワーク構成情報２４４は、例えば、企業内ＤＣ４、エッジサーバ５、端末６などをサービス利用者として新たに登録する際に、当該装置や当該装置と通信を行う途上の図示しない中継装置などから必要な情報を取得することで取得され記憶部２４に格納されている。ネットワーク構成情報２４４は、例えば、信頼性判断手段２５３で利用される。
【００３４】
装置状態情報２４５は、企業内ＤＣ４やエッジサーバ５、端末６などの装置の状態を示す情報である。装置状態情報２４５には、例えば、ＣＰＵの稼動率やメモリの空き容量などを示す情報が含まれている。このように、装置状態情報２４５は、装置構成情報２４３とは異なり、例えば経時的な要素により変化する動的な情報から構成されている。
【００３５】
装置状態情報２４５は、例えば、状態情報取得手段２５２により定期的に取得され、記憶部２４に格納されている。装置状態情報２４５は、処理を依頼しようとするタイミングなどで状態情報取得手段２５２により取得されても構わない。装置状態情報２４５は、例えば、信頼性判断手段２５３で利用される。
【００３６】
なお、装置状態情報２４５には、定期的に取得された装置状態情報２４５に基づいて推定された装置状態の傾向を示す情報を含むことが出来る。装置状態の傾向を示す情報は、例えば、時間帯ごとのＣＰＵ稼働率（推定値）などであり、状態情報取得手段２５２により予め推定されている。
【００３７】
ネットワーク状態情報２４６は、企業内ＤＣ４やエッジサーバ５、端末６などが接続するネットワークの状態を示す情報である。ネットワーク状態情報２４６には、例えば、装置の接続の有無、ネットワークが輻輳状態にあるか、ネットワークに障害が発生しているか、Ｗｉ−Ｆｉ接続されているか、などを示す情報が含まれている。このように、ネットワーク状態情報２４６は、ネットワーク構成情報２４４とは異なり、例えば経時的な要素により変化する動的な情報から構成されている。
【００３８】
ネットワーク状態情報２４６は、例えば、状態情報取得手段２５２により定期的に取得され、記憶部２４に格納されている。ネットワーク状態情報２４６は、処理を依頼しようとするタイミングなどで状態情報取得手段２５２により取得されても構わない。ネットワーク状態情報２４６は、例えば、信頼性判断手段２５３で利用される。
【００３９】
なお、ネットワーク状態情報２４６には、装置状態情報２４５と同様に、定期的に取得されたネットワーク状態情報２４６に基づいて推定されたネットワーク状態の傾向を示す情報を含むことが出来る。ネットワーク状態の傾向を示す情報は、例えば、時間帯ごとの接続率（推定値）や輻輳・障害発生率（推定値）などであり、状態情報取得手段２５２により予め推定されている。
【００４０】
装置信頼性情報２４７は、図４で示すように、装置構成情報２４３と装置状態情報２４５とに基づいて、信頼性判断手段２５３により生成される情報である。装置信頼性情報２４７は、企業内ＤＣ４やエッジサーバ５、端末６などの装置の信頼性を示している。
【００４１】
装置信頼性情報２４７が示す装置信頼性は、処理の結果に誤りが生じる可能性などを示している。装置信頼性は、例えば、１〜１００までの値、１０段階表示など、複数段階で表現されている。例えば、装置信頼性は、ＣＰＵの性能が高い、ストレージに空き容量がある、ＲＡＩＤ化されている、など、装置の性能やデータ信頼性が高いほど高い値となるように信頼性判断手段２５３により生成される。また、装置信頼性情報２４７が示す装置信頼性は、ＣＰＵの稼動率が低い、メモリの空き容量がある、など装置が新たな処理を行うのに適しているほど高い値となるように信頼性判断手段２５３により生成される。このように、装置信頼性情報２４７は、装置構成情報２４３と装置状態情報２４５とに基づく値を有している。
【００４２】
なお、上記のように装置信頼性を生成した場合、装置信頼性が示す値が高いほど、処理結果に誤りが生じる可能性が低いことを示している。従って、後述するように、処理制御手段２５４は、要求されるＳＬＡが高いほど高い装置信頼性を有する装置に処理を実行させることになる。
【００４３】
ネットワーク信頼性情報２４８は、図５で示すように、ネットワーク構成情報２４４とネットワーク状態情報２４６とに基づいて、信頼性判断手段２５３により生成される情報である。ネットワーク信頼性情報２４８は、企業内ＤＣ４やエッジサーバ５、端末６などの装置が接続するネットワークの信頼性を示している。
【００４４】
ネットワーク信頼性情報２４８が示すネットワーク信頼性は、企業内ＤＣ４やエッジサーバ５、端末６などの装置との通信可能性（依頼した内容が装置に届くか、装置からの処理結果がシステム管理装置２に届くか）を示している。ネットワーク信頼性は、例えば、１〜１００までの値、１０段階表示など、複数段階で表現されている。例えば、ネットワーク信頼性は、バンド幅、ネットワークが太い、レイテンシが小さい、など、ネットワークの性能が良いほど高い値となるように信頼性判断手段２５３により生成される。また、ネットワーク信頼性は、ＬＴＥ（Long Term Evolution）接続でなくＷｉ−Ｆｉ接続されている、輻輳状態でない、障害が発生していない、などネットワークの状態が良いほど高い値となるように信頼性判断手段２５３により生成される。このように、ネットワーク信頼性情報２４８は、ネットワーク構成情報２４４とネットワーク状態情報２４６とに基づく値を有している。
【００４５】
なお、上記のようにネットワーク信頼性を生成した場合、ネットワーク信頼性が示す値が高いほど、送信した内容が問題なく相手方に届くことを示している。従って、後述するように、処理制御手段２５４は、要求されるＳＬＡが高いほど高いネットワーク信頼性を有する装置に処理を実行させることになる。
【００４６】
演算処理部２５は、ＭＰＵ（microprocessor）などのマイクロプロセッサとその周辺回路を有し、記憶部２４からプログラム２４９を読み込んで実行することにより、上記ハードウェアとプログラム２４９とを協働させて各種処理部を実現する。演算処理部２５で実現される主な処理部として、リクエスト制御手段２５１と、状態情報取得手段２５２（状態情報取得部）と、信頼性判断手段２５３と、処理制御手段２５４（選択部）と、処理結果採用手段２５５と、がある。
【００４７】
リクエスト制御手段２５１は、ＳＬＡを示す情報を含むリクエストをクラウド利用端末３から受信する。また、リクエスト制御手段２５１は、受信した情報を処理制御手段２５４に送信する。
【００４８】
例えば、リクエスト制御手段２５１は、通信Ｉ／Ｆ部２１を介して、図３で示すようなＳＬＡ一覧情報２４１をクラウド利用端末３に送信する。ＳＬＡ一覧情報２４１を受信したクラウド利用端末３では、当該クラウド利用端末３の利用者により、依頼する処理や料金に応じたＳＬＡが選択される。そして、クラウド利用端末３は、ＳＬＡを示す情報を含むリクエストをシステム管理装置２に送信する。その後、リクエスト制御手段２５１は、クラウド利用端末３からＳＬＡを示す情報を含むリクエストを受け取る。すると、リクエスト制御手段２５１は、受信した情報を処理制御手段２５４に送信する。
【００４９】
例えば、上記のような方法により、リクエスト制御手段２５１はクラウド利用端末３からＳＬＡを示す情報を受け取る。
【００５０】
なお、リクエスト制御手段２５１は、受信したリクエストを例えば記憶部２４や図示しない記憶装置などに格納して、一定期間（例えば、リクエストに対する回答がクラウド利用端末３に返信されるまで）管理するよう構成することが出来る。この場合、リクエスト制御手段２５１は、リクエストに対する回答の期日までの時間が所定の基準以下（例えば、一日以内など。任意で構わない）となった場合に、再度の処理を企業内ＤＣ４やエッジサーバ５、端末６などの装置に実行させるよう処理制御手段２５４に通知することが出来る。換言すると、リクエスト制御手段２５１は、処理に応じた返答の期日を示す情報に基づいて、再度の処理を実行するよう通知することが出来る。また、リクエスト制御手段２５１は、再度の処理を依頼する際に、ＳＬＡを所定分高くする（例えば、装置信頼性及びネットワーク信頼性が低い端末６に依頼するＳＬＡであった場合、再度の処理を行う際には、最初よりも高い装置信頼性及びネットワーク信頼性を有する装置（例えば、エッジサーバ５）に依頼するＳＬＡとするなど）よう構成しても構わない。これにより、より確実に処理を実行することが可能となる。
【００５１】
状態情報取得手段２５２は、例えば予め定められた周期ごとに、装置状態情報２４５やネットワーク状態情報２４６を取得する。そして、状態情報取得手段２５２は、取得した装置状態情報２４５やネットワーク状態情報２４６を、記憶部２４に格納する。
【００５２】
例えば、状態情報取得手段２５２は、企業内ＤＣ４やエッジサーバ５、端末６などの装置や当該装置と通信を行う途上の図示しない中継装置などと通信を行って、装置状態情報２４５やネットワーク状態情報２４６を取得する。本実施形態においては、状態情報取得手段２５２が装置状態情報２４５やネットワーク状態情報２４６を取得する際に用いる方法は、特に限定しない。状態情報取得手段２５２は、例えば、ＳＮＭＰ（Simple Network Management Protocol）やＩＣＭＰ（Internet Control Message Protocol）などを利用するなど、既知の様々な方法を用いて、装置状態情報２４５やネットワーク状態情報２４６を取得することが出来る。
【００５３】
また、状態情報取得手段２５２は、記憶部２４に格納された装置状態情報２４５やネットワーク状態情報２４６を用いて、装置状態の傾向を示す情報やネットワーク状態の傾向を示す情報を推定するよう構成することが出来る。状態情報取得手段２５２は、例えば、記憶部２４に格納された装置状態情報２４５が示す所定時間ごとのＣＰＵ稼働率に基づいて、任意の時間のＣＰＩ稼働率（推定値）や時間帯ごとのＣＰＵ稼働率（推定値）を推定する。また、状態情報取得手段２５２は、例えば、記憶部２４に格納されたネットワーク状態情報２４６が示す所定時間ごとの輻輳・障害の有無に基づいて、時間帯ごとの輻輳・障害発生率（推定値）を推定する。そして、状態情報取得手段２５２は、上記のような推定結果を示す情報を含む装置状態情報２４５やネットワーク状態情報２４６を記憶部２４に格納する。なお、状態情報取得手段２５２は、上記例示した以外の推定を行っても構わない。状態情報取得手段２５２は、記憶部２４に格納された装置状態情報２４５やネットワーク状態情報２４６に基づく様々な推定を行うことが出来る。
【００５４】
信頼性判断手段２５３は、記憶部２４に格納された装置構成情報２４３や装置状態情報２４５に基づいて装置信頼性を示す装置信頼性情報２４７を生成する。また、信頼性判断手段２５３は、記憶部２４に格納されたネットワーク構成情報２４４やネットワーク状態情報２４６に基づいて、ネットワーク信頼性を示すネットワーク信頼性情報２４８を生成する。そして、信頼性判断手段２５３は、生成した装置信頼性情報２４７やネットワーク信頼性情報２４８を記憶部２４に格納する。なお、本実施形態においては、信頼性判断手段２５３が装置信頼性情報２４７やネットワーク信頼性情報２４８を生成するタイミングについては、特に限定しない。信頼性判断手段２５３は、任意のタイミングで装置信頼性情報２４７やネットワーク信頼性情報２４８を生成することが出来る。
【００５５】
例えば、信頼性判断手段２５３は、ＣＰＵの性能が高い、ストレージに空き容量がある、ＲＡＩＤ化されている、など、装置構成情報２４３が示す装置の性能やデータ信頼性が高いほど高い値となるように、装置信頼性を生成する。また、信頼性判断手段２５３は、ＣＰＵの稼動率が低い、メモリの空き容量がある、など、装置状態情報２４５が示す装置の状態が良いほど高い値となるように、装置信頼性を生成する。さらに、信頼性判断手段２５３は、状態情報取得手段２５２が推定した装置状態の傾向を示す情報を加えて装置信頼性を生成することが出来る。
【００５６】
なお、本実施形態においては、信頼性判断手段２５３が装置構成情報２４３と装置状態情報２４５とのどちらを重視して装置信頼性を生成するかは特に限定しない。信頼性判断手段２５３は、装置構成情報２４３に基づく値と装置状態情報２４５に基づく値とを加算して装置信頼性を生成しても構わないし、装置構成情報２４３に基づく値と装置状態情報２４５に基づく値とを乗算して装置信頼性を生成しても構わない。また、信頼性判断手段２５３は、装置構成情報２４３に基づく値や装置状態情報２４５に基づく値に所定の重み付けを行った上で装置信頼性を算出しても構わない。
【００５７】
また、例えば、信頼性判断手段２５３は、バンド幅、ネットワークが太い、レイテンシが小さい、など、ネットワーク構成情報２４４が示すネットワークの性能が良いほど高い値となるように、ネットワーク信頼性を生成する。また、信頼性判断手段２５３は、ＬＴＥ（Long Term Evolution）接続でなくＷｉ−Ｆｉ接続されている、輻輳状態でない、障害が発生していない、など、ネットワーク状態情報２４６が示すネットワークの状態が良いほど高い値となるように、ネットワーク信頼性を生成する。さらに、信頼性判断手段２５３は、状態情報取得手段２５２が推定したネットワーク状態の傾向を示す情報を加えてネットワーク信頼性を生成することが出来る。
【００５８】
なお、本実施形態においては、信頼性判断手段２５３がネットワーク構成情報２４４とネットワーク状態情報２４６とのどちらを重視してネットワーク信頼性を生成するかは特に限定しない。信頼性判断手段２５３は、ネットワーク構成情報２４４に基づく値とネットワーク状態情報２４６に基づく値とを加算してネットワーク信頼性を生成しても構わないし、ネットワーク構成情報２４４に基づく値とネットワーク状態情報２４６に基づく値とを乗算してネットワーク信頼性を生成しても構わない。また、信頼性判断手段２５３は、ネットワーク構成情報２４４に基づく値やネットワーク状態情報２４６に基づく値に所定の重み付けを行った上でネットワーク信頼性を算出しても構わない。
【００５９】
処理制御手段２５４は、リクエスト制御手段２５１から受信した情報（つまり、クラウド利用端末３からの指示）と、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、クラウド利用端末３からのリクエストに応じた処理を実行させる装置を決定する。そして、処理制御手段２５４は決定した装置に対して、処理内容やリソース確保期間、結果の送付先を示す情報を送信する。また、処理制御手段２５４は、上記決定した装置がネットワーク信頼性や装置信頼性が低かった場合などにおいて、同一の処理を複数の処理で実行させる。
【００６０】
例えば、処理制御手段２５４は、クラウド利用端末３からのリクエストが一つの処理を要求しているなど関連する複数の処理を要求していない場合、リクエストに含まれるＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定する。例えば、処理制御手段２５４は、リクエストに含まれるＳＬＡに基づいて、装置信頼性の値とネットワーク信頼性の値の基準を算出する。そして、処理制御手段２５４は、ＳＬＡに基づく基準よりも高い装置信頼性とネットワーク信頼性を有する装置に処理を実行させる旨を決定する。例えば、図６で示すように、リクエストに含まれるＳＬＡが十分に高い場合、処理制御手段２５４は、高い装置信頼度と高いネットワーク信頼度を有する企業内ＤＣ４に処理を実行させる旨を決定する。また、リクエストに含まれるＳＬＡが中程度である場合、中程度の装置信頼度と中程度のネットワーク信頼度を有するエッジサーバ５に処理を実行させる旨を決定する。また、リクエストに含まれるＳＬＡが低い場合、処理制御手段２５４は、装置信頼度とネットワーク信頼度とが低い端末６に処理を実行させる旨を決定する。
【００６１】
このように、処理制御手段２５４は、装置信頼性情報２４７が示す装置信頼性と、ネットワーク信頼性情報２４８が示すネットワーク信頼性と、の両方が、リクエストが示すＳＬＡにより定まる基準を超えている装置に処理を実行させる旨を決定する。なお、同じ企業内ＤＣ４であっても、有するストレージの容量やＣＰＵの性能は企業内ＤＣ４ごとに異なっている。また、置かれているネットワーク環境も企業内ＤＣ４ごとに異なっている。そのため、企業内ＤＣ４ごとに装置信頼度やネットワーク信頼度は異なった値となる。従って、ＳＬＡ一覧情報２４１に複数の選択肢を含めることで、処理制御手段２５４は、よりきめの細かい制御を行うことが可能となる。具体的には、例えば、処理制御手段２５４は、リクエストが高ＳＬＡの中でもより高いＳＬＡを要求する場合、企業内ＤＣ４の中でもより装置信頼度やネットワーク信頼度の高い企業内ＤＣ４に処理をさせる、などの制御を行うことが出来る。これは、エッジサーバ５や端末６の場合も同様である。また、装置信頼度やネットワーク信頼度の低い企業内ＤＣ４よりも装置信頼度とネットワーク信頼度とが高いエッジサーバ５などが存在することも考えられる。高ＳＬＡの場合に企業内ＤＣ４を割り当て、中ＳＬＡの場合にエッジサーバ５を割り当て、低ＳＬＡの場合に端末６を割り当てるのはあくまで一例であり、処理制御手段２５４は、上記例示した場合に限定されず処理を実行させる装置を決定することが出来る。
【００６２】
また、上記決定の結果、予め定められた基準値よりもネットワーク信頼性の低いエッジサーバ５や端末６などの装置に処理を実行させることを決定したとする。この場合、依頼する処理の内容がエッジサーバ５や端末６などの装置に届かなかったり、エッジサーバ５や端末６などの装置から送信される処理結果がシステム管理装置２に届かなかったりすることが考えられる。そこで、上記のような場合、処理制御手段２５４は、同じ処理を他の装置（例えば、同様にネットワーク信頼性の低い装置）に実行させることを決定する（図７参照）。この際、処理制御手段２５４は、接続経路情報２４２を参照して、同一の処理を実行させる装置として、システム管理装置２との間のネットワーク経路が異なる装置を選択する。このように異なる経路の装置に同一の処理を実行させることで、同一の処理を実行させる複数の装置の全てに情報が届かない可能性を低減させることが出来る。
【００６３】
なお、処理制御手段２５４が処理を多重化（冗長化）する数は、任意に設定して構わない。例えば、処理制御手段２５４は、ネットワーク信頼性の低い装置に処理を実行させる場合、常に１つ、又は、２つの、他の装置に同一の処理を実行させても構わない。処理制御手段２５４は、ネットワーク信頼性の低さに応じて多重化する数を制御しても構わない。例えば、処理制御手段２５４は、ネットワーク信頼性が低くなるほど、より多くの装置に処理を実行させるよう構成しても構わない。
【００６４】
また、上記決定の結果、予め定められた基準値（ネットワーク信頼性を見る場合と同じ値でも構わないし、異なる値でも構わない）よりも装置信頼性の低いエッジサーバ５や端末６などの装置に処理を実行させることを決定したとする。この場合、依頼した処理の結果が誤っている可能性があることになる。そこで、上記のような場合、処理制御手段２５４は、同じ処理を他の装置（例えば、同様に装置信頼性の低い装置）に実行させることを決定する（図８参照）。この際、処理制御手段２５４は、接続経路情報２４２を参照して、同一の処理を実行させる装置として、依頼内容（データ）の格納場所であるシステム管理装置２との間のネットワーク経路が出来る限り同一な装置（例えば、同一の基地局や同一の中継装置を通過する装置、論理位置が近い装置など）を選択することが望ましい。このようにネットワーク経路を少なくとも一部一致させることで、重複するデータを異なる経路に複数伝送させる必要がなくなり、トラフィックの増大を抑制することが出来る。つまり、ネットワーク資源を効率的に活用することが可能となる。
【００６５】
なお、処理制御手段２５４が処理を多重化する数は、ネットワーク信頼性が低い場合と同様に、任意に設定して構わない。例えば、処理制御手段２５４は、装置信頼性の低い装置に処理を実行させる場合、常に１つ、又は、２つの、他の装置に同一の処理を実行させても構わない。処理制御手段２５４は、装置信頼性の低さに応じて多重化する数を制御しても構わない。例えば、処理制御手段２５４は、装置信頼性が低くなるほど、より多くの装置に処理を実行させるよう構成しても構わない。
【００６６】
また、例えば、図９で示すように、クラウド利用端末３からのリクエストが関連する複数の処理を要求している場合がある。図９を参照すると、関連する処理としては、例えば、収集／一次加工処理、収集／一次加工処理の結果を利用する特徴量抽出処理、特徴量抽出処理の結果を利用するディープランニング処理、などがある。換言すると、クラウド利用端末３からのリクエストが、第１の処理と第１の処理の結果を利用する第２の処理とを含む関連する複数の処理を要求している場合がある。
【００６７】
このように関連する複数の処理を要求している場合、処理制御手段２５４は、リクエストに含まれるＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置群を決定する（図１０参照）。
【００６８】
例えば、図９で示す関連する処理の場合、ディープランニングにおいて、演算性能の高い装置が必要となる。そのため、比較的高いＳＬＡが設定されているとする。一方で、収集／一次加工や特徴量抽出では低いＳＬＡが設定されているとする。この場合、処理制御手段２５４は、まず、比較的高いＳＬＡにより定まる基準よりも高い装置信頼度及びネットワーク信頼度を有するエッジサーバ５を、ディープランニングを実行する装置として決定する。つまり、処理制御手段２５４は、必要な装置信頼度及びネットワーク信頼度が高いなど、情報処理システム１に含まれる数が少ない（より選択肢の少ない）装置を最初に決定する。続いて、処理制御手段２５４は、接続経路情報２４２などを参照して、決定したエッジサーバ５と装置間の論理的又は物理的な距離が近い端末６を収集／一次加工や特徴量抽出を行う装置として決定する。又は、処理制御手段２５４は、決定したエッジサーバ５との間に確保可能な帯域等に応じて、収集／一次加工や特徴量抽出を行う装置を決定する。このように、処理制御手段２５４は、所定の装置を選択した後、当該選択した装置との間の距離が短いなど接続経路が所定の条件を満たす装置を選択することで、関連する処理を実行する装置群を決定する。このように装置群を決定することで、例えば、収集／一次加工を担当する装置から特徴量を抽出する装置まで処理の結果を送信する際に、データを伝送する距離が短くなり、トラフィックの増大を抑制することが可能となる。
【００６９】
また、上記決定した装置群に予め定められた基準値よりもネットワーク信頼度が低い装置が含まれる場合、処理制御手段２５４は、ネットワーク経路が異なる他の装置群に対しても同一の処理を実行させることを決定する。このように、処理制御手段２５４は、装置群単位で処理の多重化を行う。これにより、トラフィックの増大を抑制しつつ確実に処理を実行させることが可能となる。なお、処理制御手段２５４は、ネットワーク信頼度が低い装置が担当する処理のみを多重化するよう構成しても構わない。処理を多重化する際の流れは、図７を参照して説明した場合と同様のため省略する。また、上記基準値は、関連する処理で無い場合と同一の基準値であっても構わないし、異なる基準値であっても構わない。
【００７０】
また、上記決定した装置群に予め定められた基準値よりも装置信頼度が低い装置が含まれる場合、処理制御手段２５４は、（例えば、ネットワーク経路が出来る限り一致する）他の装置群に対しても同一の処理を実行させることを決定する。このように、処理制御手段２５４は、ネットワーク信頼度が低い場合と同様に、装置群単位で処理の多重化を行う。なお、処理制御手段２５４は、装置信頼度が低い装置が担当する処理のみを多重化するよう構成しても構わない。処理を多重化する際の流れは、図８を参照して説明した場合と同様のため省略する。また、上記基準値は、関連する処理で無い場合と同一の基準値であっても構わないし、異なる基準値であっても構わない。
【００７１】
なお、処理の多重化を行う場合、処理制御手段２５４は、結果の送付先としてシステム管理装置２を指定する。一方で、処理の多重化を行わない場合、処理制御手段２５４は、結果の送付先としてクラウド利用端末３を指定しても構わない。つまり、処理制御手段２５４は、システム管理装置２を介さずに処理の結果を送信するよう構成しても構わない。
【００７２】
処理結果採用手段２５５は、処理の依頼先の装置から処理結果を受信する。すると、処理結果採用手段２５５は、受信した処理結果を処理依頼元のクラウド利用端末３に対して送信する。また、処理結果採用手段２５５は、受信した処理結果が多重化した処理に応じた処理結果であった場合、必要に応じた処理を行った上で処理結果を送信するよう構成することが出来る。
【００７３】
例えば、受信した処理結果が多重化を行っていない処理に応じた処理結果であった場合、処理結果採用手段２５５は、受け取った処理結果をそのままクラウド利用端末３に対して送信する。一方で、受信した処理結果が多重化した処理に応じた処理結果であった場合、処理結果採用手段２５５は、処理の多重化が何に起因して行われていたかに応じた処理を行う。例えば、処理結果採用手段２５５は、ネットワーク信頼性が低いために処理の多重化が行われていた場合と、装置信頼性が低いために処理の多重化が行われていた場合と、のそれぞれの場合に応じた処理を行う。
【００７４】
例えば、ネットワーク信頼性が低いために処理の多重化が行われていた場合、処理結果採用手段２５５は、最も早く受信した処理結果をクラウド利用端末３に対して送信する。一方で、装置信頼性が低いために処理の多重化が行われていた場合、処理結果採用手段２５５は、例えば、各依頼先の装置からの処理結果を比較確認する。そして、多数決などにより採用する処理結果を選択し、選択した処理結果をクラウド利用端末３に対して送信する。
【００７５】
このように、処理結果採用手段２５５は、多重化された処理に対する処理結果であるか否か、多重化した処理を実行した利用、に応じた処理を実行する。なお、処理結果採用手段２５５は、上記例示した以外の方法で処理結果の送信や採用を行っても構わない。例えば、処理結果採用手段２５５は、ネットワーク信頼性が低いために処理の多重化が行われていた場合であっても、最初に処理結果を受信した後、所定期間他の装置からの処理結果を待つよう構成しても構わない。この場合、処理結果採用手段２５５は、所定期間内に受信した処理結果の比較結果をクラウド利用端末３に送信するよう構成することが出来る。装置信頼性が低いために処理の多重化が行われていた場合も同様に、最初に処理結果を受信した後所定期間だけ他の装置からの処理結果を待つよう構成しても構わない。
【００７６】
以上が、システム管理装置２の構成の一例である。
【００７７】
なお、図２では、システム管理装置２が１台の情報処理装置により構成されている例を示している。しかしながら、システム管理装置２は、複数台の情報処理装置により構成されていても構わない。換言すると、システム管理装置２は、リクエスト制御手段２５１としての機能を有する情報処理装置と、状態情報取得手段２５２としての機能を有する情報処理装置と、など、一つ又は複数の機能を有する複数の情報処理装置から構成されていても構わない。
【００７８】
クラウド利用端末３は、システム管理装置２に対してリクエストを送信する情報処理装置である。クラウド利用端末３は、例えば、パーソナルコンピュータやタブレット、スマートフォンなどである。本実施形態においては、クラウド利用端末３の構成は特に限定しない。
【００７９】
企業内ＤＣ４は、オンプレ環境にあるデータセンターであり、ＣＰＵなどの演算装置とストレージ装置とを有している。企業内ＤＣ４の装置信頼性やネットワーク信頼性は、エッジサーバ５や端末６と比較して、比較的高いことが多い。
【００８０】
エッジサーバ５は、クラウドやシステム管理装置２と端末６との間に存在するサーバ装置などである。エッジサーバ５は、単体のサーバ装置から構成されていても構わないし、複数のサーバ装置から構成されエッジコンピューティングなどと呼ばれる処理を行う装置群であっても構わない。なお、エッジサーバ５は、フォグサーバと呼ばれることもある。エッジサーバ５は、フォグコンピューティングを行う装置群であっても構わない。
【００８１】
端末６は、例えば、個人が有するパーソナルコンピュータやタブレット、スマートフォンなどである。端末６の装置信頼性やネットワーク信頼性は、企業内ＤＣ４やエッジサーバ５と比較して、比較的低いことが多い。一方で、端末６は、企業内ＤＣ４やエッジサーバ５と比較して数が多い。本実施形態によると、装置信頼性やネットワーク信頼性に応じて処理を多重化するため、処理遂行の信頼性を損ねることなく、数の多い端末６の過剰ＩＴリソースを有効活用することが可能となる。
【００８２】
なお、本実施形態においては、企業内ＤＣ４やエッジサーバ５、端末６の具体的な構成については、クラウド利用端末３と同様に特に限定しない。
【００８３】
続いて、図１１乃至図１３を参照して、システム管理装置２の処理の流れの一例について説明する。まず、図１１を参照して、システム管理装置２が処理を依頼する際の全体的な流れの一例について説明する。
【００８４】
図１１を参照すると、システム管理装置２のリクエスト制御手段２５１は、クラウド利用端末３からリクエストを受信する（ステップＳ１０１）。すると、リクエスト制御手段２５１は、受信した情報を処理制御手段２５４に送信する。なお、システム管理装置２が受信するリクエストには、ＳＬＡを示す情報が含まれている。
【００８５】
システム管理装置２の処理制御手段２５４は、リクエスト中のＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定する。また、処理制御手段２５４は、上記決定した装置がネットワーク信頼性や装置信頼性が低かった場合、同一の処理を複数の処理で実行させる。このように、処理制御手段２５４は、リクエスト中のＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定するとともに、処理の多重化数を決定する（ステップＳ１０２）。
【００８６】
処理制御手段２５４は、決定した装置に対して、必要な情報を送信する（ステップＳ１０３）。例えば、処理制御手段２５４は、処理内容やリソース確保期間、結果の送付先を示す情報を送信する。なお、処理を多重化することを決定していた場合、処理制御手段２５４は、決定したそれぞれの装置に対して、必要な情報を送信することになる。
【００８７】
以上が、システム管理装置２が処理を依頼する際の全体的な流れの一例である。続いて、図１２を参照して、ステップＳ１０２の処理についてより詳細に説明する。
【００８８】
図１２を参照すると、処理制御手段２５４は、クラウド利用端末３からのリクエストが関連する複数の処理を要求しているかいないか確認する（ステップＳ２０１）。
【００８９】
関連する複数の処理を要求していない場合（ステップＳ２０１、Ｎｏ）、処理制御手段２５４は、リクエストに含まれるＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定する（ステップＳ２０２）。例えば、処理制御手段２５４は、リクエストに含まれるＳＬＡに基づいて、装置信頼性の値とネットワーク信頼性の値の基準を算出する。そして、処理制御手段２５４は、ＳＬＡに基づく基準よりも高い装置信頼性とネットワーク信頼性を有する装置に処理を実行させる旨を決定する。
【００９０】
続いて、処理制御手段２５４は、予め定められた基準値よりも決定した装置のネットワーク信頼性が低いか否か確認する（ステップＳ２０２）。
【００９１】
基準値よりもネットワーク信頼性が低い場合（ステップＳ２０２、Ｙｅｓ）、処理制御手段２５４は、同じ処理を他の装置（例えば、同様にネットワーク信頼性の低い装置）に実行させることを決定する（ステップＳ２０３）。この際、処理制御手段２５４は、接続経路情報２４２を参照して、同一の処理を実行させる装置として、システム管理装置２との間のネットワーク経路が異なる装置を選択する。なお、処理制御手段２５４が処理を多重化（冗長化）する数は、任意に設定して構わない。
【００９２】
一方で、ネットワーク信頼性が基準値以上である場合（ステップＳ２０２、Ｎｏ）、処理制御手段２５４は、基準値よりも装置信頼性が低いか否か確認する（ステップＳ２０４）。
【００９３】
基準値よりも装置信頼性が低い場合（ステップＳ２０４、Ｙｅｓ）、処理制御手段２５４は、同じ処理を他の装置（例えば、同様に装置信頼性の低い装置）に実行させることを決定する（ステップＳ２０５）。この際、処理制御手段２５４は、接続経路情報２４２を参照して、同一の処理を実行させる装置として、依頼内容（データ）の格納場所であるシステム管理装置２との間のネットワーク経路が出来る限り同一な装置（例えば、同一の基地局や同一の中継装置を通過する装置、論理位置が近い装置など）を選択する。なお、処理制御手段２５４が処理を多重化（冗長化）する数は、任意に設定して構わない。
【００９４】
一方で、装置信頼性が基準値以上である場合（ステップＳ２０４、Ｎｏ）、処理制御手段２５４は、追加の装置決定を行わない。
【００９５】
その後、処理制御手段２５４は、決定した装置に必要な情報を送信することになる（図１１のステップＳ１０３）。
【００９６】
また、関連する複数の処理を要求している場合（ステップＳ２０１、Ｙｅｓ）、処理制御手段２５４は、リクエストに含まれるＳＬＡと、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置群を決定する（ステップＳ２０６）。例えば、処理制御手段２５４は、必要な装置信頼度及びネットワーク信頼度が高いなど、情報処理システム１に含まれる数が少ない（より選択肢の少ない）装置を最初に決定する。続いて、処理制御手段２５４は、接続経路情報２４２などを参照して、当該選択した装置との間の距離が短いなど接続経路が所定の条件を満たす装置を選択する。例えば、このような処理により、処理制御手段２５４は、処理を実行させる装置群を決定する。
【００９７】
続いて、処理制御手段２５４は、決定した装置群に予め定められた基準値よりもネットワーク信頼性が低い装置が含まれているか否か確認する（ステップＳ２０７）。
【００９８】
基準値よりもネットワーク信頼性が低い装置が含まれている場合（ステップＳ２０７、Ｙｅｓ）、処理制御手段２５４は、ネットワーク経路が異なる他の装置群に対しても同一の処理を実行させることを決定する（ステップＳ２０８）。なお、処理制御手段２５４が処理を多重化（冗長化）する数は、任意に設定して構わない。
【００９９】
一方で、基準値よりもネットワーク信頼性が低い装置が含まれていない場合（ステップＳ２０７、Ｎｏ）、処理制御手段２５４は、決定した装置群に予め定められた基準値よりも装置信頼性が低い装置が含まれているか否か確認する（ステップＳ２０９）。
【０１００】
基準値よりも装置信頼性が低い装置が含まれている場合（ステップＳ２０９、Ｙｅｓ）、処理制御手段２５４は、ネットワーク経路が出来る限り一致する他の装置群に対しても同一の処理を実行させることを決定する（ステップＳ２１０）。なお、処理制御手段２５４が処理を多重化（冗長化）する数は、任意に設定して構わない。
【０１０１】
一方で、基準値よりも装置信頼性が低い装置が含まれていない場合（ステップＳ２０９、Ｎｏ）、処理制御手段２５４は、追加の装置群決定を行わない。
【０１０２】
その後、処理制御手段２５４は、決定した装置群に含まれるそれぞれの装置に必要な情報を送信することになる（図１１のステップＳ１０３）。
【０１０３】
以上が、図１１で示すステップＳ１０２の処理の詳細な一例である。続いて、図１３を参照して、システム管理装置２が処理結果を返信する際の処理の一例について説明する。
【０１０４】
図１３を参照すると、システム管理装置２の処理結果採用手段２５５は、処理の依頼先の装置から処理結果を受信する（ステップＳ３０１）。
【０１０５】
処理結果採用手段２５５は、受信した処理結果が多重化した処理に対する処理結果であるか否か確認する（ステップＳ３０２）。
【０１０６】
受信した処理結果が多重化した処理に応じた処理結果でなかった場合（ステップＳ３０２、Ｎｏ）、処理結果採用手段２５５は、受け取った処理結果をそのままクラウド利用端末３に対して送信する（ステップＳ３０３）。一方で、受信した処理結果が多重化した処理に応じた処理結果であった場合（ステップＳ３０２、Ｙｅｓ）、処理結果採用手段２５５は、処理の多重化が何に起因して行われていたかに応じた処理を行う（ステップＳ３０４）。
【０１０７】
例えば、ネットワーク信頼性が低いために処理の多重化が行われていた場合（ステップＳ３０４、ネットワーク信頼性）、処理結果採用手段２５５は、最も早く受信した処理結果をクラウド利用端末３に対して送信する（ステップＳ３０５）。一方で、装置信頼性が低いために処理の多重化が行われていた場合（ステップＳ３０４、装置信頼性）、処理結果採用手段２５５は、例えば、各依頼先の装置からの処理結果を比較確認する（ステップＳ３０６）。そして、多数決などにより採用する処理結果を選択し、選択した処理結果をクラウド利用端末３に対して送信する（ステップＳ３０７）。
【０１０８】
以上が、システム管理装置２が処理結果を返信する際の処理の一例である。
【０１０９】
このように、本実施形態におけるシステム管理装置２は、信頼性判断手段２５３と、処理制御手段２５４と、を有している。このような構成により、システム管理装置２の処理制御手段２５４は、リクエスト中のＳＬＡと、信頼性判断手段２５３が生成した装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定することが出来る。また、処理制御手段２５４は、装置信頼性やネットワーク信頼性の低い装置に処理を実行させる場合などにおいて、同一の処理を複数の装置に実行させることが出来る。このように、リクエスト中のＳＬＡと各リソースの信頼性情報とに基づいて処理を実行させる装置を決定するとともに、必要に応じて処理を多重化することで、処理の信頼性を保ちつつ、様々な過剰ＩＴリソースを活用することが可能となる。その結果、リクエストに応じた処理を行う際に利用可能なリソースを、当該リソースの状況などに応じて適切に使い分けることが可能となる。
【０１１０】
また、本実施形態におけるシステム管理装置２は、処理を実行させる装置に、結果の送付先を示す情報を送信するよう構成されている。このような構成より、処理の結果がシステム管理装置２に集中することを抑制することが可能となる。
【０１１１】
なお、本実施形態では、処理制御手段２５４は、装置構成情報２４３と装置状態情報２４５とに基づく装置信頼性情報２４７と、ネットワーク構成情報２４４とネットワーク状態情報２４６とに基づくネットワーク信頼性情報２４８と、に基づいて、処理を実行させる装置を決定するとした。しかしながら、処理制御手段２５４は、装置信頼性情報２４７と、ネットワーク信頼性情報２４８と、の少なくとも一方のみを用いて処理を実行させる装置を決定するよう構成しても構わない。また、処理制御手段２５４は、装置信頼性情報２４７やネットワーク信頼性情報２４８を生成せずに、装置構成情報２４３、ネットワーク構成情報２４４、の少なくとも一方のみを用いて処理を実行する装置を決定するよう構成しても構わない。この場合、処理制御手段２５４は、装置構成情報２４３やネットワーク構成情報２４４に基づいて、処理を多重化するか否か決定することになる。また、処理制御手段２５４は、装置状態情報２４５、ネットワーク状態情報２４６、の少なくとも一方のみを用いて処理を実行する装置を決定するよう構成しても構わない。この場合、処理制御手段２５４は、装置状態情報２４５やネットワーク状態情報２４６に基づいて、処理を多重化するか否か決定することになる。
【０１１２】
また、本実施形態で例示した装置構成情報２４３、ネットワーク構成情報２４４、装置状態情報２４５、ネットワーク状態情報２４６は、あくまで一例である。装置構成情報２４３、ネットワーク構成情報２４４、装置状態情報２４５、ネットワーク状態情報２４６は、本実施形態で例示した一部の情報のみ含まれていても構わないし、本実施形態で例示した以外の情報が含まれていても構わない。
【０１１３】
また、端末６には、個人のタブレットやスマートフォンなどが含まれ得る。そのため、端末６は移動していることも想定される。そこで、状態情報取得手段２５２（移動情報取得部）は、例えば、端末６の移動状態を示す情報を取得する（例えば、通信する基地局などの中継装置の変化や変化数を検知する）よう構成しても構わない。また、端末６の移動により、ネットワークの状態などが大きく変動することも想定される。そのため、処理制御手段２５４は、移動している端末６（又は、所定期間（任意で構わない）内の中継装置の変化数が予め定められた基準より多い端末６）を決定する装置の候補から外すよう構成しても構わない。換言すると、処理制御手段２５４は、通信する中継装置の変化数が予め定められた基準以下の端末６の中から、処理を実行する端末６を選択するよう構成することが出来る。なお、信頼性判断手段２５３が装置の移動状態を示す情報を加味してネットワーク信頼性情報２４８を生成するよう構成しても構わない。
【０１１４】
［第２の実施形態］
次に、図１４乃至図１９を参照して、本発明の第２の実施形態について説明する。図１４は、情報処理システム７００の全体の構成の一例を示す図である。図１５は、選択装置７の構成の一例を示すブロック図である。図１６、図１７は、選択手段７５２が処理を実行する装置を選択する際の一例を説明するための図である。図１８、図１９は、選択装置７により行われる装置選択方法の一例を示すフローチャートである。
【０１１５】
本発明の第２の実施形態では、第１の実施形態で説明したクラウド利用端末３などの外部装置からのリクエストに応じて、処理を実行させる装置である処理実行装置８２を選択する選択装置７を有する情報処理システム７００について説明する。後述するように、選択装置７は、同一のデータを用いる処理を複数の処理実行装置８２に実行させる場合、データの格納場所であるデータ格納装置８１と処理を実行する複数の処理実行装置８２との間の接続経路（データの流通経路）が少なくとも一部共通するように、処理を実行する複数の装置を選択する。また、選択装置７は、同じデータを用いる処理を同一の処理実行装置８２が実行するように選択することで、データ格納装置８１と処理を実行する処理実行装置８２との間の接続経路（データの流通経路）を少なくとも一部共通させる。このようにデータ格納装置８１と処理実行装置８２との間の接続経路に基づいて処理を実行する処理実行装置８２を選択することで、重複するデータを伝送する必要がなくなり、トラフィックの増大を抑制することが出来る。つまり、ネットワーク資源を効率的に活用することが可能となる。
【０１１６】
なお、本実施形態においては、主に、選択装置７の構成と、選択装置７により行われる処理について説明する。本実施形態で説明する選択装置７は、第１の実施形態で説明したシステム管理装置２が処理依頼先の装置を決定する際に活用することも出来るし、システム管理装置２とは別の装置として活用することも出来る。換言すると、選択装置７は、装置信頼性情報２４７やネットワーク信頼性情報２４８などを用いないシステムにおいても、処理を実行する装置を選択する装置として活用可能である。
【０１１７】
図１４を参照すると、本実施形態における情報処理システム７００は、選択装置７と、処理に必要なデータ等を格納するデータ格納装置８１と、選択装置７により選択されて処理を実行する処理実行装置８２と、を少なくとも含んでいる。なお、本実施形態においては、データ格納装置８１と処理実行装置８２の構成については、特に限定しない。
【０１１８】
選択装置７は、データ格納装置８１や処理実行装置８２と互いに通信可能なよう図示しない中継装置などを介して接続されている。また、データ格納装置８１は、少なくとも一部のデータ格納装置８１や処理実行装置８２と、互いに通信可能なよう接続されている。処理実行装置８２も同様に、少なくとも一部のデータ格納装置８１や処理実行装置８２と、互いに通信可能なよう接続されている。
【０１１９】
なお、情報処理システム７００が有するデータ格納装置８１や処理実行装置８２の数は、図１４で示す場合に限定されない。情報処理システム７００は、任意の数のデータ格納装置８１や処理実行装置８２を有することが出来る。また、選択装置７は、１台の情報処理装置から構成されても構わないし、複数台の情報処理装置から構成されても構わない。
【０１２０】
選択装置７は、クラウド利用端末などの外部装置からのリクエストに応じて、処理を実行する処理実行装置８２を選択する。例えば、選択装置７は、同一のデータを用いる処理を複数の処理実行装置８２に実行させる場合、データの格納場所であるデータ格納装置８１と処理を実行する複数の処理実行装置８２との間の接続経路が少なくとも一部共通するように、処理を実行する複数の処理実行装置８２を選択する。また、選択装置７は、同じデータを用いる処理を同一の装置が実行するように処理実行装置８２を選択することで、データ格納装置８１と処理を実行する処理実行装置８２との間の接続経路を少なくとも一部共通させる。
【０１２１】
図１５を参照すると、選択装置７は、主な構成要素として、通信Ｉ／Ｆ部７１と、操作入力部７２と、画面表示部７３と、記憶部７４と、演算処理部７５と、を有している。
【０１２２】
通信Ｉ／Ｆ部７１と操作入力部７２と画面表示部７３との構成は、第１の実施形態で説明した通信Ｉ／Ｆ部２１、操作入力部２２、画面表示部２３の構成と同一である。そのため、詳細な説明は省略する。
【０１２３】
記憶部７４は、ハードディスクやメモリなどの記憶装置である。記憶部７４は、演算処理部７５における各種処理に必要な情報やプログラム７４３を記憶する。プログラム７４３は、演算処理部７５に読み込まれて実行されることにより各種処理部を実現するプログラムである。プログラム７４３は、通信Ｉ／Ｆ部７１などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれ、記憶部７４に保存されている。記憶部７４で記憶される主な情報としては、例えば、接続経路情報７４１と、処理情報７４２と、などがある。
【０１２４】
接続経路情報７４１は、データ格納装置８１と処理実行装置８２とのネットワーク上の接続経路を示す情報である。接続経路情報７４１は、データ格納装置８１と処理実行装置８２との間の接続経路を示す情報を含んでいる。
【０１２５】
接続経路情報７４１は、例えば、データ格納装置８１や処理実行装置８２、当該データ格納装置８１や処理実行装置８２と通信を行う途上の図示しない中継装置などから必要な情報を予め取得することで生成されている。なお、上記情報は、既知の様々な手段を用いて収集して構わない。また、接続経路情報７４１は、定期的に更新されても構わない。接続経路情報７４１は、選択手段７５２において利用される。
【０１２６】
処理情報７４２は、過去に選択手段７５２が処理を依頼した際の情報を示している。処理情報７４２には、例えば、依頼先の処理実行装置８２を識別するための情報と、依頼した処理、依頼した処理を実行する際に必要となるデータを識別するための情報、などが含まれている。処理情報７４２は、例えば、選択手段７５２が処理を実行する処理実行装置８２を選択した際などに、選択手段７５２により格納される。処理情報７４２に格納されている情報は、例えば、処理実行装置８２が処理に用いたデータを削除するタイミングで削除されるよう構成しても構わない。
【０１２７】
演算処理部７５は、ＭＰＵ（microprocessor）などのマイクロプロセッサとその周辺回路を有し、記憶部７４からプログラム７４３を読み込んで実行することにより、上記ハードウェアとプログラム７４３とを協働させて各種処理部を実現する。演算処理部７５で実現される主な処理部として、移動情報取得手段７５１と、選択手段７５２（選択部）と、指示手段７５３と、などがある。
【０１２８】
移動情報取得手段７５１は、例えば予め定められた周期ごとや装置選択の必要が生じるタイミングなどにおいて、処理実行装置８２の移動情報を取得する。そして、移動情報取得手段７５１は、取得した移動情報を選択手段７５２に送信する。移動情報取得手段７５１は、取得した移動情報を記憶部７４に格納しても構わない。
【０１２９】
例えば、移動情報取得手段７５１は、処理実行装置８２や当該処理実行装置８２と通信を行う途上の図示しない中継装置などと通信を行って、処理実行装置８２が移動しているか否か、移動している際の移動状態などを示す移動情報を取得する。例えば、移動情報は、処理実行装置８２が通信を行う中継装置の変化、変化数などを示している。なお、本実施形態においては、移動情報取得手段７５１が移動情報を取得する際に用いる方法は、特に限定しない。移動情報取得手段７５１は、例えば、処理実行装置８２と通信する基地局などの中継装置の変化などを検知することで移動情報を取得するなど、既知の様々な方法を用いて、移動情報を取得することが出来る。
【０１３０】
選択手段７５２は、図示しないクラウド利用端末などからのリクエストに基づいて、処理実行装置８２の中から処理を実行する装置を選択する。そして、選択手段７５２は、選択した結果を示す情報を指示手段７５３に送信する。
【０１３１】
例えば、処理を冗長化する場合や処理の内容などによっては、同一のデータを用いる同一又は異なる処理を複数の処理実行装置８２に実行させるような場合がある。このような場合、選択手段７５２は、接続経路情報７４１を参照する。そして、選択手段７５２は、参照した接続経路情報７４１に基づいて、データ格納装置８１とそれぞれの処理を実行する複数の処理実行装置８２との間の接続経路が少なくとも一部共通するように、処理を実行する複数の処理実行装置８２を選択する。具体的には、例えば、選択手段７５２は、データ格納装置８１から中継装置などの所定箇所まで接続経路が一致する複数の処理実行装置８２を、処理を実行する処理実行装置８２として選択する。
【０１３２】
例えば、図１６で示すように、データ格納装置８１と処理実行装置８２とが接続されていたとする。図１６で示す場合、データ格納装置８１から中継装置８３（ネットワークスイッチや処理実行装置８２など）などの所定箇所まで、処理実行装置８２−１、処理実行装置８２−２、処理実行装置８２−３の接続経路が一致している。一方で、処理実行装置８２−４や処理実行装置８２−５とは、接続経路が一致していない。そこで、選択手段７５２は、同一のデータを用いる複数の処理を処理実行装置８２に実行させる場合、処理実行装置８２−１、処理実行装置８２−２、処理実行装置８２−３の中から処理を実行する処理実行装置８２を選択する。例えば、同一のデータを用いる２つの処理を処理実行装置８２に実行させる場合、選択手段７５２は、処理実行装置８２−１、処理実行装置８２−２、処理実行装置８２−３の中のいずれか２つ（選択する方法は特に限定しない）を、処理を実行する処理実行装置８２として選択する。このように、選択手段７５２は、データ格納装置８１と処理実行装置８２との間の接続経路に基づいて、処理を実行する処理実行装置８２を選択する。
【０１３３】
なお、データ格納装置８１から中継装置８３などの所定箇所まで接続経路が一致する複数の処理実行装置８２が複数存在している場合なども想定される。この場合、選択手段７５２は、接続経路情報７４１を参照して、一致している距離の割合やデータ格納装置８１と処理実行装置８２との間の接続経路の短さ、一致していない区間の長さ、などを算出し、算出結果に基づいて処理実行装置８２を選択するよう構成することが出来る。つまり、選択手段７５２は、データ格納装置８１から中継装置などの所定箇所まで接続経路が一致する処理実行装置８２が複数ある場合、一致している距離の割合がより高い方や、全体の経路がより短い方などを選択するよう構成することが出来る。選択手段７５２は、上記例示した方法以外の方法を用いて処理実行装置８２を選択しても構わない。
【０１３４】
また、例えば、複数の処理間で用いるデータに共通性がある場合がある。例えば、図１７で示す場合、処理Ａでデータａ１、ａ２を用いており、処理Ｂでデータａ１、ｂ１、ｃ１を用いており、処理Ｃでａ２、ｂ２、ｃ２を用いている。つまり、処理Ｂや処理Ｃで用いるデータの一部は、処理Ａで用いるデータの一部と同一である。このように、複数の処理間で用いるデータに共通性がある場合、選択手段７５２は、同じデータを用いる処理を同一の装置が実行するように処理実行装置８２を選択する。例えば、図１７で示す場合、処理Ａと処理Ｂと処理Ｃとのすべてを同一の装置が実行するように処理実行装置８２を選択する。このように処理実行装置８２を選択することで、図１７で示すように、中継装置８３などの所定箇所から処理実行装置８２までの間の接続経路が一致することになる。
【０１３５】
なお、選択手段７５２は、処理情報７４２を参照することで、過去に処理実行装置８２が実行した処理に用いられたデータと共通するデータを用いる処理を同一の処理実行装置８２に実行させることが可能である。このように、選択手段７５２は、データに共通性がある複数の処理を同時に実行させる場合のみならず、過去に実行させた処理との関係で処理を実行させる処理実行装置８２を選択することが出来る。
【０１３６】
以上のように、選択手段７５２は、同一のデータを用いる複数の処理を実行させる場合や、データに共通性のある複数の処理を実行させる場合に、データ格納装置８１と処理実行装置８２との間の経路が少なくとも一部共通するように、処理実行装置８２を選択する。
【０１３７】
なお、選択手段７５２は、処理実行装置８２を選択する際に、移動情報取得手段７５１が取得した移動情報を参照するよう構成することが出来る。例えば、処理実行装置８２が移動すると、接続経路が変化することとなり、接続経路が一致しなくなる可能性が生じる。そこで、選択手段７５２は、移動情報に基づいて、移動している処理実行装置８２（又は、所定期間（任意で構わない）内の中継装置の変化数が予め定められた基準より多い処理実行装置８２）を選択する装置の候補から外す。換言すると、選択手段７５２は、通信する中継装置の変化数が予め定められた基準以下の処理実行装置８２の中から、処理を実行する処理実行装置８２を選択する。例えば、選択手段７５２をこのように構成することで、より確実に経路の少なくとも一部が共通する処理実行装置８２を選択することが可能となり、より確実にネットワーク資源を効率的に活用することが可能となる。
【０１３８】
指示手段７５３は、選択手段７５２による選択結果に基づいて、データ格納装置８１や処理実行装置８２に対して必要な指示を行う。
【０１３９】
例えば、指示手段７５３は、選択手段７５２から選択結果を示す情報を受信する。すると、指示手段７５３は、受信した情報に基づいて、処理内容やリソース確保期間、結果の送付先を示す情報を、選択手段７５２が選択した処理実行装置８２に対して送信する。また、指示手段７５３は、受信した情報に基づいて、処理の実行に必要なデータを選択手段７５２が選択した処理実行装置８２に送信するようデータ格納装置８１に対して指示する。
【０１４０】
以上が、選択装置７の構成の一例である。続いて、図１８、図１９を参照して、選択装置７が処理実行装置８２を選択する際の流れの一例について説明する。まず、図１８を参照して、同一のデータを用いる同一又は異なる処理を複数の処理実行装置８２に実行させるような場合の選択装置７の処理の一例について説明する。
【０１４１】
選択装置７は、例えば図示しないクラウド利用端末などからリクエストを受信する。そして、受信したリクエストに応じて、同一のデータを用いる同一又は異なる処理を複数の処理実行装置８２に実行させることになったとする。すると、図１８で示すように、選択手段７５２は、記憶部７４に格納された接続経路情報７４１を参照する（ステップＳ４０１）。
【０１４２】
選択手段７５２は、参照した接続経路情報７４１に基づいて、データ格納装置８１とそれぞれの処理を実行する複数の処理実行装置８２との間の接続経路が少なくとも一部共通するように、処理を実行する複数の処理実行装置８２を選択する（ステップＳ４０２）。例えば、選択手段７５２は、データ格納装置８１から中継装置などの所定箇所まで接続経路が一致する複数の処理実行装置８２を、処理を実行する処理実行装置８２として選択する。その後、選択手段７５２は、選択した結果を指示手段７５３に送信する。
【０１４３】
指示手段７５３は、選択手段７５２による選択結果に基づいて、データ格納装置８１や処理実行装置８２に対して必要な指示を行う（ステップＳ４０３）。例えば、指示手段７５３は、受信した情報に基づいて、処理内容やリソース確保期間、結果の送付先を示す情報を、選択手段７５２が選択した処理実行装置８２に対して送信する。また、指示手段７５３は、受信した情報に基づいて、処理の実行に必要なデータを選択手段７５２が選択した処理実行装置８２に送信するようデータ格納装置８１に対して指示する。
【０１４４】
以上が、同一のデータを用いる同一又は異なる処理を複数の処理実行装置８２に実行させるような場合の選択装置７の処理の一例である。続いて、図１９を参照して、複数の処理間で用いるデータに共通性がある場合の選択装置７の処理の一例について説明する。
【０１４５】
選択装置７は、例えば図示しないクラウド利用端末などからリクエストを受信する。そして、受信したリクエストに応じて、データに共通性がある複数の処理を複数の処理実行装置８２に実行させることになったとする。すると、図１９で示すように、選択手段７５２は、データに共通する複数の処理を同一の処理実行装置８２が実行するよう処理実行装置８２を選択する（ステップＳ５０１）。その後、選択手段７５２は、選択した結果を指示手段７５３に送信する。
【０１４６】
指示手段７５３は、選択手段７５２による選択結果に基づいて、データ格納装置８１や処理実行装置８２に対して必要な指示を行う（ステップＳ５０２）。例えば、指示手段７５３は、受信した情報に基づいて、処理内容やリソース確保期間、結果の送付先を示す情報を、選択手段７５２が選択した処理実行装置８２に対して送信する。また、指示手段７５３は、受信した情報に基づいて、処理の実行に必要なデータを選択手段７５２が選択した処理実行装置８２に送信するようデータ格納装置８１に対して指示する。
【０１４７】
以上が、複数の処理間で用いるデータに共通性がある場合の選択装置７の処理の一例である。なお、選択手段７５２は、ステップＳ５０１の処理の前に、処理情報７４２を参照しても構わない。
【０１４８】
このように、本実施形態における選択装置７は、接続経路情報７４１を記憶するとともに、選択手段７５２を有している。このような構成により、選択手段７５２は、同一のデータを用いる複数の処理を実行させる場合や、データに共通性のある複数の処理を実行させる場合に、データ格納装置８１と処理実行装置８２との間の経路が少なくとも一部共通するように、処理実行装置８２を選択することが出来る。その結果、重複するデータを伝送する必要がなくなり、トラフィックの増大を抑制することが出来る。つまり、ネットワーク資源を効率的に活用することが可能となる。
【０１４９】
［第３の実施形態］
次に、図２０を参照して、本発明の第３の実施形態について説明する。第３の実施形態では、選択装置９の構成の概要について説明する。
【０１５０】
図２０を参照すると、選択装置９は、記憶部９１と選択部９２とを有している。例えば、選択装置９は、図示しない記憶装置と図示しない演算装置とを有しており、図示しない記憶装置が記憶するプログラムを図示しない演算装置が実行することで、選択部９２を実現する。
【０１５１】
記憶部９１は、メモリやハードディスクなどの記憶装置である。記憶部９１は、装置の接続経路を示す接続経路情報を記憶している。
【０１５２】
選択部９２は、複数の装置の中から処理を実行する装置を選択する。例えば、選択部９２は、記憶部９１が記憶する接続経路情報に基づいて、処理に用いるデータの格納場所と装置との間の経路が少なくとも一部共通する装置を、当該処理を実行する装置として選択する。
【０１５３】
このように、選択装置９は、接続経路情報を記憶するとともに、選択部９２を有している。このような構成により、選択部９２は、処理に用いるデータの格納場所と装置との間の経路が少なくとも一部共通するように、処理を実行する装置を選択することが出来る。その結果、重複するデータを伝送する必要がなくなり、トラフィックの増大を抑制することが出来る。つまり、ネットワーク資源を効率的に活用することが可能となる。
【０１５４】
また、上述した選択装置９は、当該選択装置９に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、装置の接続経路を示す接続経路情報を記憶する記憶部９１を有する情報処理装置に、複数の装置の中から処理を実行する装置を選択する選択手段（選択部９２）を実現させ、選択手段は、接続経路情報に基づいて、処理に用いるデータの格納場所と装置との間の経路が少なくとも一部共通する装置を、当該処理を実行する装置として選択する、処理を実現させるためのプログラムである。
【０１５５】
また、上述した選択装置９により実行される装置選択方法は、装置の接続経路を示す接続経路情報を記憶する記憶部９１を有する選択装置９により行われる装置選択方法であって、装置の接続経路を示す接続経路情報を取得し、取得した接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する装置として選択する、という方法である。
【０１５６】
上述した構成を有する、プログラム、又は、装置選択方法、の発明であっても、上記選択装置９と同様の作用を有するために、上述した本発明の目的を達成することが出来る。
【０１５７】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における選択装置などの概略を説明する。但し、本発明は、以下の構成に限定されない。
【０１５８】
（付記１）
装置の接続経路を示す接続経路情報を記憶する記憶部と、
複数の前記装置の中から処理を実行する前記装置を選択する選択部と、
を有し、
前記選択部は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
選択装置。
（付記２）
付記１に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
選択装置。
（付記３）
付記１又は２に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所から所定箇所まで接続経路が一致する複数の前記装置を、当該処理を実行する前記装置として選択する
選択装置。
（付記４）
付記１乃至３のいずれかに記載の選択装置であって、
前記選択部は、同一のデータを用いる複数の処理を同一の装置が実行するよう、処理を実行する前記装置を選択する
選択装置。
（付記５）
付記１乃至４のいずれかに記載の選択装置であって、
前記装置の移動情報を取得する移動情報取得部を有し、
前記選択部は、複数の前記装置のうちの前記移動情報取得部が取得した前記移動情報が所定の条件を満たす前記装置の中から、処理を実行する前記装置を選択する
選択装置。
（付記６）
付記５に記載の選択装置であって、
前記移動情報は、前記装置が通信する中継装置が変化した数を示す情報を含んでおり、
前記選択部は、前記移動情報に基づいて、通信する中継装置の変化数が予め定められた基準以下の前記装置の中から、処理を実行する前記装置を選択する
選択装置。
（付記７）
装置の接続経路を示す接続経路情報を記憶する記憶部を有する選択装置により行われる装置選択方法であって、
装置の接続経路を示す接続経路情報を取得し、
取得した前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
装置選択方法。
（付記８）
付記７に記載の装置選択方法であって、
同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
装置選択方法。
（付記９）
装置の接続経路を示す接続経路情報を記憶する記憶部を有する情報処理装置に、
複数の前記装置の中から処理を実行する前記装置を選択する選択手段を実現させ、
前記選択手段は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラム。
（付記１０）
付記９に記載のプログラムであって、
前記選択手段は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラム。
【０１５９】
なお、上記各実施形態及び付記において記載したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されていたりする。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【０１６０】
以上、上記各実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることが出来る。
【符号の説明】
【０１６１】
１  情報処理システム
２  システム管理装置
２１  通信Ｉ／Ｆ部
２２  操作入力部
２３  画面表示部
２４  記憶部
２４１  ＳＬＡ一覧情報
２４２  接続経路情報
２４３  装置構成情報
２４４  ネットワーク構成情報
２４５  装置状態情報
２４６  ネットワーク状態情報
２４７  装置信頼性情報
２４８  ネットワーク信頼性情報
２４９  プログラム
２５  演算処理部
２５１  リクエスト制御手段
２５２  状態情報取得手段
２５３  信頼性判断手段
２５４  処理制御手段
２５５  処理結果採用手段
３  クラウド利用端末
４  企業内ＤＣ
５  エッジサーバ
６  端末
７  選択装置
７００  情報処理システム
７１  通信Ｉ／Ｆ部
７２  操作入力部
７３  画面表示部
７４  記憶部
７４１  接続経路情報
７４２  処理情報
７４３  プログラム
７５  演算処理部
７５１  移動情報取得手段
７５２  選択手段
７５３  指示手段
８１  データ格納装置
８２  処理実行装置
８３  中継装置
９  選択装置
９１  記憶部
９２  選択部
【図１】
2018148477.tif 000003
【図２】
2018148477.tif 000004
【図３】
2018148477.tif 000005
【図４】
2018148477.tif 000006
【図５】
2018148477.tif 000007
【図６】
2018148477.tif 000008
【図７】
2018148477.tif 000009
【図８】
2018148477.tif 000010
【図９】
2018148477.tif 000011
【図１０】
2018148477.tif 000012
【図１１】
2018148477.tif 000013
【図１２】
2018148477.tif 000014
【図１３】
2018148477.tif 000015
【図１４】
2018148477.tif 000016
【図１５】
2018148477.tif 000017
【図１６】
2018148477.tif 000018
【図１７】
2018148477.tif 000019
【図１８】
2018148477.tif 000020
【図１９】
2018148477.tif 000021
【図２０】
2018148477.tif 000022
【手続補正書】
【提出日】平成30年5月23日(2018.5.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
装置の接続経路を示す接続経路情報を記憶する記憶部と、
複数の前記装置の中から処理を実行する前記装置を選択する選択部と、
を有し、
前記選択部は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択し、
前記装置の移動情報を取得する移動情報取得部を有し、
前記選択部は、複数の前記装置のうちの前記移動情報取得部が取得した前記移動情報が所定の条件を満たす前記装置の中から、処理を実行する前記装置を選択する
選択装置。
【請求項２】
請求項１に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
選択装置。
【請求項３】
請求項１又は２に記載の選択装置であって、
前記選択部は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所から所定箇所まで接続経路が一致する複数の前記装置を、当該処理を実行する前記装置として選択する
選択装置。
【請求項４】
請求項１乃至３のいずれかに記載の選択装置であって、
前記選択部は、同一のデータを用いる複数の処理を同一の装置が実行するよう、処理を実行する前記装置を選択する
選択装置。
【請求項５】
請求項１乃至４のいずれかに記載の選択装置であって、
前記移動情報は、前記装置が通信する中継装置が変化した数を示す情報を含んでおり、
前記選択部は、前記移動情報に基づいて、通信する中継装置の変化数が予め定められた基準以下の前記装置の中から、処理を実行する前記装置を選択する
選択装置。
【請求項６】
装置の接続経路を示す接続経路情報を記憶する記憶部を有する選択装置により行われる装置選択方法であって、
装置の接続経路を示す接続経路情報を取得し、
取得した前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択し、
前記装置の移動情報を取得し、
複数の前記装置のうちの取得した前記移動情報が所定の条件を満たす前記装置の中から、処理を実行する前記装置を選択する
装置選択方法。
【請求項７】
請求項６に記載の装置選択方法であって、
同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
装置選択方法。
【請求項８】
装置の接続経路を示す接続経路情報を記憶する記憶部を有する情報処理装置に、
複数の前記装置の中から処理を実行する前記装置を選択する選択手段を実現させ、
前記選択手段は、前記接続経路情報に基づいて、処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択し、
前記装置の移動情報を取得する移動情報取得部を実現させ、
前記選択部は、複数の前記装置のうちの前記移動情報取得部が取得した前記移動情報が所定の条件を満たす前記装置の中から、処理を実行する前記装置を選択する
プログラム。
【請求項９】
請求項８に記載のプログラムであって、
前記選択手段は、同一のデータを用いる処理を複数の前記装置に実行させる際に、前記接続経路情報に基づいて、前記処理に用いるデータの格納場所と前記装置との間の経路が少なくとも一部共通する前記装置を、当該処理を実行する前記装置として選択する
プログラム。