(57)【要約】  情報処理装置（１０１）は、通信装置（１０２，１０３）のうち、特定のグループであるグループ（Ａ）に属する通信装置（１０２）から受信するデータに関する負荷の指標値を算出する。情報処理装置（１０１）は、算出した負荷の指標値が所定の基準に達するか否かを判断する。情報処理装置（１０１）は、負荷の指標値が所定の基準に達する場合に、グループ（Ａ）に属する通信装置（１０２）に、所定の処理の先行処理を依頼する。所定の処理は、特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、特定のグループに属する通信装置でも処理可能な処理である。
2017141339.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項２】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項３】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行させることを特徴とする処理制御プログラム。
【請求項４】
前記コンピュータに、
前記先行処理が施される前に受信したデータと、前記先行処理が施された後に受信したデータとで、前記情報処理装置に対して処理を依頼する際に指定するアドレスを切り替える、処理を実行させることを特徴とする請求項１〜３のいずれか一つに記載の処理制御プログラム。
【請求項５】
前記指標値は、単位時間当たりの前記データの受信量、および／または単位時間当たりのデータの受信または送信処理回数である、ことを特徴とする請求項１〜４のいずれか一つに記載の処理制御プログラム。
【請求項６】
前記コンピュータに、
前記特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準を下回る場合、前記特定のグループに属する通信装置に、前記先行処理の解除を依頼する、処理を実行させることを特徴とする請求項１に記載の処理制御プログラム。
【請求項７】
前記コンピュータに、
前記負荷の指標値が所定の基準を下回る場合、前記第１のグループに属する通信装置に、前記第１の処理の先行処理の解除を依頼するとともに、前記第２のグループに属する通信装置に、前記第２の処理の先行処理の解除を依頼する、処理を実行させることを特徴とする請求項２に記載の処理制御プログラム。
【請求項８】
収集したデータを送信する通信装置に、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項９】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【請求項１０】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【請求項１１】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行することを特徴とする処理制御方法。
【請求項１２】
収集したデータを送信する通信装置が、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行することを特徴とする処理制御方法。
【請求項１３】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【請求項１４】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【請求項１５】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
制御部を有することを特徴とする情報処理装置。
【請求項１６】
収集したデータを送信する通信装置であって、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
制御部を有することを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理制御プログラム、処理制御方法、情報処理装置、および通信装置に関する。
【背景技術】
【０００２】
近年、モノのインターネット化（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）が進んでおり、人やモノから収集したセンサデータを活用することで、新たな価値やビジネスが生まれている。また、人やモノから収集した大量のセンサデータを扱うための各種機能をクラウドサービスとして提供することが行われている。【０００３】
先行技術としては、クライアント・サーバシステムにおいて、クライアントノードとサーバノードとの間で負荷分散を行うものがある。例えば、サーバノードは、クライアントノードから処理要求信号を受信すると、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）使用率を取得し、ＣＰＵ使用率が設定値以上である場合には、要求された処理をクライアントノードに実行させる旨の応答信号を送信するものがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−５３３２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、収集されるセンサデータの処理を実行するサーバの負荷が増大するという問題がある。例えば、どのようなタイミングでどのようなセンサデータが収集されるのかを予測することは難しく、収集されるセンサデータのデータ量の増加に伴って、サーバの負荷が急激に増大してしまう場合がある。【０００６】
一つの側面では、本発明は、データの処理にかかる負荷を適切に分散する処理制御プログラム、処理制御方法、情報処理装置、および通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する処理制御プログラム、処理制御方法、および情報処理装置が提案される。【０００８】
また、本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する処理制御プログラム、処理制御方法、および情報処理装置が提案される。【０００９】
また、本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う処理制御プログラム、処理制御方法、および情報処理装置が提案される。【００１０】
また、本発明の一態様によれば、収集したデータを送信する通信装置が、収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する処理制御プログラム、処理制御方法、および通信装置が提案される。
【発明の効果】
【００１１】
本発明の一側面によれば、データの処理にかかる負荷を分散することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態にかかる処理制御方法の一実施例を示す説明図である。
【図２】図２は、処理制御システム２００のシステム構成例を示す説明図である。
【図３】図３は、情報処理装置１０１等のハードウェア構成例を示すブロック図である。
【図４】図４は、負荷条件テーブル２３０の記憶内容の一例を示す説明図である。
【図５】図５は、負荷状態テーブル２４０の記憶内容の一例を示す説明図である。
【図６】図６は、情報処理装置１０１の機能的構成例を示すブロック図である。
【図７】図７は、ゲートウェイ装置ＧＷｉの機能的構成例を示すブロック図である。
【図８】図８は、情報処理装置１０１の第１の処理制御処理手順の一例を示すフローチャートである。
【図９】図９は、負荷判定処理手順の具体的処理手順の一例を示すフローチャートである。
【図１０】図１０は、情報処理装置１０１の第２の処理制御処理手順の一例を示すフローチャートである。
【図１１】図１１は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャート（その１）である。
【図１２】図１２は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャート（その２）である。
【図１３】図１３は、ゲートウェイ装置ＧＷｉの処理制御処理手順の一例を示すフローチャートである。
【図１４】図１４は、サーバＳＶｊの処理制御処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に図面を参照して、本発明にかかる処理制御プログラム、処理制御方法、情報処理装置、および通信装置の実施の形態を詳細に説明する。
【００１４】
（実施の形態）
図１は、実施の形態にかかる処理制御方法の一実施例を示す説明図である。図１において、情報処理装置１０１は、データの処理にかかる負荷分散を行うコンピュータである。データは、例えば、各通信装置１０２，１０３により収集されるデータである。
【００１５】
通信装置１０２，１０３は、収集したデータを情報処理装置１０１に送信するコンピュータである。収集されるデータは、センサ１０４，１０５により計測される物理量、例えば、ある場所の温度、湿度、明るさや、ある物体の位置、向き、速度、加速度などの物理量を示す情報である。
【００１６】
情報処理装置１０１は、通信装置１０２，１０３のそれぞれから受信したデータの処理を対応する情報処理装置１０６，１０７に依頼する。情報処理装置１０６，１０７は、依頼されたデータの処理を実行するコンピュータである。
【００１７】
各通信装置１０２，１０３と、各通信装置１０２，１０３が収集したデータの処理の依頼先となる情報処理装置１０６，１０７との対応関係は予め設定されている。例えば、通信装置１０２が収集したデータの処理の依頼先は情報処理装置１０６である。また、通信装置１０３が収集したデータの処理の依頼先は情報処理装置１０７である。
【００１８】
各通信装置１０２，１０３は、アプリケーションＡＰＬ１，ＡＰＬ２をそれぞれ有する。また、各情報処理装置１０６，１０７は、アプリケーションＡＰＬ２，ＡＰＬ３をそれぞれ有する。なお、以下の説明では、アプリケーションを単に「アプリ」と表記する場合がある。
【００１９】
アプリＡＰＬ１は、通信装置１０２，１０３で動作可能なアプリであり、例えば、センサ１０４，１０５からデータを収集するアプリである。アプリＡＰＬ２は、通信装置１０２，１０３および情報処理装置１０６，１０７のいずれでも動作可能なアプリであり、例えば、収集されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。アプリＡＰＬ３は、情報処理装置１０６，１０７で動作可能なアプリであり、例えば、アプリＡＰＬ２で処理されたデータについて各種分析、解析を行うアプリである。
【００２０】
ここで、情報処理装置１０６，１０７側でのみアプリＡＰＬ２を動作させると、収集されるデータ量が多くなるにつれて、アプリＡＰＬ２の実行にかかる情報処理装置１０６，１０７の負荷が増大する。さらに、収集されたデータの転送にかかる情報処理装置１０１の負荷も増大する。
【００２１】
一方、通信装置１０２，１０３側でのみアプリＡＰＬ２を動作させると、情報処理装置１０６，１０７や情報処理装置１０１にかかる負荷を削減できる。ところが、通信装置１０２，１０３側でのみアプリＡＰＬ２を動作させると、通信装置１０２，１０３の負荷が増大するとともに、情報処理装置１０６，１０７のリソースを十分に活用できない。
【００２２】
そこで、本実施の形態では、収集されるデータに対して所定の処理（例えば、アプリＡＰＬ２）を施す場所を最適化することで、収集されるデータの処理にかかる負荷を適切に分散する処理制御方法について説明する。以下、情報処理装置１０１の処理例について説明する。
【００２３】
（１）情報処理装置１０１は、通信装置１０２，１０３のうち、特定のグループに属する通信装置から受信するデータに関する負荷の指標値を算出する。ここで、特定のグループとは、所定のルールに沿って分類された通信装置を含むグループであり、例えば、特定の顧客（テナント）が使用する通信装置をグルーピングしたものである。
【００２４】
負荷の指標値は、例えば、単位時間当たりのデータの受信量を用いて表すことにしてもよい（単位：ｂｐｓ（ｂｉｔ  ｐｅｒ  ｓｅｃｏｎｄ））。また、負荷の指標値は、例えば、単位時間当たりのデータの受信または送信処理回数を用いて表すことにしてもよい（単位：ｔｐｓ（ｔｒａｎｓａｃｔｉｏｎ  ｐｅｒ  ｓｅｃｏｎｄ））。
【００２５】
図１の例では、グループＡに属する通信装置１０２と、グループＢに属する通信装置１０３とが示されている。ここでは、特定のグループに属する通信装置を「グループＡに属する通信装置１０２」とし、通信装置１０２から受信するデータに関する負荷の指標値が算出された場合を想定する。
【００２６】
（２）情報処理装置１０１は、算出した負荷の指標値が所定の基準に達するか否かを判断する。ここで、所定の基準は、任意に設定可能であり、例えば、特定のグループ（顧客）ごとに設定される。例えば、所定の基準は、負荷の指標値が当該基準に達すると、特定のグループに属する通信装置から受信するデータの処理を依頼する依頼先の情報処理装置の負荷を分散したほうがよいと判断できる値に設定される。
【００２７】
図１の例では、グループＡに属する通信装置１０２から受信するデータに関する負荷の指標値が所定の基準に達する場合を想定する。
【００２８】
（３）情報処理装置１０１は、負荷の指標値が所定の基準に達する場合に、特定のグループに属する通信装置に、所定の処理の先行処理を依頼する。ここで、所定の処理とは、特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、特定のグループに属する通信装置でも処理可能な処理である。
【００２９】
また、所定の処理の先行処理を依頼するとは、特定のグループに属する通信装置に対して、依頼先の情報処理装置に先行して所定の処理を実行するよう指示することである。すなわち、情報処理装置１０１は、特定のグループに属する通信装置でも処理可能な処理を、当該通信装置に依頼先の情報処理装置の代わりに実行させる。
【００３０】
図１の例では、所定の処理は、グループＡに属する通信装置１０２から受信するデータの依頼先の情報処理装置１０６が実行するアプリＡＰＬ２，ＡＰＬ３のうち、通信装置１０２でも処理可能なアプリＡＰＬ２である。この場合、情報処理装置１０１は、グループＡに属する通信装置１０２にアプリＡＰＬ２の先行処理を依頼する。
【００３１】
このように、情報処理装置１０１によれば、特定のグループに属する通信装置から受信するデータに関する負荷に応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、特定のグループに属する通信装置に切り替えることができる。これにより、特定のグループに属する通信装置により収集されるデータに対して所定の処理を施す場所を最適化して、収集されるデータの処理にかかる負荷を適切に分散することができる。
【００３２】
図１の例では、グループＡに属する通信装置１０２に対してアプリＡＰＬ２の先行処理が依頼された結果、通信装置１０２において、収集されるデータに対してアプリＡＰＬ２が先行して実行される。これにより、アプリＡＰＬ２の実行にかかる依頼先の情報処理装置１０６の負荷を削減することができ、通信装置１０２により収集されるデータの処理にかかる負荷を分散することができる。
【００３３】
（処理制御システム２００のシステム構成例）
つぎに、実施の形態にかかる処理制御システム２００のシステム構成例について説明する。
【００３４】
図２は、処理制御システム２００のシステム構成例を示す説明図である。図２において、処理制御システム２００は、情報処理装置１０１と、ゲートウェイ装置ＧＷ１〜ＧＷｎ（ｎ：２以上の自然数）と、サーバＳＶ１〜ＳＶｍ（ｍ：２以上の自然数）と、複数のセンサＣと、を含む。処理制御システム２００において、情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍは、有線または無線のネットワーク２１０を介して接続される。ネットワーク２１０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどである。
【００３５】
情報処理装置１０１は、収集データＤＢ（ＤａｔａＢａｓｅ）２２０、負荷条件テーブル２３０および負荷状態テーブル２４０を有し、ゲートウェイ装置ＧＷ１〜ＧＷｎが収集するデータの処理にかかる負荷分散を行う。収集データＤＢ２２０は、ゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータを記憶する。負荷条件テーブル２３０および負荷状態テーブル２４０の記憶内容については、図４および図５を用いて後述する。
【００３６】
ゲートウェイ装置ＧＷ１〜ＧＷｎは、センサＣから収集したデータを、情報処理装置１０１に送信するコンピュータである。各ゲートウェイ装置ＧＷ１〜ＧＷｎと各センサＣとは、有線または無線のネットワークを介して接続される。各ゲートウェイ装置ＧＷ１〜ＧＷｎは、アプリＡＰＬ１，ＡＰＬ２をそれぞれ有する。
【００３７】
アプリＡＰＬ１は、ゲートウェイ装置ＧＷ１〜ＧＷｎで動作可能なアプリであり、例えば、センサＣからデータを収集するアプリである。アプリＡＰＬ２は、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍのいずれでも動作可能なアプリであり、例えば、収集されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。
【００３８】
例えば、ゲートウェイ装置ＧＷ１〜ＧＷｎは、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）などのアクセスポイントであってもよく、また、スマートフォン、タブレットＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ノートＰＣなどであってもよい。図１に示した通信装置１０２，１０３は、例えば、ゲートウェイ装置ＧＷ１〜ＧＷｎに相当する。
【００３９】
センサＣは、例えば、ある場所の温度、湿度、明るさや、ある物体の位置、向き、速度、加速度などの物理量を計測する。センサＣは、例えば、ウェアラブル端末、家庭用電気製品、監視カメラ、携帯型ゲーム機などに搭載される。図１に示したセンサ１０４，１０５は、例えば、センサＣに対応する。
【００４０】
サーバＳＶ１〜ＳＶｍは、情報処理装置１０１から依頼されたデータの処理を実行するコンピュータである。各サーバＳＶ１〜ＳＶｍは、アプリＡＰＬ２，ＡＰＬ３を有する。アプリＡＰＬ３は、サーバＳＶ１〜ＳＶｍで動作可能なアプリであり、例えば、アプリＡＰＬ２で処理されたデータについて各種分析、解析を行うアプリである。図１に示した情報処理装置１０６，１０７は、例えば、サーバＳＶ１〜ＳＶｍに対応する。
【００４１】
以下の説明では、ゲートウェイ装置ＧＷ１〜ＧＷｎのうちの任意のゲートウェイ装置を「ゲートウェイ装置ＧＷｉ」と表記する場合がある（ｉ＝１，２，…，ｎ）。また、サーバＳＶ１〜ＳＶｍのうちの任意のサーバを「サーバＳＶｊ」と表記する場合がある（ｊ＝１，２，…，ｍ）。
【００４２】
各ゲートウェイ装置ＧＷ１〜ＧＷｎは、グループＧ１〜ＧＫのうちのいずれかのグループＧｋに属している（Ｋ：２以上の自然数、ｋ＝１，２，…，Ｋ）。各グループＧｋは、上述した「特定のグループ」に相当しており、例えば、特定の顧客（テナント）が使用するゲートウェイ装置ＧＷをグルーピングしたものである。
【００４３】
（情報処理装置１０１等のハードウェア構成例）
つぎに、図２に示した情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍのハードウェア構成例について説明する。ここでは説明の都合上、情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍを「情報処理装置１０１等」と表記する。
【００４４】
図３は、情報処理装置１０１等のハードウェア構成例を示すブロック図である。図３において、情報処理装置１０１等は、ＣＰＵ３０１と、メモリ３０２と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０３と、ディスクドライブ３０４と、ディスク３０５と、を有する。また、各構成部は、バス３００によってそれぞれ接続される。
【００４５】
ここで、ＣＰＵ３０１は、情報処理装置１０１等の全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。
【００４６】
Ｉ／Ｆ３０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して外部のコンピュータに接続される。そして、Ｉ／Ｆ３０３は、ネットワーク２１０と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。Ｉ／Ｆ３０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００４７】
ディスクドライブ３０４は、ＣＰＵ３０１の制御に従ってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００４８】
なお、情報処理装置１０１等は、上述した構成部のほかに、例えば、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、キーボード、マウス、ディスプレイ等を有することにしてもよい。
【００４９】
（負荷条件テーブル２３０の記憶内容）
つぎに、情報処理装置１０１が有する負荷条件テーブル２３０の記憶内容について説明する。負荷条件テーブル２３０は、例えば、図３に示した情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置により実現される。
【００５０】
図４は、負荷条件テーブル２３０の記憶内容の一例を示す説明図である。図４において、負荷条件テーブル２３０は、グループＩＤ、ＯＮ条件およびＯＦＦ条件のフィールドを有し、各フィールドに情報を設定することで、負荷条件情報４００−１〜４００−（Ｋ＋１）をレコードとして記憶する。
【００５１】
ここで、グループＩＤは、グループＧｋを一意に識別する識別子である。ただし、グループＩＤ「ＡＬＬ」は、全グループＧ１〜ＧＫを包含したものを表す。ＯＮ条件は、グループＧｋに属するゲートウェイ装置ＧＷｉが収集したデータについて、ゲートウェイ装置ＧＷｉに対応するサーバＳＶｊが実行する処理のうち、ゲートウェイ装置ＧＷｉでも処理可能な処理の先行処理を依頼する条件である。ＯＦＦ条件は、ＯＮ条件を解除する条件である。
【００５２】
なお、図４の例では、ＯＮ条件およびＯＦＦ条件として、単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）に基づく閾値を設定することにしたが、これに限らない。例えば、負荷条件テーブル２３０には、単位時間当たりのデータの受信量（単位：ｂｐｓ）に基づく閾値がＯＮ条件およびＯＦＦ条件として設定されることにしてもよい。
【００５３】
（負荷状態テーブル２４０の記憶内容）
つぎに、情報処理装置１０１が有する負荷状態テーブル２４０の記憶内容について説明する。負荷状態テーブル２４０は、例えば、情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置により実現される。
【００５４】
図５は、負荷状態テーブル２４０の記憶内容の一例を示す説明図である。図５において、負荷状態テーブル２４０は、グループＩＤ、負荷および負荷状態のフィールドを有し、各フィールドに情報を設定することで、負荷状態情報５００−１〜５００−（Ｋ＋１）をレコードとして記憶する。
【００５５】
ここで、グループＩＤは、グループＧｋを一意に識別する識別子である。ただし、グループＩＤ「ＡＬＬ」は、全グループＧ１〜ＧＫを包含したものを表す。負荷は、グループＧｋに属するゲートウェイ装置ＧＷから受信するデータに関する負荷の指標値である。負荷の指標値は、例えば、単位時間当たりのデータの受信または送信処理回数を用いて表される（単位：ｔｐｓ）。
【００５６】
負荷状態は、グループＧｋの負荷状態を示す。負荷状態としては、例えば、ＯＮ状態またはＯＦＦ状態が設定される。ＯＮ状態は、グループＧｋのＯＮ条件（例えば、図４参照）を満たした場合に設定される負荷状態である。ＯＦＦ状態は、初期状態、あるいは、グループＧｋのＯＦＦ条件（例えば、図４参照）を満たした場合に設定される負荷状態である。
【００５７】
（情報処理装置１０１の機能的構成例）
図６は、情報処理装置１０１の機能的構成例を示すブロック図である。図６において、情報処理装置１０１は、通信制御部６０１と、算出部６０２と、判断部６０３と、を含む構成である。通信制御部６０１〜判断部６０３は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２、ディスク３０５などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【００５８】
通信制御部６０１は、ゲートウェイ装置ＧＷｉからデータを受信する。受信されるデータは、例えば、ゲートウェイ装置ＧＷｉに接続されたセンサＣにより計測された物理量を示す情報である。また、受信されるデータには、例えば、ゲートウェイ装置ＧＷｉが属するグループＧｋを特定する情報が付加されている。
【００５９】
グループＧｋを特定する情報は、例えば、データを格納する転送リソースのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）であってもよい。リソースとは、データを蓄積する単位であり、例えば、１つの同じ意味を持つ連続したデータを格納する格納場所である。
【００６０】
各リソースには、例えば、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）  ＲＥＳＴ（ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）やＭＱＴＴ（ＭＱ  Ｔｅｌｅｍｅｔｒｙ  Ｔｒａｎｓｐｏｒｔ）を利用してアクセスすることができる。
【００６１】
情報処理装置１０１は、例えば、転送リソースのＵＲＬに対応するグループＧｋを、ゲートウェイ装置ＧＷｉが属するグループＧｋとして特定することができる。ただし、転送リソースのＵＲＬとグループＧｋとの対応関係を示す情報は、例えば、情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【００６２】
また、グループＧｋを特定する情報は、例えば、ゲートウェイ装置ＧＷｉが属するグループＧｋを識別する情報、例えば、グループＧｋのグループＩＤであってもよい。この場合、情報処理装置１０１は、受信されたデータに付加されたグループＩＤからゲートウェイ装置ＧＷｉが属するグループＧｋを特定することができる。
【００６３】
受信されたデータは、例えば、図２に示した収集データＤＢ２２０に記憶される。より具体的には、例えば、受信されたデータは、当該データに付加されたＵＲＬから特定される転送リソース（収集データＤＢ２２０内の格納場所）に格納される。
【００６４】
算出部６０２は、ゲートウェイ装置ＧＷ１〜ＧＷｎのうち、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋを算出する。なお、上述したように、ゲートウェイ装置ＧＷｉが属するグループＧｋを特定する情報は、例えば、ゲートウェイ装置ＧＷｉから受信されるデータに付加されている。
【００６５】
以下の説明では、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋを「グループＧｋの負荷値Ｌｋ」と表記する場合がある。
【００６６】
具体的には、例えば、算出部６０２は、グループＧｋに属するゲートウェイ装置ＧＷから受信した単位時間当たりのデータの受信量を計測することにより、グループＧｋの負荷値Ｌｋ（単位：ｂｐｓ）を算出することにしてもよい。一例として、グループＧ１にゲートウェイ装置ＧＷ１，ＧＷ２が属する場合を想定する。この場合、算出部６０２は、ゲートウェイ装置ＧＷ１，ＧＷ２から受信した単位時間当たりのデータの受信量を計測することにより、グループＧ１の負荷値Ｌ１を算出する。
【００６７】
また、例えば、算出部６０２は、グループＧｋに属するゲートウェイ装置ＧＷから受信した単位時間当たりのデータの受信処理回数（または、送信処理回数）を計測することにより、グループＧｋの負荷値Ｌｋ（単位：ｔｐｓ）を算出することにしてもよい。一例として、グループＧ１にゲートウェイ装置ＧＷ１，ＧＷ２が属する場合を想定する。この場合、算出部６０２は、ゲートウェイ装置ＧＷ１，ＧＷ２から受信した単位時間当たりのデータの受信処理回数を計測することにより、グループＧ１の負荷値Ｌ１を算出する。
【００６８】
算出された各グループＧｋの負荷値Ｌｋは、例えば、各グループＧｋのグループＩＤと対応付けて、図５に示した負荷状態テーブル２４０に記憶される。
【００６９】
また、算出部６０２は、ゲートウェイ装置ＧＷ１〜ＧＷｎのうち、少なくとも第１のグループＧに属するゲートウェイ装置ＧＷと第２のグループＧに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌtotalを算出する。第１および第２のグループＧは任意に設定可能である。すなわち、負荷の指標値Ｌtotalは、グループＧ１〜ＧＫのうちの２以上のグループＧのいずれかに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値として定義することができる。
【００７０】
以下の説明では、グループＧALL（すなわち、グループＧ１〜ＧＫ）に属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の指標値Ｌtotalを「グループＧALLの負荷値Ｌtotal」と表記する場合がある。
【００７１】
具体的には、例えば、算出部６０２は、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信量を計測することにより、グループＧALLの負荷値Ｌtotal（単位：ｂｐｓ）を算出することにしてもよい。より具体的には、例えば、算出部６０２は、各グループＧ１〜ＧＫの負荷値Ｌ１〜ＬＫ（単位：ｂｐｓ）を累積することにより、グループＧALLの負荷値Ｌtotal（単位：ｂｐｓ）を算出する。
【００７２】
また、例えば、算出部６０２は、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信処理回数（または、送信処理回数）を計測することにより、グループＧALLの負荷値Ｌtotal（単位：ｔｐｓ）を算出することにしてもよい。より具体的には、例えば、算出部６０２は、各グループＧ１〜ＧＫの負荷値Ｌ１〜ＬＫ（単位：ｔｐｓ）を累積することにより、グループＧALLの負荷値Ｌtotal（単位：ｔｐｓ）を算出する。
【００７３】
算出されたグループＧALLの負荷値Ｌtotalは、例えば、グループＩＤ「ＡＬＬ」と対応付けて、図５に示した負荷状態テーブル２４０に記憶される。
【００７４】
判断部６０３は、グループＧｋの負荷値Ｌｋが所定の基準に達するか否かを判断する。所定の基準は、任意に設定可能であり、例えば、図４に示した負荷条件テーブル２３０内のＯＮ条件に相当する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧｋの負荷値Ｌｋが、グループＧｋのＯＮ条件を満たすか否かを判断する。
【００７５】
一例として、グループＧ１を例に挙げると、判断部６０３は、算出されたグループＧ１の負荷値Ｌ１が、グループＧｋのＯＮ条件「１００ｔｐｓ以上」を満たすか否かを判断する。ただし、グループＧ１の負荷値Ｌ１を、グループＧ１に属するゲートウェイ装置から受信した単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）とする。
【００７６】
判断された判断結果は、例えば、図５に示した負荷状態テーブル２４０に記憶される。例えば、グループＧｋの負荷値ＬｋがグループＧｋのＯＮ条件を満たすと判断された場合、グループＧｋに対応する負荷状態が「ＯＮ」に設定される。
【００７７】
また、判断部６０３は、負荷の指標値Ｌtotalが所定の基準に達するか否かを判断する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件「１２０ｔｐｓ以上」を満たすか否かを判断する。ただし、グループＧALLの負荷値Ｌtotalを、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）とする。
【００７８】
判断された判断結果は、例えば、図５に示した負荷状態テーブル２４０に記憶される。例えば、グループＧALLの負荷値ＬtotalがグループＧALLのＯＮ条件を満たすと判断された場合、グループＧALLに対応する負荷状態が「ＯＮ」に設定される。
【００７９】
通信制御部６０１は、グループＧｋの負荷値Ｌｋが所定の基準に達する場合に、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理を依頼する。ここで、所定の処理は、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、グループＧｋに属するゲートウェイ装置ＧＷでも処理可能な処理である。
【００８０】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」の場合、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信する。ここで、ＯＮ情報とは、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。
【００８１】
すなわち、ＯＮ情報は、アプリＡＰＬ２の先行処理の依頼に相当する。アプリＡＰＬ２は、上述したように、グループＧｋに属する各ゲートウェイ装置ＧＷｉから受信するデータの依頼先のサーバＳＶｊが実行するアプリＡＰＬ２，ＡＰＬ３のうち、各ゲートウェイ装置ＧＷｉでも処理可能なアプリケーションである。
【００８２】
なお、通信制御部６０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉから受信するデータの依頼先のサーバＳＶｊが実行するアプリＡＰＬ２，ＡＰＬ３のうち、各ゲートウェイ装置ＧＷｉでも処理可能なアプリＡＰＬ２を特定することにしてもよい。各ゲートウェイ装置ＧＷｉや各サーバＳＶｊが実行するアプリを特定する情報は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【００８３】
そして、通信制御部６０１は、グループＧｋの負荷状態が「ＯＮ」の場合に、グループＧｋに属する各ゲートウェイ装置ＧＷｉに、特定したアプリＡＰＬ２の先行処理を依頼することにしてもよい。具体的には、例えば、通信制御部６０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉに、先行処理を依頼するアプリ（例えば、アプリＡＰＬ２）を特定する情報を含むＯＮ情報を送信することにしてもよい。
【００８４】
また、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準に達する場合、第１のグループＧに属するゲートウェイ装置ＧＷに第１の処理の先行処理を依頼する。さらに、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準に達する場合、第２のグループＧに属するゲートウェイ装置ＧＷに第２の処理の先行処理を依頼する。
【００８５】
ここで、第１の処理は、第１のグループＧに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、第１のグループＧに属するゲートウェイ装置ＧＷでも処理可能な処理である。また、第２の処理は、第２のグループＧに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、第２のグループＧに属するゲートウェイ装置ＧＷでも処理可能な処理である。
【００８６】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」の場合、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎのそれぞれにＯＮ情報を送信する。ＯＮ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。
【００８７】
通信制御部６０１は、ゲートウェイ装置ＧＷｉから受信されたデータの処理を対応するサーバＳＶｊに依頼する。受信されたデータが、サーバＳＶｊが実行する処理のうちゲートウェイ装置ＧＷｉでも処理可能な処理が施されたデータの場合には、当該データに処理済であることを示す情報が対応付けられている。
【００８８】
例えば、受信されたデータには、当該データが処理済であるか否かを示すリコメンド情報が含まれる。リコメンド情報が「ＯＮ」の場合は、データが処理済であることを示す。一方、リコメンド情報が「ＯＦＦ」の場合は、データが処理済ではないことを示す。
【００８９】
具体的には、例えば、通信制御部６０１は、受信されたデータに付加されている転送リソースのＵＲＬに対応するサーバＳＶｊのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）のＵＲＬを特定する。なお、転送リソースのＵＲＬとＡＰＩのＵＲＬとの対応関係を示す情報は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【００９０】
そして、通信制御部６０１は、特定したＡＰＩのＵＲＬを指定して、受信されたデータを送信する。これにより、ゲートウェイ装置ＧＷｉから受信されたデータが、当該データの処理に対応するサーバＳＶｊに転送される。この結果、サーバＳＶｊにおいて、指定されたＵＲＬのＡＰＩが呼び出されてデータが処理される。
【００９１】
具体的には、例えば、サーバＳＶｊは、情報処理装置１０１から受信したデータに含まれるリコメンド情報が「ＯＮ」の場合、当該データをデータベース（不図示）に格納する。一方、リコメンド情報が「ＯＦＦ」の場合には、サーバＳＶｊは、当該データに対してアプリＡＰＬ２の処理を施して、処理後のデータをデータベース（不図示）に格納する。
【００９２】
なお、サーバＳＶｊのデータベース（不図示）に蓄積されたデータは、例えば、アプリＡＰＬ３の実行に用いられる。また、サーバＳＶｊにおけるアプリＡＰＬ３の実行タイミングは、任意に設定可能である。
【００９３】
また、通信制御部６０１は、ゲートウェイ装置ＧＷｉにおいて先行処理が施される前に受信したデータと、先行処理が施された後に受信したデータとで、サーバＳＶｊに対して処理を依頼する際に指定するアドレスを切り替えることにしてもよい。
【００９４】
具体的には、例えば、通信制御部６０１は、受信されたデータに付加された転送リソースのＵＲＬが、第１の転送リソースのＵＲＬの場合、第１の転送リソースのＵＲＬに対応付けられたサーバＳＶｊの第１のＡＰＩのＵＲＬを特定する。第１の転送リソースは、先行処理が施された処理済のデータを格納する転送リソースである。第１のＡＰＩは、情報処理装置１０１から受信されたデータをデータベース（不図示）に格納するためのＡＰＩである。そして、通信制御部６０１は、特定した第１のＡＰＩのＵＲＬを指定して、受信されたデータを送信する。
【００９５】
また、例えば、通信制御部６０１は、受信されたデータに付加された転送リソースのＵＲＬが、第２の転送リソースのＵＲＬの場合、第２の転送リソースのＵＲＬに対応付けられたサーバＳＶｊの第２のＡＰＩのＵＲＬを特定する。第２の転送リソースは、先行処理が施されていないデータを格納する転送リソースである。第２のＡＰＩは、情報処理装置１０１から受信されたデータに対してアプリＡＰＬ２の処理を施すためのＡＰＩである。そして、通信制御部６０１は、特定した第２のＡＰＩのＵＲＬを指定して、受信されたデータを送信する。
【００９６】
これにより、例えば、ゲートウェイ装置ＧＷｉから送信されるデータにリコメンド情報を含めなくても、サーバＳＶｊにおいて各データに対するアプリＡＰＬ２の実行状況に応じた処理を実行することができる。
【００９７】
また、判断部６０３は、グループＧｋの負荷値Ｌｋが所定の基準を下回ったか否かを判断する。ここで、所定の基準は、任意に設定可能であり、例えば、図４に示した負荷条件テーブル２３０内のＯＦＦ条件に相当する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧｋの負荷値Ｌｋが、グループＧｋのＯＦＦ条件を満たすか否かを判断する。一例として、グループＧ１を例に挙げると、判断部６０３は、算出されたグループＧ１の負荷値Ｌ１が、グループＧｋのＯＦＦ条件「５０ｔｐｓ以上」を満たすか否かを判断する。
【００９８】
また、通信制御部６０１は、グループＧｋの負荷値Ｌｋが所定の基準を下回る場合、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理の解除を依頼する。具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＦＦ」の場合、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する。
【００９９】
ここで、ＯＦＦ情報とは、情報処理装置１０１が受信したデータに関する負荷が所定の基準を下回ったことを通知する情報である。すなわち、ＯＦＦ情報は、アプリＡＰＬ２の先行処理の解除の依頼に相当する。これにより、グループＧｋの負荷値ＬｋがグループＧｋのＯＦＦ条件を満たすまで低下したことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに依頼したアプリＡＰＬ２の先行処理を解除することができる。
【０１００】
また、判断部６０３は、負荷の指標値Ｌtotalが所定の基準を下回ったか否かを判断する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件「１００ｔｐｓ以下」を満たすか否かを判断する。
【０１０１】
また、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準を下回る場合、第１のグループＧに属するゲートウェイ装置ＧＷｉに第１の処理の先行処理の解除を依頼する。さらに、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準を下回る場合、第２のグループＧに属するゲートウェイ装置ＧＷｉに第２の処理の先行処理の解除を依頼する。
【０１０２】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＦＦ」の場合、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎのそれぞれにＯＦＦ情報を送信する。これにより、グループＧALLの負荷値ＬtotalがグループＧALLのＯＦＦ条件を満たすまで低下したことに応じて、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎに依頼したアプリＡＰＬ２の先行処理を解除することができる。
【０１０３】
（ゲートウェイ装置ＧＷｉの機能的構成例）
図７は、ゲートウェイ装置ＧＷｉの機能的構成例を示すブロック図である。図７において、ゲートウェイ装置ＧＷｉは、取得部７０１と、通信制御部７０２と、実行部７０３と、を含む構成である。取得部７０１〜実行部７０３は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２、ディスク３０５などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【０１０４】
取得部７０１は、センサＣからデータを取得する。取得されるデータは、例えば、ゲートウェイ装置ＧＷｉに接続されたセンサＣにより計測された物理量を示す情報である。
【０１０５】
通信制御部７０２は、情報処理装置１０１から、所定の処理の先行処理の依頼を受け付ける。ここで、所定の処理は、情報処理装置１０１がゲートウェイ装置ＧＷｉから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、ゲートウェイ装置ＧＷｉでも処理可能な処理であり、例えば、アプリＡＰＬ２の処理である。
【０１０６】
具体的には、例えば、通信制御部７０２は、情報処理装置１０１からＯＮ情報を受信する。ＯＮ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。ＯＮ情報が受信されると、ゲートウェイ装置ＧＷｉのリコメンド情報に「ＯＮ」が設定される。
【０１０７】
リコメンド情報は、情報処理装置１０１に送信されるデータに書き込まれる情報であり、当該データが処理済であるか否かを示す。ゲートウェイ装置ＧＷｉのリコメンド情報は、例えば、図３に示したゲートウェイ装置ＧＷｉのメモリ３０２、ディスク３０５などの記憶装置に記憶される。
【０１０８】
実行部７０３は、センサＣから取得されたデータに、情報処理装置１０１から先行処理を依頼された処理を施す。具体的には、例えば、実行部７０３は、リコメンド情報が「ＯＮ」の場合に、センサＣから取得されたデータにアプリＡＰＬ２の処理を施す。アプリＡＰＬ２は、例えば、センサＣから取得されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。
【０１０９】
なお、リコメンド情報が「ＯＮ」の場合に、センサＣから取得されたデータに対して実行される処理（例えば、アプリＡＰＬ２）は、例えば、予め決められている。ただし、情報処理装置１０１からのＯＮ情報に、先行処理を依頼された処理を特定する情報が含まれる場合には、実行部７０３は、取得されたデータに対して当該情報から特定される処理を施すことにしてもよい。
【０１１０】
通信制御部７０２は、センサＣから取得されたデータを情報処理装置１０１に送信する。また、通信制御部７０２は、センサＣから取得されたデータに先行処理を依頼された処理が施された場合には、処理後のデータを、処理済であることを示す情報と対応付けて情報処理装置１０１に送信する。
【０１１１】
具体的には、例えば、通信制御部７０２は、センサＣから取得されたデータ、または、処理後のデータにリコメンド情報を書き込むことにより、処理済であるか否かを示すリコメンド情報を含むデータを情報処理装置１０１に送信することにしてもよい。
【０１１２】
より具体的には、例えば、通信制御部７０２は、転送リソースのＵＲＬを指定して、リコメンド情報を含むデータを送信する。転送リソースのＵＲＬは、例えば、ゲートウェイ装置ＧＷｉのメモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【０１１３】
また、通信制御部７０２は、例えば、先行処理を依頼された処理が施された処理後のデータを送信する場合には、第１の転送リソースのＵＲＬを指定して、当該データを送信することにしてもよい。また、通信制御部７０２は、例えば、センサＣから取得されたデータをそのまま送信する場合には、第２の転送リソースのＵＲＬを指定して、当該データを送信することにしてもよい。
【０１１４】
すなわち、通信制御部７０２は、センサＣから取得されたデータと、先行処理を依頼された処理が施されたデータとで、情報処理装置１０１に対して送信する際に指定するアドレスを切り替えることにしてもよい。これにより、データにリコメンド情報を含めなくても、当該データが、先行処理を依頼された処理（例えば、アプリＡＰＬ２の処理）が施されたデータであるか否かを判別することが可能となる。
【０１１５】
また、通信制御部７０２は、情報処理装置１０１から、所定の処理の先行処理の解除の依頼を受け付ける。具体的には、例えば、通信制御部７０２は、情報処理装置１０１からＯＦＦ情報を受信する。ＯＦＦ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準を下回ったことを通知する情報である。ＯＦＦ情報が受信されると、ゲートウェイ装置ＧＷｉのリコメンド情報に「ＯＦＦ」が設定される。
【０１１６】
（情報処理装置１０１の処理制御処理手順）
つぎに、図８〜図１２を用いて、情報処理装置１０１の処理制御処理手順について説明する。ここでは、まず、図８および図９を用いて、情報処理装置１０１の第１の処理制御処理手順について説明する。
【０１１７】
図８は、情報処理装置１０１の第１の処理制御処理手順の一例を示すフローチャートである。図８のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ８０１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ８０１：Ｎｏ）。
【０１１８】
なお、タイマの満了時間は、任意に設定可能であり、例えば、数分〜数時間程度の時間に設定される。また、タイマの満了時間は、グループＧｋごとにそれぞれ設定可能である。ただし、ここでのタイマの満了時間は、全グループＧ１〜ＧＫで共通のものとする。
【０１１９】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ８０１：Ｙｅｓ）、グループＧ１〜ＧＫに含まれる各グループＧｋの負荷値Ｌｋを算出する（ステップＳ８０２）。算出された各グループＧｋの負荷値Ｌｋは、例えば、負荷状態テーブル２４０に記憶される。
【０１２０】
なお、各グループＧｋの負荷値Ｌｋは、例えば、タイマが満了した時点までの所定期間分（例えば、５分間分）のグループＧｋに属するゲートウェイ装置から受信したデータに関する負荷の情報をもとに算出される。
【０１２１】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ８０３）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ８０４）。そして、情報処理装置１０１は、選択したグループＧｋについての負荷判定処理を実行する（ステップＳ８０５）。なお、負荷判定処理の具体的な処理手順については、図９を用いて後述する。
【０１２２】
つぎに、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ８０６）。ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ８０６：Ｙｅｓ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信して（ステップＳ８０７）、ステップＳ８０９に移行する。
【０１２３】
一方、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ８０６：Ｎｏ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する（ステップＳ８０８）。つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントする（ステップＳ８０９）。
【０１２４】
そして、情報処理装置１０１は、グループＧｋの「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ８１０）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ８１０：Ｎｏ）、情報処理装置１０１は、ステップＳ８０４に戻る。一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ８１０：Ｙｅｓ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１２５】
これにより、グループＧｋの負荷状態がＯＮとなったことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに所定の処理（例えば、アプリＡＰＬ２）の先行処理を依頼することができる。また、グループＧｋの負荷状態がＯＦＦとなったことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに所定の処理の先行処理の解除を依頼することができる。
【０１２６】
つぎに、図８に示したステップＳ８０５の負荷判定処理の具体的な処理手順について説明する。
【０１２７】
図９は、負荷判定処理手順の具体的処理手順の一例を示すフローチャートである。図９のフローチャートにおいて、まず、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ９０１）。
【０１２８】
ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ９０１：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧｋの負荷値Ｌｋが、グループＧｋのＯＦＦ条件を満たすか否かを判断する（ステップＳ９０２）。各グループＧｋの負荷値Ｌｋは、例えば、負荷状態テーブル２４０から特定される。
【０１２９】
ここで、グループＧｋの負荷値ＬｋがＯＦＦ条件を満たす場合（ステップＳ９０２：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧｋの負荷状態を「ＯＦＦ」に設定して（ステップＳ９０３）、本フローチャートによる一連の処理を終了する。
【０１３０】
一方、グループＧｋの負荷値ＬｋがＯＦＦ条件を満たさない場合（ステップＳ９０２：Ｎｏ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１３１】
また、ステップＳ９０１において、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ９０１：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧｋの負荷値Ｌｋが、グループＧｋのＯＮ条件を満たすか否かを判断する（ステップＳ９０４）。
【０１３２】
ここで、グループＧｋの負荷値ＬｋがＯＮ条件を満たす場合には（ステップＳ９０４：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧｋの負荷状態を「ＯＮ」に設定して（ステップＳ９０５）、本フローチャートによる一連の処理を終了する。
【０１３３】
一方、グループＧｋの負荷値ＬｋがＯＮ条件を満たさない場合（ステップＳ９０４：Ｎｏ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１３４】
これにより、グループＧｋの負荷値Ｌｋに応じて、グループＧｋの負荷状態を更新することができる。
【０１３５】
つぎに、図１０を用いて、情報処理装置１０１の第２の処理制御処理手順について説明する。
【０１３６】
図１０は、情報処理装置１０１の第２の処理制御処理手順の一例を示すフローチャートである。図１０のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ１００１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ１００１：Ｎｏ）。
【０１３７】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ１００１：Ｙｅｓ）、グループＧALLの負荷値Ｌtotalを算出する（ステップＳ１００２）。算出されたグループＧALLの負荷値Ｌtotalは、例えば、負荷状態テーブル２４０に記憶される。
【０１３８】
なお、グループＧALLの負荷値Ｌtotalは、例えば、タイマが満了した時点までの所定期間分（例えば、５分間分）のグループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の情報をもとに算出される。
【０１３９】
つぎに、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１００３）。
【０１４０】
ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１００３：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件を満たすか否かを判断する（ステップＳ１００４）。グループＧALLの負荷値Ｌtotalは、例えば、負荷状態テーブル２４０から特定される。
【０１４１】
ここで、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たす場合（ステップＳ１００４：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＦＦ」に設定して（ステップＳ１００５）、ステップＳ１００８に移行する。
【０１４２】
一方、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たさない場合（ステップＳ１００４：Ｎｏ）、情報処理装置１０１は、ステップＳ１００８に移行する。
【０１４３】
また、ステップＳ１００３において、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１００３：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件を満たすか否かを判断する（ステップＳ１００６）。
【０１４４】
ここで、グループＧALLの負荷値ＬtotalがＯＮ条件を満たさない場合（ステップＳ１００６：Ｎｏ）、情報処理装置１０１は、ステップＳ１００８に移行する。一方、グループＧALLの負荷値ＬtotalがＯＮ条件を満たす場合には（ステップＳ１００６：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＮ」に設定する（ステップＳ１００７）。
【０１４５】
そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１００８）。ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１００８：Ｙｅｓ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＮ情報を送信して（ステップＳ１００９）、本フローチャートによる一連の処理を終了する。
【０１４６】
一方、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１００８：Ｎｏ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＦＦ情報を送信して（ステップＳ１０１０）、本フローチャートによる一連の処理を終了する。
【０１４７】
これにより、グループＧALLの負荷状態がＯＮとなったことに応じて、各ゲートウェイ装置ＧＷ１〜ＧＷｎに所定の処理（例えば、アプリＡＰＬ２）の先行処理を依頼することができる。また、グループＧALLの負荷状態がＯＦＦとなったことに応じて、各ゲートウェイ装置ＧＷ１〜ＧＷｎに所定の処理の先行処理の解除を依頼することができる。
【０１４８】
つぎに、図１１および図１２を用いて、情報処理装置１０１の第３の処理制御処理手順について説明する。
【０１４９】
図１１および図１２は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャートである。図１１のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ１１０１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ１１０１：Ｎｏ）。
【０１５０】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ１１０１：Ｙｅｓ）、グループＧ１〜ＧＫに含まれる各グループＧｋの負荷値Ｌｋを算出する（ステップＳ１１０２）。つぎに、グループＧALLの負荷値Ｌtotalを算出する（ステップＳ１１０３）。
【０１５１】
そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１１０４）。
【０１５２】
ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１１０４：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件を満たすか否かを判断する（ステップＳ１１０５）。
【０１５３】
ここで、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たす場合（ステップＳ１１０５：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＦＦ」に設定して（ステップＳ１１０６）、ステップＳ１１０９に移行する。
【０１５４】
一方、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たさない場合（ステップＳ１１０５：Ｎｏ）、情報処理装置１０１は、ステップＳ１１０９に移行する。
【０１５５】
また、ステップＳ１１０４において、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１１０４：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件を満たすか否かを判断する（ステップＳ１１０７）。
【０１５６】
ここで、グループＧALLの負荷値ＬtotalがＯＮ条件を満たさない場合（ステップＳ１１０７：Ｎｏ）、情報処理装置１０１は、ステップＳ１１０９に移行する。一方、グループＧALLの負荷値ＬtotalがＯＮ条件を満たす場合には（ステップＳ１１０７：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＮ」に設定する（ステップＳ１１０８）。
【０１５７】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ１１０９）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ１１１０）。そして、情報処理装置１０１は、選択したグループＧｋについての負荷判定処理を実行する（ステップＳ１１１１）。
【０１５８】
なお、負荷判定処理の具体的な処理手順については、図９に示した負荷判定処理の具体的な処理手順と同様のため説明を省略する。
【０１５９】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントして（ステップＳ１１１２）、「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ１１１３）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ１１１３：Ｎｏ）、情報処理装置１０１は、ステップＳ１１１０に戻る。
【０１６０】
一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ１１１３：Ｙｅｓ）、情報処理装置１０１は、図１２に示すステップＳ１２０１に移行する。
【０１６１】
図１２のフローチャートにおいて、まず、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１２０１）。ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１２０１：Ｙｅｓ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＮ情報を送信して（ステップＳ１２０２）、本フローチャートによる一連の処理を終了する。
【０１６２】
一方、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１２０１：Ｎｏ）、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ１２０３）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ１２０４）。そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１２０５）。
【０１６３】
ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ１２０５：Ｙｅｓ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信して（ステップＳ１２０６）、ステップＳ１２０８に移行する。
【０１６４】
一方、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ１２０５：Ｎｏ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する（ステップＳ１２０７）。つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントする（ステップＳ１２０８）。
【０１６５】
そして、情報処理装置１０１は、グループＧｋの「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ１２０９）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ１２０９：Ｎｏ）、情報処理装置１０１は、ステップＳ１２０４に戻る。一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ１２０９：Ｙｅｓ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１６６】
これにより、グループＧｋの負荷値ＬｋがグループＧｋのＯＮ条件を満たす場合と、グループＧALLの負荷値ＬtotalがグループＧALLのＯＮ条件を満たす場合とで、先行処理を依頼する対象のゲートウェイ装置ＧＷを、グループＧｋに属するゲートウェイ装置ＧＷの範囲内とするか、ゲートウェイ装置ＧＷ１〜ＧＷｎの範囲内とするかを切り替えることができる。
【０１６７】
（ゲートウェイ装置ＧＷｉの処理制御処理手順）
つぎに、図１３を用いて、ゲートウェイ装置ＧＷｉの処理制御処理手順について説明する。
【０１６８】
図１３は、ゲートウェイ装置ＧＷｉの処理制御処理手順の一例を示すフローチャートである。図１３のフローチャートにおいて、まず、ゲートウェイ装置ＧＷｉは、タイマが満了したか否かを判断する（ステップＳ１３０１）。ここで、ゲートウェイ装置ＧＷｉは、タイマが満了するのを待つ（ステップＳ１３０１：Ｎｏ）。
【０１６９】
そして、ゲートウェイ装置ＧＷｉは、タイマが満了した場合（ステップＳ１３０１：Ｙｅｓ）、自装置に接続されたセンサＣからデータを取得する（ステップＳ１３０２）。つぎに、ゲートウェイ装置ＧＷｉは、リコメンド情報が「ＯＮ」であるか否かを判断する（ステップＳ１３０３）。
【０１７０】
ここで、リコメンド情報が「ＯＦＦ」の場合（ステップＳ１３０３：Ｎｏ）、ゲートウェイ装置ＧＷｉは、ステップＳ１３０５に移行する。一方、リコメンド情報が「ＯＮ」の場合（ステップＳ１３０３：Ｙｅｓ）、ゲートウェイ装置ＧＷｉは、取得したデータにアプリＡＰＬ２の処理を施す（ステップＳ１３０４）。
【０１７１】
つぎに、ゲートウェイ装置ＧＷｉは、送信対象のデータにリコメンド情報を書き込む（ステップＳ１３０５）。送信対象のデータは、センサＣから取得したデータ、または、当該データにアプリＡＰＬ２の処理を施した処理後のデータである。
【０１７２】
そして、ゲートウェイ装置ＧＷｉは、リコメンド情報を含むデータを情報処理装置１０１に送信して（ステップＳ１３０６）、本フローチャートによる一連の処理を終了する。これにより、情報処理装置１０１からのアプリＡＰＬ２の先行処理の依頼に応じて、センサＣから取得したデータに対してアプリＡＰＬ２の処理を施すことができる。
【０１７３】
（サーバＳＶｊの処理制御処理手順）
つぎに、図１４を用いて、サーバＳＶｊの処理制御処理手順について説明する。
【０１７４】
図１４は、サーバＳＶｊの処理制御処理手順の一例を示すフローチャートである。図１４のフローチャートにおいて、まず、サーバＳＶｊは、タイマが満了したか否かを判断する（ステップＳ１４０１）。ここで、サーバＳＶｊは、タイマが満了するのを待つ（ステップＳ１４０１：Ｎｏ）。
【０１７５】
そして、サーバＳＶｊは、タイマが満了した場合（ステップＳ１４０１：Ｙｅｓ）、情報処理装置１０１からデータを受信する（ステップＳ１４０２）。つぎに、サーバＳＶｊは、受信したデータに含まれるリコメンド情報が「ＯＦＦ」であるか否かを判断する（ステップＳ１４０３）。
【０１７６】
ここで、リコメンド情報が「ＯＦＦ」の場合（ステップＳ１４０３：Ｙｅｓ）、サーバＳＶｊは、受信したデータにアプリＡＰＬ２の処理を施す（ステップＳ１４０４）。そして、サーバＳＶｊは、アプリＡＰＬ２の処理を施した処理後のデータをデータベース（不図示）に格納して（ステップＳ１４０５）、本フローチャートによる一連の処理を終了する。
【０１７７】
また、ステップＳ１４０３において、リコメンド情報が「ＯＮ」の場合（ステップＳ１４０３：Ｎｏ）、サーバＳＶｊは、受信したデータをデータベース（不図示）に格納して（ステップＳ１４０５）、本フローチャートによる一連の処理を終了する。これにより、アプリＡＰＬ２の処理にかかるサーバＳＶｊの負荷を削減することができる。
【０１７８】
以上説明したように、実施の形態にかかる情報処理装置１０１によれば、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋ（グループＧｋの負荷値Ｌｋ）を算出することができる。グループＧｋの負荷値Ｌｋは、単位時間当たりのデータの受信量、および／または、単位時間当たりのデータの受信処理回数（または、送信処理回数）で表される。そして、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準に達する場合に、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理を依頼することができる。所定の処理は、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、グループＧｋに属するゲートウェイ装置ＧＷでも処理可能な処理（例えば、アプリＡＰＬ２）である。
【０１７９】
これにより、グループＧｋの負荷値Ｌｋに応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、サーバＳＶｊからグループＧｋに属するゲートウェイ装置ＧＷに切り替えることができる。この結果、グループＧｋに属するゲートウェイ装置ＧＷにより収集されるデータに対して所定の処理を施す場所を最適化することができ、収集されるデータの処理にかかる負荷を適切に分散することができる。
【０１８０】
また、情報処理装置１０１によれば、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の指標値Ｌtotal（グループＧALLの負荷値Ｌtotal）を算出することができる。そして、情報処理装置１０１によれば、グループＧALLの負荷値Ｌtotalが所定の基準に達する場合に、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎに、所定の処理の先行処理を依頼することができる。
【０１８１】
これにより、グループＧALL（システム全体）の負荷値Ｌtotalに応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、各サーバＳＶｊから各グループＧ１〜ＧＫに属するゲートウェイ装置ＧＷに切り替えることができる。
【０１８２】
また、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準を満たす場合と、グループＧALLの負荷値Ｌtotalが所定の基準を満たす場合とで、先行処理を依頼する対象のゲートウェイ装置ＧＷを、グループＧｋに属するゲートウェイ装置ＧＷの範囲内とするか、ゲートウェイ装置ＧＷ１〜ＧＷｎの範囲内とするかを切り替えることができる。
【０１８３】
これにより、各グループＧｋに着目すると負荷値Ｌｋが閾値に達していないような場合であっても、システム全体としての負荷値Ｌtotalが閾値に達している場合には、各ゲートウェイ装置ＧＷ１〜ＧＷｎにより収集されるデータの処理にかかる負荷を分散することができる。一方、システム全体としての負荷値Ｌtotalが閾値に達していない場合であっても、あるグループＧｋの負荷値Ｌｋが閾値に達している場合には、グループＧｋに属するゲートウェイ装置ＧＷにより収集されるデータの処理にかかる負荷を分散することができる。
【０１８４】
また、情報処理装置１０１によれば、ゲートウェイ装置ＧＷｉにおいて先行処理が施される前に受信したデータと、先行処理が施された後に受信したデータとで、サーバＳＶｊに対して処理を依頼する際に指定するアドレスを切り替えることができる。これにより、ゲートウェイ装置ＧＷｉから送信されるデータに、当該データが処理済であるか否かを示す情報（例えば、リコメンド情報）を含めなくても、サーバＳＶｊにおいて各データに対するアプリＡＰＬ２の実行状況に応じた処理を実行することができる。
【０１８５】
また、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準を下回る場合には、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理の解除を依頼することができる。これにより、グループＧｋの負荷値Ｌｋが低下したことに応じて、収集されるデータに対して所定の処理を施す場所をサーバ側に戻して、サーバＳＶｊのリソースを活用することができる。
【０１８６】
また、情報処理装置１０１によれば、グループＧALLの負荷値Ｌtotalが所定の基準を下回る場合には、各ゲートウェイ装置ＧＷ１〜ＧＷｎに、所定の処理の先行処理の解除を依頼することができる。これにより、システム全体としての負荷値Ｌtotalが低下したことに応じて、収集されるデータに対して所定の処理を施す場所をサーバ側に戻して、各サーバＳＶ１〜ＳＶｍのリソースを活用することができる。
【０１８７】
また、実施の形態にかかるゲートウェイ装置ＧＷｉによれば、情報処理装置１０１から、所定の処理の先行処理の依頼を受信すると、収集したデータに所定の処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて情報処理装置１０１に送信することができる。これにより、ゲートウェイ装置ＧＷｉから送信されるデータの処理の依頼先のサーバＳＶｊにおいて、当該データが処理済であるか否かを判別することが可能となり、当該データに対する所定の処理（例えば、アプリＡＰＬ２）の実行状況に応じた処理を実行することができる。
【０１８８】
なお、本実施の形態で説明した処理制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本処理制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本処理制御プログラムは、インターネット等のネットワークを介して配布してもよい。
【符号の説明】
【０１８９】
１０１  情報処理装置
１０２，１０３  通信装置
１０４，１０５，Ｃ  センサ
１０６，１０７  情報処理装置
２００  処理制御システム
２２０  収集データＤＢ
２３０  負荷条件テーブル
２４０  負荷状態テーブル
６０１，７０２  通信制御部
６０２  算出部
６０３  判断部
７０１  取得部
７０３  実行部
ＧＷ１〜ＧＷｎ，ＧＷｉ  ゲートウェイ装置
ＳＶ１〜ＳＶｍ，ＳＶｊ  サーバ
【図１】
2017141339.tif 000003
【図２】
2017141339.tif 000004
【図３】
2017141339.tif 000005
【図４】
2017141339.tif 000006
【図５】
2017141339.tif 000007
【図６】
2017141339.tif 000008
【図７】
2017141339.tif 000009
【図８】
2017141339.tif 000010
【図９】
2017141339.tif 000011
【図１０】
2017141339.tif 000012
【図１１】
2017141339.tif 000013
【図１２】
2017141339.tif 000014
【図１３】
2017141339.tif 000015
【図１４】
2017141339.tif 000016
【手続補正書】
【提出日】平成30年5月29日(2018.5.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項２】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項３】
コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行させることを特徴とする処理制御プログラム。
【請求項４】
前記コンピュータに、
前記先行処理が施される前に受信したデータと、前記先行処理が施された後に受信したデータとで、前記情報処理装置に対して処理を依頼する際に指定するアドレスを切り替える、処理を実行させることを特徴とする請求項１〜３のいずれか一つに記載の処理制御プログラム。
【請求項５】
前記指標値は、単位時間当たりの前記データの受信量、および／または単位時間当たりのデータの受信または送信処理回数である、ことを特徴とする請求項１〜４のいずれか一つに記載の処理制御プログラム。
【請求項６】
収集したデータを送信する通信装置に、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行させることを特徴とする処理制御プログラム。
【請求項７】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【請求項８】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【請求項９】
コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行することを特徴とする処理制御方法。
【請求項１０】
収集したデータを送信する通信装置が、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行することを特徴とする処理制御方法。
【請求項１１】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【請求項１２】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【請求項１３】
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
制御部を有することを特徴とする情報処理装置。
【請求項１４】
収集したデータを送信する通信装置であって、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
制御部を有することを特徴とする通信装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理制御プログラム、処理制御方法、情報処理装置、および通信装置に関する。
【背景技術】
【０００２】
近年、モノのインターネット化（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）が進んでおり、人やモノから収集したセンサデータを活用することで、新たな価値やビジネスが生まれている。また、人やモノから収集した大量のセンサデータを扱うための各種機能をクラウドサービスとして提供することが行われている。
【０００３】
先行技術としては、クライアント・サーバシステムにおいて、クライアントノードとサーバノードとの間で負荷分散を行うものがある。例えば、サーバノードは、クライアントノードから処理要求信号を受信すると、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）使用率を取得し、ＣＰＵ使用率が設定値以上である場合には、要求された処理をクライアントノードに実行させる旨の応答信号を送信するものがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−５３３２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、収集されるセンサデータの処理を実行するサーバの負荷が増大するという問題がある。例えば、どのようなタイミングでどのようなセンサデータが収集されるのかを予測することは難しく、収集されるセンサデータのデータ量の増加に伴って、サーバの負荷が急激に増大してしまう場合がある。
【０００６】
一つの側面では、本発明は、データの処理にかかる負荷を適切に分散する処理制御プログラム、処理制御方法、情報処理装置、および通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する処理制御プログラム、処理制御方法、および情報処理装置が提案される。
【０００８】
また、本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する処理制御プログラム、処理制御方法、および情報処理装置が提案される。
【０００９】
また、本発明の一態様によれば、それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、受信したデータの処理を対応する情報処理装置に依頼し、前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う処理制御プログラム、処理制御方法、および情報処理装置が提案される。
【００１０】
また、本発明の一態様によれば、収集したデータを送信する通信装置が、収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する処理制御プログラム、処理制御方法、および通信装置が提案される。
【発明の効果】
【００１１】
本発明の一側面によれば、データの処理にかかる負荷を分散することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態にかかる処理制御方法の一実施例を示す説明図である。
【図２】図２は、処理制御システム２００のシステム構成例を示す説明図である。
【図３】図３は、情報処理装置１０１等のハードウェア構成例を示すブロック図である。
【図４】図４は、負荷条件テーブル２３０の記憶内容の一例を示す説明図である。
【図５】図５は、負荷状態テーブル２４０の記憶内容の一例を示す説明図である。
【図６】図６は、情報処理装置１０１の機能的構成例を示すブロック図である。
【図７】図７は、ゲートウェイ装置ＧＷｉの機能的構成例を示すブロック図である。
【図８】図８は、情報処理装置１０１の第１の処理制御処理手順の一例を示すフローチャートである。
【図９】図９は、負荷判定処理手順の具体的処理手順の一例を示すフローチャートである。
【図１０】図１０は、情報処理装置１０１の第２の処理制御処理手順の一例を示すフローチャートである。
【図１１】図１１は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャート（その１）である。
【図１２】図１２は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャート（その２）である。
【図１３】図１３は、ゲートウェイ装置ＧＷｉの処理制御処理手順の一例を示すフローチャートである。
【図１４】図１４は、サーバＳＶｊの処理制御処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に図面を参照して、本発明にかかる処理制御プログラム、処理制御方法、情報処理装置、および通信装置の実施の形態を詳細に説明する。
【００１４】
（実施の形態）
図１は、実施の形態にかかる処理制御方法の一実施例を示す説明図である。図１において、情報処理装置１０１は、データの処理にかかる負荷分散を行うコンピュータである。データは、例えば、各通信装置１０２，１０３により収集されるデータである。
【００１５】
通信装置１０２，１０３は、収集したデータを情報処理装置１０１に送信するコンピュータである。収集されるデータは、センサ１０４，１０５により計測される物理量、例えば、ある場所の温度、湿度、明るさや、ある物体の位置、向き、速度、加速度などの物理量を示す情報である。
【００１６】
情報処理装置１０１は、通信装置１０２，１０３のそれぞれから受信したデータの処理を対応する情報処理装置１０６，１０７に依頼する。情報処理装置１０６，１０７は、依頼されたデータの処理を実行するコンピュータである。
【００１７】
各通信装置１０２，１０３と、各通信装置１０２，１０３が収集したデータの処理の依頼先となる情報処理装置１０６，１０７との対応関係は予め設定されている。例えば、通信装置１０２が収集したデータの処理の依頼先は情報処理装置１０６である。また、通信装置１０３が収集したデータの処理の依頼先は情報処理装置１０７である。
【００１８】
各通信装置１０２，１０３は、アプリケーションＡＰＬ１，ＡＰＬ２をそれぞれ有する。また、各情報処理装置１０６，１０７は、アプリケーションＡＰＬ２，ＡＰＬ３をそれぞれ有する。なお、以下の説明では、アプリケーションを単に「アプリ」と表記する場合がある。
【００１９】
アプリＡＰＬ１は、通信装置１０２，１０３で動作可能なアプリであり、例えば、センサ１０４，１０５からデータを収集するアプリである。アプリＡＰＬ２は、通信装置１０２，１０３および情報処理装置１０６，１０７のいずれでも動作可能なアプリであり、例えば、収集されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。アプリＡＰＬ３は、情報処理装置１０６，１０７で動作可能なアプリであり、例えば、アプリＡＰＬ２で処理されたデータについて各種分析、解析を行うアプリである。
【００２０】
ここで、情報処理装置１０６，１０７側でのみアプリＡＰＬ２を動作させると、収集されるデータ量が多くなるにつれて、アプリＡＰＬ２の実行にかかる情報処理装置１０６，１０７の負荷が増大する。さらに、収集されたデータの転送にかかる情報処理装置１０１の負荷も増大する。
【００２１】
一方、通信装置１０２，１０３側でのみアプリＡＰＬ２を動作させると、情報処理装置１０６，１０７や情報処理装置１０１にかかる負荷を削減できる。ところが、通信装置１０２，１０３側でのみアプリＡＰＬ２を動作させると、通信装置１０２，１０３の負荷が増大するとともに、情報処理装置１０６，１０７のリソースを十分に活用できない。
【００２２】
そこで、本実施の形態では、収集されるデータに対して所定の処理（例えば、アプリＡＰＬ２）を施す場所を最適化することで、収集されるデータの処理にかかる負荷を適切に分散する処理制御方法について説明する。以下、情報処理装置１０１の処理例について説明する。
【００２３】
（１）情報処理装置１０１は、通信装置１０２，１０３のうち、特定のグループに属する通信装置から受信するデータに関する負荷の指標値を算出する。ここで、特定のグループとは、所定のルールに沿って分類された通信装置を含むグループであり、例えば、特定の顧客（テナント）が使用する通信装置をグルーピングしたものである。
【００２４】
負荷の指標値は、例えば、単位時間当たりのデータの受信量を用いて表すことにしてもよい（単位：ｂｐｓ（ｂｉｔ  ｐｅｒ  ｓｅｃｏｎｄ））。また、負荷の指標値は、例えば、単位時間当たりのデータの受信または送信処理回数を用いて表すことにしてもよい（単位：ｔｐｓ（ｔｒａｎｓａｃｔｉｏｎ  ｐｅｒ  ｓｅｃｏｎｄ））。
【００２５】
図１の例では、グループＡに属する通信装置１０２と、グループＢに属する通信装置１０３とが示されている。ここでは、特定のグループに属する通信装置を「グループＡに属する通信装置１０２」とし、通信装置１０２から受信するデータに関する負荷の指標値が算出された場合を想定する。
【００２６】
（２）情報処理装置１０１は、算出した負荷の指標値が所定の基準に達するか否かを判断する。ここで、所定の基準は、任意に設定可能であり、例えば、特定のグループ（顧客）ごとに設定される。例えば、所定の基準は、負荷の指標値が当該基準に達すると、特定のグループに属する通信装置から受信するデータの処理を依頼する依頼先の情報処理装置の負荷を分散したほうがよいと判断できる値に設定される。
【００２７】
図１の例では、グループＡに属する通信装置１０２から受信するデータに関する負荷の指標値が所定の基準に達する場合を想定する。
【００２８】
（３）情報処理装置１０１は、負荷の指標値が所定の基準に達する場合に、特定のグループに属する通信装置に、所定の処理の先行処理を依頼する。ここで、所定の処理とは、特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、特定のグループに属する通信装置でも処理可能な処理である。
【００２９】
また、所定の処理の先行処理を依頼するとは、特定のグループに属する通信装置に対して、依頼先の情報処理装置に先行して所定の処理を実行するよう指示することである。すなわち、情報処理装置１０１は、特定のグループに属する通信装置でも処理可能な処理を、当該通信装置に依頼先の情報処理装置の代わりに実行させる。
【００３０】
図１の例では、所定の処理は、グループＡに属する通信装置１０２から受信するデータの依頼先の情報処理装置１０６が実行するアプリＡＰＬ２，ＡＰＬ３のうち、通信装置１０２でも処理可能なアプリＡＰＬ２である。この場合、情報処理装置１０１は、グループＡに属する通信装置１０２にアプリＡＰＬ２の先行処理を依頼する。
【００３１】
このように、情報処理装置１０１によれば、特定のグループに属する通信装置から受信するデータに関する負荷に応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、特定のグループに属する通信装置に切り替えることができる。これにより、特定のグループに属する通信装置により収集されるデータに対して所定の処理を施す場所を最適化して、収集されるデータの処理にかかる負荷を適切に分散することができる。
【００３２】
図１の例では、グループＡに属する通信装置１０２に対してアプリＡＰＬ２の先行処理が依頼された結果、通信装置１０２において、収集されるデータに対してアプリＡＰＬ２が先行して実行される。これにより、アプリＡＰＬ２の実行にかかる依頼先の情報処理装置１０６の負荷を削減することができ、通信装置１０２により収集されるデータの処理にかかる負荷を分散することができる。
【００３３】
（処理制御システム２００のシステム構成例）
つぎに、実施の形態にかかる処理制御システム２００のシステム構成例について説明する。
【００３４】
図２は、処理制御システム２００のシステム構成例を示す説明図である。図２において、処理制御システム２００は、情報処理装置１０１と、ゲートウェイ装置ＧＷ１〜ＧＷｎ（ｎ：２以上の自然数）と、サーバＳＶ１〜ＳＶｍ（ｍ：２以上の自然数）と、複数のセンサＣと、を含む。処理制御システム２００において、情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍは、有線または無線のネットワーク２１０を介して接続される。ネットワーク２１０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどである。
【００３５】
情報処理装置１０１は、収集データＤＢ（ＤａｔａＢａｓｅ）２２０、負荷条件テーブル２３０および負荷状態テーブル２４０を有し、ゲートウェイ装置ＧＷ１〜ＧＷｎが収集するデータの処理にかかる負荷分散を行う。収集データＤＢ２２０は、ゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータを記憶する。負荷条件テーブル２３０および負荷状態テーブル２４０の記憶内容については、図４および図５を用いて後述する。
【００３６】
ゲートウェイ装置ＧＷ１〜ＧＷｎは、センサＣから収集したデータを、情報処理装置１０１に送信するコンピュータである。各ゲートウェイ装置ＧＷ１〜ＧＷｎと各センサＣとは、有線または無線のネットワークを介して接続される。各ゲートウェイ装置ＧＷ１〜ＧＷｎは、アプリＡＰＬ１，ＡＰＬ２をそれぞれ有する。
【００３７】
アプリＡＰＬ１は、ゲートウェイ装置ＧＷ１〜ＧＷｎで動作可能なアプリであり、例えば、センサＣからデータを収集するアプリである。アプリＡＰＬ２は、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍのいずれでも動作可能なアプリであり、例えば、収集されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。
【００３８】
例えば、ゲートウェイ装置ＧＷ１〜ＧＷｎは、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）などのアクセスポイントであってもよく、また、スマートフォン、タブレットＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ノートＰＣなどであってもよい。図１に示した通信装置１０２，１０３は、例えば、ゲートウェイ装置ＧＷ１〜ＧＷｎに相当する。
【００３９】
センサＣは、例えば、ある場所の温度、湿度、明るさや、ある物体の位置、向き、速度、加速度などの物理量を計測する。センサＣは、例えば、ウェアラブル端末、家庭用電気製品、監視カメラ、携帯型ゲーム機などに搭載される。図１に示したセンサ１０４，１０５は、例えば、センサＣに対応する。
【００４０】
サーバＳＶ１〜ＳＶｍは、情報処理装置１０１から依頼されたデータの処理を実行するコンピュータである。各サーバＳＶ１〜ＳＶｍは、アプリＡＰＬ２，ＡＰＬ３を有する。アプリＡＰＬ３は、サーバＳＶ１〜ＳＶｍで動作可能なアプリであり、例えば、アプリＡＰＬ２で処理されたデータについて各種分析、解析を行うアプリである。図１に示した情報処理装置１０６，１０７は、例えば、サーバＳＶ１〜ＳＶｍに対応する。
【００４１】
以下の説明では、ゲートウェイ装置ＧＷ１〜ＧＷｎのうちの任意のゲートウェイ装置を「ゲートウェイ装置ＧＷｉ」と表記する場合がある（ｉ＝１，２，…，ｎ）。また、サーバＳＶ１〜ＳＶｍのうちの任意のサーバを「サーバＳＶｊ」と表記する場合がある（ｊ＝１，２，…，ｍ）。
【００４２】
各ゲートウェイ装置ＧＷ１〜ＧＷｎは、グループＧ１〜ＧＫのうちのいずれかのグループＧｋに属している（Ｋ：２以上の自然数、ｋ＝１，２，…，Ｋ）。各グループＧｋは、上述した「特定のグループ」に相当しており、例えば、特定の顧客（テナント）が使用するゲートウェイ装置ＧＷをグルーピングしたものである。
【００４３】
（情報処理装置１０１等のハードウェア構成例）
つぎに、図２に示した情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍのハードウェア構成例について説明する。ここでは説明の都合上、情報処理装置１０１、ゲートウェイ装置ＧＷ１〜ＧＷｎおよびサーバＳＶ１〜ＳＶｍを「情報処理装置１０１等」と表記する。
【００４４】
図３は、情報処理装置１０１等のハードウェア構成例を示すブロック図である。図３において、情報処理装置１０１等は、ＣＰＵ３０１と、メモリ３０２と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０３と、ディスクドライブ３０４と、ディスク３０５と、を有する。また、各構成部は、バス３００によってそれぞれ接続される。
【００４５】
ここで、ＣＰＵ３０１は、情報処理装置１０１等の全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。
【００４６】
Ｉ／Ｆ３０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して外部のコンピュータに接続される。そして、Ｉ／Ｆ３０３は、ネットワーク２１０と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。Ｉ／Ｆ３０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００４７】
ディスクドライブ３０４は、ＣＰＵ３０１の制御に従ってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００４８】
なお、情報処理装置１０１等は、上述した構成部のほかに、例えば、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、キーボード、マウス、ディスプレイ等を有することにしてもよい。
【００４９】
（負荷条件テーブル２３０の記憶内容）
つぎに、情報処理装置１０１が有する負荷条件テーブル２３０の記憶内容について説明する。負荷条件テーブル２３０は、例えば、図３に示した情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置により実現される。
【００５０】
図４は、負荷条件テーブル２３０の記憶内容の一例を示す説明図である。図４において、負荷条件テーブル２３０は、グループＩＤ、ＯＮ条件およびＯＦＦ条件のフィールドを有し、各フィールドに情報を設定することで、負荷条件情報４００−１〜４００−（Ｋ＋１）をレコードとして記憶する。
【００５１】
ここで、グループＩＤは、グループＧｋを一意に識別する識別子である。ただし、グループＩＤ「ＡＬＬ」は、全グループＧ１〜ＧＫを包含したものを表す。ＯＮ条件は、グループＧｋに属するゲートウェイ装置ＧＷｉが収集したデータについて、ゲートウェイ装置ＧＷｉに対応するサーバＳＶｊが実行する処理のうち、ゲートウェイ装置ＧＷｉでも処理可能な処理の先行処理を依頼する条件である。ＯＦＦ条件は、ＯＮ条件を解除する条件である。
【００５２】
なお、図４の例では、ＯＮ条件およびＯＦＦ条件として、単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）に基づく閾値を設定することにしたが、これに限らない。例えば、負荷条件テーブル２３０には、単位時間当たりのデータの受信量（単位：ｂｐｓ）に基づく閾値がＯＮ条件およびＯＦＦ条件として設定されることにしてもよい。
【００５３】
（負荷状態テーブル２４０の記憶内容）
つぎに、情報処理装置１０１が有する負荷状態テーブル２４０の記憶内容について説明する。負荷状態テーブル２４０は、例えば、情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置により実現される。
【００５４】
図５は、負荷状態テーブル２４０の記憶内容の一例を示す説明図である。図５において、負荷状態テーブル２４０は、グループＩＤ、負荷および負荷状態のフィールドを有し、各フィールドに情報を設定することで、負荷状態情報５００−１〜５００−（Ｋ＋１）をレコードとして記憶する。
【００５５】
ここで、グループＩＤは、グループＧｋを一意に識別する識別子である。ただし、グループＩＤ「ＡＬＬ」は、全グループＧ１〜ＧＫを包含したものを表す。負荷は、グループＧｋに属するゲートウェイ装置ＧＷから受信するデータに関する負荷の指標値である。負荷の指標値は、例えば、単位時間当たりのデータの受信または送信処理回数を用いて表される（単位：ｔｐｓ）。
【００５６】
負荷状態は、グループＧｋの負荷状態を示す。負荷状態としては、例えば、ＯＮ状態またはＯＦＦ状態が設定される。ＯＮ状態は、グループＧｋのＯＮ条件（例えば、図４参照）を満たした場合に設定される負荷状態である。ＯＦＦ状態は、初期状態、あるいは、グループＧｋのＯＦＦ条件（例えば、図４参照）を満たした場合に設定される負荷状態である。
【００５７】
（情報処理装置１０１の機能的構成例）
図６は、情報処理装置１０１の機能的構成例を示すブロック図である。図６において、情報処理装置１０１は、通信制御部６０１と、算出部６０２と、判断部６０３と、を含む構成である。通信制御部６０１〜判断部６０３は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２、ディスク３０５などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【００５８】
通信制御部６０１は、ゲートウェイ装置ＧＷｉからデータを受信する。受信されるデータは、例えば、ゲートウェイ装置ＧＷｉに接続されたセンサＣにより計測された物理量を示す情報である。また、受信されるデータには、例えば、ゲートウェイ装置ＧＷｉが属するグループＧｋを特定する情報が付加されている。
【００５９】
グループＧｋを特定する情報は、例えば、データを格納する転送リソースのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）であってもよい。リソースとは、データを蓄積する単位であり、例えば、１つの同じ意味を持つ連続したデータを格納する格納場所である。
【００６０】
各リソースには、例えば、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）  ＲＥＳＴ（ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）やＭＱＴＴ（ＭＱ  Ｔｅｌｅｍｅｔｒｙ  Ｔｒａｎｓｐｏｒｔ）を利用してアクセスすることができる。
【００６１】
情報処理装置１０１は、例えば、転送リソースのＵＲＬに対応するグループＧｋを、ゲートウェイ装置ＧＷｉが属するグループＧｋとして特定することができる。ただし、転送リソースのＵＲＬとグループＧｋとの対応関係を示す情報は、例えば、情報処理装置１０１のメモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【００６２】
また、グループＧｋを特定する情報は、例えば、ゲートウェイ装置ＧＷｉが属するグループＧｋを識別する情報、例えば、グループＧｋのグループＩＤであってもよい。この場合、情報処理装置１０１は、受信されたデータに付加されたグループＩＤからゲートウェイ装置ＧＷｉが属するグループＧｋを特定することができる。
【００６３】
受信されたデータは、例えば、図２に示した収集データＤＢ２２０に記憶される。より具体的には、例えば、受信されたデータは、当該データに付加されたＵＲＬから特定される転送リソース（収集データＤＢ２２０内の格納場所）に格納される。
【００６４】
算出部６０２は、ゲートウェイ装置ＧＷ１〜ＧＷｎのうち、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋを算出する。なお、上述したように、ゲートウェイ装置ＧＷｉが属するグループＧｋを特定する情報は、例えば、ゲートウェイ装置ＧＷｉから受信されるデータに付加されている。
【００６５】
以下の説明では、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋを「グループＧｋの負荷値Ｌｋ」と表記する場合がある。
【００６６】
具体的には、例えば、算出部６０２は、グループＧｋに属するゲートウェイ装置ＧＷから受信した単位時間当たりのデータの受信量を計測することにより、グループＧｋの負荷値Ｌｋ（単位：ｂｐｓ）を算出することにしてもよい。一例として、グループＧ１にゲートウェイ装置ＧＷ１，ＧＷ２が属する場合を想定する。この場合、算出部６０２は、ゲートウェイ装置ＧＷ１，ＧＷ２から受信した単位時間当たりのデータの受信量を計測することにより、グループＧ１の負荷値Ｌ１を算出する。
【００６７】
また、例えば、算出部６０２は、グループＧｋに属するゲートウェイ装置ＧＷから受信した単位時間当たりのデータの受信処理回数（または、送信処理回数）を計測することにより、グループＧｋの負荷値Ｌｋ（単位：ｔｐｓ）を算出することにしてもよい。一例として、グループＧ１にゲートウェイ装置ＧＷ１，ＧＷ２が属する場合を想定する。この場合、算出部６０２は、ゲートウェイ装置ＧＷ１，ＧＷ２から受信した単位時間当たりのデータの受信処理回数を計測することにより、グループＧ１の負荷値Ｌ１を算出する。
【００６８】
算出された各グループＧｋの負荷値Ｌｋは、例えば、各グループＧｋのグループＩＤと対応付けて、図５に示した負荷状態テーブル２４０に記憶される。
【００６９】
また、算出部６０２は、ゲートウェイ装置ＧＷ１〜ＧＷｎのうち、少なくとも第１のグループＧに属するゲートウェイ装置ＧＷと第２のグループＧに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌtotalを算出する。第１および第２のグループＧは任意に設定可能である。すなわち、負荷の指標値Ｌtotalは、グループＧ１〜ＧＫのうちの２以上のグループＧのいずれかに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値として定義することができる。
【００７０】
以下の説明では、グループＧALL（すなわち、グループＧ１〜ＧＫ）に属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の指標値Ｌtotalを「グループＧALLの負荷値Ｌtotal」と表記する場合がある。
【００７１】
具体的には、例えば、算出部６０２は、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信量を計測することにより、グループＧALLの負荷値Ｌtotal（単位：ｂｐｓ）を算出することにしてもよい。より具体的には、例えば、算出部６０２は、各グループＧ１〜ＧＫの負荷値Ｌ１〜ＬＫ（単位：ｂｐｓ）を累積することにより、グループＧALLの負荷値Ｌtotal（単位：ｂｐｓ）を算出する。
【００７２】
また、例えば、算出部６０２は、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信処理回数（または、送信処理回数）を計測することにより、グループＧALLの負荷値Ｌtotal（単位：ｔｐｓ）を算出することにしてもよい。より具体的には、例えば、算出部６０２は、各グループＧ１〜ＧＫの負荷値Ｌ１〜ＬＫ（単位：ｔｐｓ）を累積することにより、グループＧALLの負荷値Ｌtotal（単位：ｔｐｓ）を算出する。
【００７３】
算出されたグループＧALLの負荷値Ｌtotalは、例えば、グループＩＤ「ＡＬＬ」と対応付けて、図５に示した負荷状態テーブル２４０に記憶される。
【００７４】
判断部６０３は、グループＧｋの負荷値Ｌｋが所定の基準に達するか否かを判断する。所定の基準は、任意に設定可能であり、例えば、図４に示した負荷条件テーブル２３０内のＯＮ条件に相当する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧｋの負荷値Ｌｋが、グループＧｋのＯＮ条件を満たすか否かを判断する。
【００７５】
一例として、グループＧ１を例に挙げると、判断部６０３は、算出されたグループＧ１の負荷値Ｌ１が、グループＧｋのＯＮ条件「１００ｔｐｓ以上」を満たすか否かを判断する。ただし、グループＧ１の負荷値Ｌ１を、グループＧ１に属するゲートウェイ装置から受信した単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）とする。
【００７６】
判断された判断結果は、例えば、図５に示した負荷状態テーブル２４０に記憶される。例えば、グループＧｋの負荷値ＬｋがグループＧｋのＯＮ条件を満たすと判断された場合、グループＧｋに対応する負荷状態が「ＯＮ」に設定される。
【００７７】
また、判断部６０３は、負荷の指標値Ｌtotalが所定の基準に達するか否かを判断する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件「１２０ｔｐｓ以上」を満たすか否かを判断する。ただし、グループＧALLの負荷値Ｌtotalを、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信した単位時間当たりのデータの受信処理回数（単位：ｔｐｓ）とする。
【００７８】
判断された判断結果は、例えば、図５に示した負荷状態テーブル２４０に記憶される。例えば、グループＧALLの負荷値ＬtotalがグループＧALLのＯＮ条件を満たすと判断された場合、グループＧALLに対応する負荷状態が「ＯＮ」に設定される。
【００７９】
通信制御部６０１は、グループＧｋの負荷値Ｌｋが所定の基準に達する場合に、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理を依頼する。ここで、所定の処理は、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、グループＧｋに属するゲートウェイ装置ＧＷでも処理可能な処理である。
【００８０】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」の場合、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信する。ここで、ＯＮ情報とは、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。
【００８１】
すなわち、ＯＮ情報は、アプリＡＰＬ２の先行処理の依頼に相当する。アプリＡＰＬ２は、上述したように、グループＧｋに属する各ゲートウェイ装置ＧＷｉから受信するデータの依頼先のサーバＳＶｊが実行するアプリＡＰＬ２，ＡＰＬ３のうち、各ゲートウェイ装置ＧＷｉでも処理可能なアプリケーションである。
【００８２】
なお、通信制御部６０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉから受信するデータの依頼先のサーバＳＶｊが実行するアプリＡＰＬ２，ＡＰＬ３のうち、各ゲートウェイ装置ＧＷｉでも処理可能なアプリＡＰＬ２を特定することにしてもよい。各ゲートウェイ装置ＧＷｉや各サーバＳＶｊが実行するアプリを特定する情報は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【００８３】
そして、通信制御部６０１は、グループＧｋの負荷状態が「ＯＮ」の場合に、グループＧｋに属する各ゲートウェイ装置ＧＷｉに、特定したアプリＡＰＬ２の先行処理を依頼することにしてもよい。具体的には、例えば、通信制御部６０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉに、先行処理を依頼するアプリ（例えば、アプリＡＰＬ２）を特定する情報を含むＯＮ情報を送信することにしてもよい。
【００８４】
また、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準に達する場合、第１のグループＧに属するゲートウェイ装置ＧＷに第１の処理の先行処理を依頼する。さらに、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準に達する場合、第２のグループＧに属するゲートウェイ装置ＧＷに第２の処理の先行処理を依頼する。
【００８５】
ここで、第１の処理は、第１のグループＧに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、第１のグループＧに属するゲートウェイ装置ＧＷでも処理可能な処理である。また、第２の処理は、第２のグループＧに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、第２のグループＧに属するゲートウェイ装置ＧＷでも処理可能な処理である。
【００８６】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」の場合、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎのそれぞれにＯＮ情報を送信する。ＯＮ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。
【００８７】
通信制御部６０１は、ゲートウェイ装置ＧＷｉから受信されたデータの処理を対応するサーバＳＶｊに依頼する。受信されたデータが、サーバＳＶｊが実行する処理のうちゲートウェイ装置ＧＷｉでも処理可能な処理が施されたデータの場合には、当該データに処理済であることを示す情報が対応付けられている。
【００８８】
例えば、受信されたデータには、当該データが処理済であるか否かを示すリコメンド情報が含まれる。リコメンド情報が「ＯＮ」の場合は、データが処理済であることを示す。一方、リコメンド情報が「ＯＦＦ」の場合は、データが処理済ではないことを示す。
【００８９】
具体的には、例えば、通信制御部６０１は、受信されたデータに付加されている転送リソースのＵＲＬに対応するサーバＳＶｊのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）のＵＲＬを特定する。なお、転送リソースのＵＲＬとＡＰＩのＵＲＬとの対応関係を示す情報は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【００９０】
そして、通信制御部６０１は、特定したＡＰＩのＵＲＬを指定して、受信されたデータを送信する。これにより、ゲートウェイ装置ＧＷｉから受信されたデータが、当該データの処理に対応するサーバＳＶｊに転送される。この結果、サーバＳＶｊにおいて、指定されたＵＲＬのＡＰＩが呼び出されてデータが処理される。
【００９１】
具体的には、例えば、サーバＳＶｊは、情報処理装置１０１から受信したデータに含まれるリコメンド情報が「ＯＮ」の場合、当該データをデータベース（不図示）に格納する。一方、リコメンド情報が「ＯＦＦ」の場合には、サーバＳＶｊは、当該データに対してアプリＡＰＬ２の処理を施して、処理後のデータをデータベース（不図示）に格納する。
【００９２】
なお、サーバＳＶｊのデータベース（不図示）に蓄積されたデータは、例えば、アプリＡＰＬ３の実行に用いられる。また、サーバＳＶｊにおけるアプリＡＰＬ３の実行タイミングは、任意に設定可能である。
【００９３】
また、通信制御部６０１は、ゲートウェイ装置ＧＷｉにおいて先行処理が施される前に受信したデータと、先行処理が施された後に受信したデータとで、サーバＳＶｊに対して処理を依頼する際に指定するアドレスを切り替えることにしてもよい。
【００９４】
具体的には、例えば、通信制御部６０１は、受信されたデータに付加された転送リソースのＵＲＬが、第１の転送リソースのＵＲＬの場合、第１の転送リソースのＵＲＬに対応付けられたサーバＳＶｊの第１のＡＰＩのＵＲＬを特定する。第１の転送リソースは、先行処理が施された処理済のデータを格納する転送リソースである。第１のＡＰＩは、情報処理装置１０１から受信されたデータをデータベース（不図示）に格納するためのＡＰＩである。そして、通信制御部６０１は、特定した第１のＡＰＩのＵＲＬを指定して、受信されたデータを送信する。
【００９５】
また、例えば、通信制御部６０１は、受信されたデータに付加された転送リソースのＵＲＬが、第２の転送リソースのＵＲＬの場合、第２の転送リソースのＵＲＬに対応付けられたサーバＳＶｊの第２のＡＰＩのＵＲＬを特定する。第２の転送リソースは、先行処理が施されていないデータを格納する転送リソースである。第２のＡＰＩは、情報処理装置１０１から受信されたデータに対してアプリＡＰＬ２の処理を施すためのＡＰＩである。そして、通信制御部６０１は、特定した第２のＡＰＩのＵＲＬを指定して、受信されたデータを送信する。
【００９６】
これにより、例えば、ゲートウェイ装置ＧＷｉから送信されるデータにリコメンド情報を含めなくても、サーバＳＶｊにおいて各データに対するアプリＡＰＬ２の実行状況に応じた処理を実行することができる。
【００９７】
また、判断部６０３は、グループＧｋの負荷値Ｌｋが所定の基準を下回ったか否かを判断する。ここで、所定の基準は、任意に設定可能であり、例えば、図４に示した負荷条件テーブル２３０内のＯＦＦ条件に相当する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧｋの負荷値Ｌｋが、グループＧｋのＯＦＦ条件を満たすか否かを判断する。一例として、グループＧ１を例に挙げると、判断部６０３は、算出されたグループＧ１の負荷値Ｌ１が、グループＧｋのＯＦＦ条件「５０ｔｐｓ以上」を満たすか否かを判断する。
【００９８】
また、通信制御部６０１は、グループＧｋの負荷値Ｌｋが所定の基準を下回る場合、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理の解除を依頼する。具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＦＦ」の場合、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する。
【００９９】
ここで、ＯＦＦ情報とは、情報処理装置１０１が受信したデータに関する負荷が所定の基準を下回ったことを通知する情報である。すなわち、ＯＦＦ情報は、アプリＡＰＬ２の先行処理の解除の依頼に相当する。これにより、グループＧｋの負荷値ＬｋがグループＧｋのＯＦＦ条件を満たすまで低下したことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに依頼したアプリＡＰＬ２の先行処理を解除することができる。
【０１００】
また、判断部６０３は、負荷の指標値Ｌtotalが所定の基準を下回ったか否かを判断する。具体的には、例えば、判断部６０３は、負荷条件テーブル２３０を参照して、算出されたグループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件「１００ｔｐｓ以下」を満たすか否かを判断する。
【０１０１】
また、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準を下回る場合、第１のグループＧに属するゲートウェイ装置ＧＷｉに第１の処理の先行処理の解除を依頼する。さらに、通信制御部６０１は、負荷の指標値Ｌtotalが所定の基準を下回る場合、第２のグループＧに属するゲートウェイ装置ＧＷｉに第２の処理の先行処理の解除を依頼する。
【０１０２】
具体的には、例えば、通信制御部６０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＦＦ」の場合、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎのそれぞれにＯＦＦ情報を送信する。これにより、グループＧALLの負荷値ＬtotalがグループＧALLのＯＦＦ条件を満たすまで低下したことに応じて、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎに依頼したアプリＡＰＬ２の先行処理を解除することができる。
【０１０３】
（ゲートウェイ装置ＧＷｉの機能的構成例）
図７は、ゲートウェイ装置ＧＷｉの機能的構成例を示すブロック図である。図７において、ゲートウェイ装置ＧＷｉは、取得部７０１と、通信制御部７０２と、実行部７０３と、を含む構成である。取得部７０１〜実行部７０３は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２、ディスク３０５などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【０１０４】
取得部７０１は、センサＣからデータを取得する。取得されるデータは、例えば、ゲートウェイ装置ＧＷｉに接続されたセンサＣにより計測された物理量を示す情報である。
【０１０５】
通信制御部７０２は、情報処理装置１０１から、所定の処理の先行処理の依頼を受け付ける。ここで、所定の処理は、情報処理装置１０１がゲートウェイ装置ＧＷｉから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、ゲートウェイ装置ＧＷｉでも処理可能な処理であり、例えば、アプリＡＰＬ２の処理である。
【０１０６】
具体的には、例えば、通信制御部７０２は、情報処理装置１０１からＯＮ情報を受信する。ＯＮ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準に達したことを通知する情報である。ＯＮ情報が受信されると、ゲートウェイ装置ＧＷｉのリコメンド情報に「ＯＮ」が設定される。
【０１０７】
リコメンド情報は、情報処理装置１０１に送信されるデータに書き込まれる情報であり、当該データが処理済であるか否かを示す。ゲートウェイ装置ＧＷｉのリコメンド情報は、例えば、図３に示したゲートウェイ装置ＧＷｉのメモリ３０２、ディスク３０５などの記憶装置に記憶される。
【０１０８】
実行部７０３は、センサＣから取得されたデータに、情報処理装置１０１から先行処理を依頼された処理を施す。具体的には、例えば、実行部７０３は、リコメンド情報が「ＯＮ」の場合に、センサＣから取得されたデータにアプリＡＰＬ２の処理を施す。アプリＡＰＬ２は、例えば、センサＣから取得されたデータを間引きしたり計算したりしてデータ量を減らすアプリである。
【０１０９】
なお、リコメンド情報が「ＯＮ」の場合に、センサＣから取得されたデータに対して実行される処理（例えば、アプリＡＰＬ２）は、例えば、予め決められている。ただし、情報処理装置１０１からのＯＮ情報に、先行処理を依頼された処理を特定する情報が含まれる場合には、実行部７０３は、取得されたデータに対して当該情報から特定される処理を施すことにしてもよい。
【０１１０】
通信制御部７０２は、センサＣから取得されたデータを情報処理装置１０１に送信する。また、通信制御部７０２は、センサＣから取得されたデータに先行処理を依頼された処理が施された場合には、処理後のデータを、処理済であることを示す情報と対応付けて情報処理装置１０１に送信する。
【０１１１】
具体的には、例えば、通信制御部７０２は、センサＣから取得されたデータ、または、処理後のデータにリコメンド情報を書き込むことにより、処理済であるか否かを示すリコメンド情報を含むデータを情報処理装置１０１に送信することにしてもよい。
【０１１２】
より具体的には、例えば、通信制御部７０２は、転送リソースのＵＲＬを指定して、リコメンド情報を含むデータを送信する。転送リソースのＵＲＬは、例えば、ゲートウェイ装置ＧＷｉのメモリ３０２、ディスク３０５などの記憶装置に記憶されている。
【０１１３】
また、通信制御部７０２は、例えば、先行処理を依頼された処理が施された処理後のデータを送信する場合には、第１の転送リソースのＵＲＬを指定して、当該データを送信することにしてもよい。また、通信制御部７０２は、例えば、センサＣから取得されたデータをそのまま送信する場合には、第２の転送リソースのＵＲＬを指定して、当該データを送信することにしてもよい。
【０１１４】
すなわち、通信制御部７０２は、センサＣから取得されたデータと、先行処理を依頼された処理が施されたデータとで、情報処理装置１０１に対して送信する際に指定するアドレスを切り替えることにしてもよい。これにより、データにリコメンド情報を含めなくても、当該データが、先行処理を依頼された処理（例えば、アプリＡＰＬ２の処理）が施されたデータであるか否かを判別することが可能となる。
【０１１５】
また、通信制御部７０２は、情報処理装置１０１から、所定の処理の先行処理の解除の依頼を受け付ける。具体的には、例えば、通信制御部７０２は、情報処理装置１０１からＯＦＦ情報を受信する。ＯＦＦ情報は、上述したように、情報処理装置１０１が受信したデータに関する負荷が所定の基準を下回ったことを通知する情報である。ＯＦＦ情報が受信されると、ゲートウェイ装置ＧＷｉのリコメンド情報に「ＯＦＦ」が設定される。
【０１１６】
（情報処理装置１０１の処理制御処理手順）
つぎに、図８〜図１２を用いて、情報処理装置１０１の処理制御処理手順について説明する。ここでは、まず、図８および図９を用いて、情報処理装置１０１の第１の処理制御処理手順について説明する。
【０１１７】
図８は、情報処理装置１０１の第１の処理制御処理手順の一例を示すフローチャートである。図８のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ８０１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ８０１：Ｎｏ）。
【０１１８】
なお、タイマの満了時間は、任意に設定可能であり、例えば、数分〜数時間程度の時間に設定される。また、タイマの満了時間は、グループＧｋごとにそれぞれ設定可能である。ただし、ここでのタイマの満了時間は、全グループＧ１〜ＧＫで共通のものとする。
【０１１９】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ８０１：Ｙｅｓ）、グループＧ１〜ＧＫに含まれる各グループＧｋの負荷値Ｌｋを算出する（ステップＳ８０２）。算出された各グループＧｋの負荷値Ｌｋは、例えば、負荷状態テーブル２４０に記憶される。
【０１２０】
なお、各グループＧｋの負荷値Ｌｋは、例えば、タイマが満了した時点までの所定期間分（例えば、５分間分）のグループＧｋに属するゲートウェイ装置から受信したデータに関する負荷の情報をもとに算出される。
【０１２１】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ８０３）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ８０４）。そして、情報処理装置１０１は、選択したグループＧｋについての負荷判定処理を実行する（ステップＳ８０５）。なお、負荷判定処理の具体的な処理手順については、図９を用いて後述する。
【０１２２】
つぎに、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ８０６）。ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ８０６：Ｙｅｓ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信して（ステップＳ８０７）、ステップＳ８０９に移行する。
【０１２３】
一方、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ８０６：Ｎｏ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する（ステップＳ８０８）。つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントする（ステップＳ８０９）。
【０１２４】
そして、情報処理装置１０１は、グループＧｋの「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ８１０）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ８１０：Ｎｏ）、情報処理装置１０１は、ステップＳ８０４に戻る。一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ８１０：Ｙｅｓ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１２５】
これにより、グループＧｋの負荷状態がＯＮとなったことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに所定の処理（例えば、アプリＡＰＬ２）の先行処理を依頼することができる。また、グループＧｋの負荷状態がＯＦＦとなったことに応じて、グループＧｋに属する各ゲートウェイ装置ＧＷｉに所定の処理の先行処理の解除を依頼することができる。
【０１２６】
つぎに、図８に示したステップＳ８０５の負荷判定処理の具体的な処理手順について説明する。
【０１２７】
図９は、負荷判定処理手順の具体的処理手順の一例を示すフローチャートである。図９のフローチャートにおいて、まず、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ９０１）。
【０１２８】
ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ９０１：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧｋの負荷値Ｌｋが、グループＧｋのＯＦＦ条件を満たすか否かを判断する（ステップＳ９０２）。各グループＧｋの負荷値Ｌｋは、例えば、負荷状態テーブル２４０から特定される。
【０１２９】
ここで、グループＧｋの負荷値ＬｋがＯＦＦ条件を満たす場合（ステップＳ９０２：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧｋの負荷状態を「ＯＦＦ」に設定して（ステップＳ９０３）、本フローチャートによる一連の処理を終了する。
【０１３０】
一方、グループＧｋの負荷値ＬｋがＯＦＦ条件を満たさない場合（ステップＳ９０２：Ｎｏ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１３１】
また、ステップＳ９０１において、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ９０１：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧｋの負荷値Ｌｋが、グループＧｋのＯＮ条件を満たすか否かを判断する（ステップＳ９０４）。
【０１３２】
ここで、グループＧｋの負荷値ＬｋがＯＮ条件を満たす場合には（ステップＳ９０４：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧｋの負荷状態を「ＯＮ」に設定して（ステップＳ９０５）、本フローチャートによる一連の処理を終了する。
【０１３３】
一方、グループＧｋの負荷値ＬｋがＯＮ条件を満たさない場合（ステップＳ９０４：Ｎｏ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１３４】
これにより、グループＧｋの負荷値Ｌｋに応じて、グループＧｋの負荷状態を更新することができる。
【０１３５】
つぎに、図１０を用いて、情報処理装置１０１の第２の処理制御処理手順について説明する。
【０１３６】
図１０は、情報処理装置１０１の第２の処理制御処理手順の一例を示すフローチャートである。図１０のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ１００１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ１００１：Ｎｏ）。
【０１３７】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ１００１：Ｙｅｓ）、グループＧALLの負荷値Ｌtotalを算出する（ステップＳ１００２）。算出されたグループＧALLの負荷値Ｌtotalは、例えば、負荷状態テーブル２４０に記憶される。
【０１３８】
なお、グループＧALLの負荷値Ｌtotalは、例えば、タイマが満了した時点までの所定期間分（例えば、５分間分）のグループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の情報をもとに算出される。
【０１３９】
つぎに、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１００３）。
【０１４０】
ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１００３：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件を満たすか否かを判断する（ステップＳ１００４）。グループＧALLの負荷値Ｌtotalは、例えば、負荷状態テーブル２４０から特定される。
【０１４１】
ここで、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たす場合（ステップＳ１００４：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＦＦ」に設定して（ステップＳ１００５）、ステップＳ１００８に移行する。
【０１４２】
一方、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たさない場合（ステップＳ１００４：Ｎｏ）、情報処理装置１０１は、ステップＳ１００８に移行する。
【０１４３】
また、ステップＳ１００３において、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１００３：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件を満たすか否かを判断する（ステップＳ１００６）。
【０１４４】
ここで、グループＧALLの負荷値ＬtotalがＯＮ条件を満たさない場合（ステップＳ１００６：Ｎｏ）、情報処理装置１０１は、ステップＳ１００８に移行する。一方、グループＧALLの負荷値ＬtotalがＯＮ条件を満たす場合には（ステップＳ１００６：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＮ」に設定する（ステップＳ１００７）。
【０１４５】
そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１００８）。ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１００８：Ｙｅｓ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＮ情報を送信して（ステップＳ１００９）、本フローチャートによる一連の処理を終了する。
【０１４６】
一方、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１００８：Ｎｏ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＦＦ情報を送信して（ステップＳ１０１０）、本フローチャートによる一連の処理を終了する。
【０１４７】
これにより、グループＧALLの負荷状態がＯＮとなったことに応じて、各ゲートウェイ装置ＧＷ１〜ＧＷｎに所定の処理（例えば、アプリＡＰＬ２）の先行処理を依頼することができる。また、グループＧALLの負荷状態がＯＦＦとなったことに応じて、各ゲートウェイ装置ＧＷ１〜ＧＷｎに所定の処理の先行処理の解除を依頼することができる。
【０１４８】
つぎに、図１１および図１２を用いて、情報処理装置１０１の第３の処理制御処理手順について説明する。
【０１４９】
図１１および図１２は、情報処理装置１０１の第３の処理制御処理手順の一例を示すフローチャートである。図１１のフローチャートにおいて、まず、情報処理装置１０１は、タイマが満了したか否かを判断する（ステップＳ１１０１）。ここで、情報処理装置１０１は、タイマが満了するのを待つ（ステップＳ１１０１：Ｎｏ）。
【０１５０】
そして、情報処理装置１０１は、タイマが満了した場合（ステップＳ１１０１：Ｙｅｓ）、グループＧ１〜ＧＫに含まれる各グループＧｋの負荷値Ｌｋを算出する（ステップＳ１１０２）。つぎに、グループＧALLの負荷値Ｌtotalを算出する（ステップＳ１１０３）。
【０１５１】
そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１１０４）。
【０１５２】
ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１１０４：Ｙｅｓ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＦＦ条件を満たすか否かを判断する（ステップＳ１１０５）。
【０１５３】
ここで、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たす場合（ステップＳ１１０５：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＦＦ」に設定して（ステップＳ１１０６）、ステップＳ１１０９に移行する。
【０１５４】
一方、グループＧALLの負荷値ＬtotalがＯＦＦ条件を満たさない場合（ステップＳ１１０５：Ｎｏ）、情報処理装置１０１は、ステップＳ１１０９に移行する。
【０１５５】
また、ステップＳ１１０４において、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１１０４：Ｎｏ）、情報処理装置１０１は、負荷条件テーブル２３０を参照して、グループＧALLの負荷値Ｌtotalが、グループＧALLのＯＮ条件を満たすか否かを判断する（ステップＳ１１０７）。
【０１５６】
ここで、グループＧALLの負荷値ＬtotalがＯＮ条件を満たさない場合（ステップＳ１１０７：Ｎｏ）、情報処理装置１０１は、ステップＳ１１０９に移行する。一方、グループＧALLの負荷値ＬtotalがＯＮ条件を満たす場合には（ステップＳ１１０７：Ｙｅｓ）、情報処理装置１０１は、負荷状態テーブル２４０内のグループＧALLの負荷状態を「ＯＮ」に設定する（ステップＳ１１０８）。
【０１５７】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ１１０９）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ１１１０）。そして、情報処理装置１０１は、選択したグループＧｋについての負荷判定処理を実行する（ステップＳ１１１１）。
【０１５８】
なお、負荷判定処理の具体的な処理手順については、図９に示した負荷判定処理の具体的な処理手順と同様のため説明を省略する。
【０１５９】
つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントして（ステップＳ１１１２）、「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ１１１３）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ１１１３：Ｎｏ）、情報処理装置１０１は、ステップＳ１１１０に戻る。
【０１６０】
一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ１１１３：Ｙｅｓ）、情報処理装置１０１は、図１２に示すステップＳ１２０１に移行する。
【０１６１】
図１２のフローチャートにおいて、まず、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧALLの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１２０１）。ここで、グループＧALLの負荷状態が「ＯＮ」の場合（ステップＳ１２０１：Ｙｅｓ）、情報処理装置１０１は、グループＧALLに属する各ゲートウェイ装置ＧＷ１〜ＧＷｎにＯＮ情報を送信して（ステップＳ１２０２）、本フローチャートによる一連の処理を終了する。
【０１６２】
一方、グループＧALLの負荷状態が「ＯＦＦ」の場合（ステップＳ１２０１：Ｎｏ）、情報処理装置１０１は、グループＧｋの「ｋ」を「ｋ＝１」として（ステップＳ１２０３）、グループＧ１〜ＧＫからグループＧｋを選択する（ステップＳ１２０４）。そして、情報処理装置１０１は、負荷状態テーブル２４０を参照して、グループＧｋの負荷状態が「ＯＮ」であるか否かを判断する（ステップＳ１２０５）。
【０１６３】
ここで、グループＧｋの負荷状態が「ＯＮ」の場合（ステップＳ１２０５：Ｙｅｓ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＮ情報を送信して（ステップＳ１２０６）、ステップＳ１２０８に移行する。
【０１６４】
一方、グループＧｋの負荷状態が「ＯＦＦ」の場合（ステップＳ１２０５：Ｎｏ）、情報処理装置１０１は、グループＧｋに属する各ゲートウェイ装置ＧＷｉにＯＦＦ情報を送信する（ステップＳ１２０７）。つぎに、情報処理装置１０１は、グループＧｋの「ｋ」をインクリメントする（ステップＳ１２０８）。
【０１６５】
そして、情報処理装置１０１は、グループＧｋの「ｋ」が「Ｋ」より大きくなったか否かを判断する（ステップＳ１２０９）。ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ１２０９：Ｎｏ）、情報処理装置１０１は、ステップＳ１２０４に戻る。一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ１２０９：Ｙｅｓ）、情報処理装置１０１は、本フローチャートによる一連の処理を終了する。
【０１６６】
これにより、グループＧｋの負荷値ＬｋがグループＧｋのＯＮ条件を満たす場合と、グループＧALLの負荷値ＬtotalがグループＧALLのＯＮ条件を満たす場合とで、先行処理を依頼する対象のゲートウェイ装置ＧＷを、グループＧｋに属するゲートウェイ装置ＧＷの範囲内とするか、ゲートウェイ装置ＧＷ１〜ＧＷｎの範囲内とするかを切り替えることができる。
【０１６７】
（ゲートウェイ装置ＧＷｉの処理制御処理手順）
つぎに、図１３を用いて、ゲートウェイ装置ＧＷｉの処理制御処理手順について説明する。
【０１６８】
図１３は、ゲートウェイ装置ＧＷｉの処理制御処理手順の一例を示すフローチャートである。図１３のフローチャートにおいて、まず、ゲートウェイ装置ＧＷｉは、タイマが満了したか否かを判断する（ステップＳ１３０１）。ここで、ゲートウェイ装置ＧＷｉは、タイマが満了するのを待つ（ステップＳ１３０１：Ｎｏ）。
【０１６９】
そして、ゲートウェイ装置ＧＷｉは、タイマが満了した場合（ステップＳ１３０１：Ｙｅｓ）、自装置に接続されたセンサＣからデータを取得する（ステップＳ１３０２）。つぎに、ゲートウェイ装置ＧＷｉは、リコメンド情報が「ＯＮ」であるか否かを判断する（ステップＳ１３０３）。
【０１７０】
ここで、リコメンド情報が「ＯＦＦ」の場合（ステップＳ１３０３：Ｎｏ）、ゲートウェイ装置ＧＷｉは、ステップＳ１３０５に移行する。一方、リコメンド情報が「ＯＮ」の場合（ステップＳ１３０３：Ｙｅｓ）、ゲートウェイ装置ＧＷｉは、取得したデータにアプリＡＰＬ２の処理を施す（ステップＳ１３０４）。
【０１７１】
つぎに、ゲートウェイ装置ＧＷｉは、送信対象のデータにリコメンド情報を書き込む（ステップＳ１３０５）。送信対象のデータは、センサＣから取得したデータ、または、当該データにアプリＡＰＬ２の処理を施した処理後のデータである。
【０１７２】
そして、ゲートウェイ装置ＧＷｉは、リコメンド情報を含むデータを情報処理装置１０１に送信して（ステップＳ１３０６）、本フローチャートによる一連の処理を終了する。これにより、情報処理装置１０１からのアプリＡＰＬ２の先行処理の依頼に応じて、センサＣから取得したデータに対してアプリＡＰＬ２の処理を施すことができる。
【０１７３】
（サーバＳＶｊの処理制御処理手順）
つぎに、図１４を用いて、サーバＳＶｊの処理制御処理手順について説明する。
【０１７４】
図１４は、サーバＳＶｊの処理制御処理手順の一例を示すフローチャートである。図１４のフローチャートにおいて、まず、サーバＳＶｊは、タイマが満了したか否かを判断する（ステップＳ１４０１）。ここで、サーバＳＶｊは、タイマが満了するのを待つ（ステップＳ１４０１：Ｎｏ）。
【０１７５】
そして、サーバＳＶｊは、タイマが満了した場合（ステップＳ１４０１：Ｙｅｓ）、情報処理装置１０１からデータを受信する（ステップＳ１４０２）。つぎに、サーバＳＶｊは、受信したデータに含まれるリコメンド情報が「ＯＦＦ」であるか否かを判断する（ステップＳ１４０３）。
【０１７６】
ここで、リコメンド情報が「ＯＦＦ」の場合（ステップＳ１４０３：Ｙｅｓ）、サーバＳＶｊは、受信したデータにアプリＡＰＬ２の処理を施す（ステップＳ１４０４）。そして、サーバＳＶｊは、アプリＡＰＬ２の処理を施した処理後のデータをデータベース（不図示）に格納して（ステップＳ１４０５）、本フローチャートによる一連の処理を終了する。
【０１７７】
また、ステップＳ１４０３において、リコメンド情報が「ＯＮ」の場合（ステップＳ１４０３：Ｎｏ）、サーバＳＶｊは、受信したデータをデータベース（不図示）に格納して（ステップＳ１４０５）、本フローチャートによる一連の処理を終了する。これにより、アプリＡＰＬ２の処理にかかるサーバＳＶｊの負荷を削減することができる。
【０１７８】
以上説明したように、実施の形態にかかる情報処理装置１０１によれば、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータに関する負荷の指標値Ｌｋ（グループＧｋの負荷値Ｌｋ）を算出することができる。グループＧｋの負荷値Ｌｋは、単位時間当たりのデータの受信量、および／または、単位時間当たりのデータの受信処理回数（または、送信処理回数）で表される。そして、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準に達する場合に、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理を依頼することができる。所定の処理は、グループＧｋに属するゲートウェイ装置ＧＷから受信したデータの処理の依頼先のサーバＳＶｊが実行する処理のうち、グループＧｋに属するゲートウェイ装置ＧＷでも処理可能な処理（例えば、アプリＡＰＬ２）である。
【０１７９】
これにより、グループＧｋの負荷値Ｌｋに応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、サーバＳＶｊからグループＧｋに属するゲートウェイ装置ＧＷに切り替えることができる。この結果、グループＧｋに属するゲートウェイ装置ＧＷにより収集されるデータに対して所定の処理を施す場所を最適化することができ、収集されるデータの処理にかかる負荷を適切に分散することができる。
【０１８０】
また、情報処理装置１０１によれば、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎから受信したデータに関する負荷の指標値Ｌtotal（グループＧALLの負荷値Ｌtotal）を算出することができる。そして、情報処理装置１０１によれば、グループＧALLの負荷値Ｌtotalが所定の基準に達する場合に、グループＧALLに属するゲートウェイ装置ＧＷ１〜ＧＷｎに、所定の処理の先行処理を依頼することができる。
【０１８１】
これにより、グループＧALL（システム全体）の負荷値Ｌtotalに応じて、所定の処理（例えば、アプリＡＰＬ２）の依頼先を、各サーバＳＶｊから各グループＧ１〜ＧＫに属するゲートウェイ装置ＧＷに切り替えることができる。
【０１８２】
また、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準を満たす場合と、グループＧALLの負荷値Ｌtotalが所定の基準を満たす場合とで、先行処理を依頼する対象のゲートウェイ装置ＧＷを、グループＧｋに属するゲートウェイ装置ＧＷの範囲内とするか、ゲートウェイ装置ＧＷ１〜ＧＷｎの範囲内とするかを切り替えることができる。
【０１８３】
これにより、各グループＧｋに着目すると負荷値Ｌｋが閾値に達していないような場合であっても、システム全体としての負荷値Ｌtotalが閾値に達している場合には、各ゲートウェイ装置ＧＷ１〜ＧＷｎにより収集されるデータの処理にかかる負荷を分散することができる。一方、システム全体としての負荷値Ｌtotalが閾値に達していない場合であっても、あるグループＧｋの負荷値Ｌｋが閾値に達している場合には、グループＧｋに属するゲートウェイ装置ＧＷにより収集されるデータの処理にかかる負荷を分散することができる。
【０１８４】
また、情報処理装置１０１によれば、ゲートウェイ装置ＧＷｉにおいて先行処理が施される前に受信したデータと、先行処理が施された後に受信したデータとで、サーバＳＶｊに対して処理を依頼する際に指定するアドレスを切り替えることができる。これにより、ゲートウェイ装置ＧＷｉから送信されるデータに、当該データが処理済であるか否かを示す情報（例えば、リコメンド情報）を含めなくても、サーバＳＶｊにおいて各データに対するアプリＡＰＬ２の実行状況に応じた処理を実行することができる。
【０１８５】
また、情報処理装置１０１によれば、グループＧｋの負荷値Ｌｋが所定の基準を下回る場合には、グループＧｋに属するゲートウェイ装置ＧＷに、所定の処理の先行処理の解除を依頼することができる。これにより、グループＧｋの負荷値Ｌｋが低下したことに応じて、収集されるデータに対して所定の処理を施す場所をサーバ側に戻して、サーバＳＶｊのリソースを活用することができる。
【０１８６】
また、情報処理装置１０１によれば、グループＧALLの負荷値Ｌtotalが所定の基準を下回る場合には、各ゲートウェイ装置ＧＷ１〜ＧＷｎに、所定の処理の先行処理の解除を依頼することができる。これにより、システム全体としての負荷値Ｌtotalが低下したことに応じて、収集されるデータに対して所定の処理を施す場所をサーバ側に戻して、各サーバＳＶ１〜ＳＶｍのリソースを活用することができる。
【０１８７】
また、実施の形態にかかるゲートウェイ装置ＧＷｉによれば、情報処理装置１０１から、所定の処理の先行処理の依頼を受信すると、収集したデータに所定の処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて情報処理装置１０１に送信することができる。これにより、ゲートウェイ装置ＧＷｉから送信されるデータの処理の依頼先のサーバＳＶｊにおいて、当該データが処理済であるか否かを判別することが可能となり、当該データに対する所定の処理（例えば、アプリＡＰＬ２）の実行状況に応じた処理を実行することができる。
【０１８８】
なお、本実施の形態で説明した処理制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本処理制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本処理制御プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１８９】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１９０】
（付記１）コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【０１９１】
（付記２）コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行させることを特徴とする処理制御プログラム。
【０１９２】
（付記３）コンピュータに、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行させることを特徴とする処理制御プログラム。
【０１９３】
（付記４）前記コンピュータに、
前記先行処理が施される前に受信したデータと、前記先行処理が施された後に受信したデータとで、前記情報処理装置に対して処理を依頼する際に指定するアドレスを切り替える、処理を実行させることを特徴とする付記１〜３のいずれか一つに記載の処理制御プログラム。
【０１９４】
（付記５）前記指標値は、単位時間当たりの前記データの受信量、および／または単位時間当たりのデータの受信または送信処理回数である、ことを特徴とする付記１〜４のいずれか一つに記載の処理制御プログラム。
【０１９５】
（付記６）前記コンピュータに、
前記特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準を下回る場合、前記特定のグループに属する通信装置に、前記先行処理の解除を依頼する、処理を実行させることを特徴とする付記１に記載の処理制御プログラム。
【０１９６】
（付記７）前記コンピュータに、
前記負荷の指標値が所定の基準を下回る場合、前記第１のグループに属する通信装置に、前記第１の処理の先行処理の解除を依頼するとともに、前記第２のグループに属する通信装置に、前記第２の処理の先行処理の解除を依頼する、処理を実行させることを特徴とする付記２に記載の処理制御プログラム。
【０１９７】
（付記８）収集したデータを送信する通信装置に、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行させることを特徴とする処理制御プログラム。
【０１９８】
（付記９）コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【０１９９】
（付記１０）コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
処理を実行することを特徴とする処理制御方法。
【０２００】
（付記１１）コンピュータが、
それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
処理を実行することを特徴とする処理制御方法。
【０２０１】
（付記１２）収集したデータを送信する通信装置が、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
処理を実行することを特徴とする処理制御方法。
【０２０２】
（付記１３）それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記特定のグループに属する通信装置に、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【０２０３】
（付記１４）それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、少なくとも第１のグループに属する通信装置と第２のグループに属する通信装置から受信したデータに関する負荷の指標値が所定の基準に達する場合に、前記第１のグループに属する通信装置に、前記第１のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第１のグループに属する通信装置でも処理可能な第１の処理の先行処理を依頼するとともに、前記第２のグループに属する通信装置に、前記第２のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記第２のグループに属する通信装置でも処理可能な第２の処理の先行処理を依頼する、
制御部を有することを特徴とする情報処理装置。
【０２０４】
（付記１５）それぞれ収集したデータを送信する複数の通信装置のそれぞれからデータを受信し、
受信したデータの処理を対応する情報処理装置に依頼し、
前記複数の通信装置のうち、特定のグループに属する通信装置から受信したデータに関する第１の負荷の指標値が第１の閾値に達する場合と、それぞれ異なるグループに属する複数の通信装置から受信したデータに関する第２の負荷の指標値が第２の閾値に達する場合とで、情報処理装置に依頼する処理の先行処理を依頼する対象の通信装置を、前記特定のグループに属する通信装置の範囲内とするか、前記複数の通信装置の範囲内とするかを切り替える制御を行う、
制御部を有することを特徴とする情報処理装置。
【０２０５】
（付記１６）収集したデータを送信する通信装置であって、
収集した前記データの送信先装置から、前記通信装置と同じ特定のグループに属する通信装置から受信したデータに関する負荷の指標値に応じて、前記特定のグループに属する通信装置から受信するデータの処理の依頼先の情報処理装置が実行する処理のうち、前記特定のグループに属する通信装置でも処理可能な処理の先行処理の依頼を受信すると、収集した前記データに前記処理を施すとともに、処理後のデータを、処理済であることを示す情報と対応付けて前記送信先装置に送信する、
制御部を有することを特徴とする通信装置。
【符号の説明】
【０２０６】
１０１  情報処理装置
１０２，１０３  通信装置
１０４，１０５，Ｃ  センサ
１０６，１０７  情報処理装置
２００  処理制御システム
２２０  収集データＤＢ
２３０  負荷条件テーブル
２４０  負荷状態テーブル
６０１，７０２  通信制御部
６０２  算出部
６０３  判断部
７０１  取得部
７０３  実行部
ＧＷ１〜ＧＷｎ，ＧＷｉ  ゲートウェイ装置
ＳＶ１〜ＳＶｍ，ＳＶｊ  サーバ
【国際調査報告】
2017141339.tif 000017
2017141339.tif 000018
2017141339.tif 000019
2017141339.tif 000020