(57)【要約】      （修正有）【課題】エリア内の機器から得られる入力データ量を精度よく見積もる。【解決手段】情報処理装置の相関パラメータ算出部は、エリアｉ内のデバイスからの入力データ量の時系列データと、エリアｉに対して地理的に隣接するエリアｈ内のデバイスからの入力データ量の時系列データとに基づいて、エリアｈの時系列データに生じた変動に対応する変動がエリアｉの時系列データに現れるまでに要する所要時間（時間差τ）を算出する。また、相関パラメータ算出部は、エリアｉ，ｈの時系列データに基づいて、所定時刻におけるエリアｉの入力データ量と、所定時刻より時間差τだけ前の時刻におけるエリアｈの入力データ量と、の関係を示す関係式を導出する。そして、中間データ量見積部は、関係式を用いて、時刻ｔよりも時間差τだけ前の時刻におけるエリアｈの入力データ量から、時刻ｔにおけるエリアｉの入力データ量を見積もる。【選択図】図８
2020024509.tif 000002
【特許請求の範囲】
【請求項１】
第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出する算出部と、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出する導出部と、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もる見積部と、
を備える情報処理装置。
【請求項２】
機器から得たデータに対して所定の処理が施されて新たなデータが生成された場合における前記機器から得たデータ量と前記新たなデータのデータ量の比を演算する演算部を備え、
前記見積部は、見積もった前記第１の時刻に前記第１のエリア内の機器から得られるデータ量と、前記比に基づいて、前記第１の時刻に前記第１のエリア内の機器から得られるデータから生成される新たなデータのデータ量を見積もる、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記所定の処理は、Ｍａｐ／Ｒｅｄｕｃｅ処理に含まれる、エリアをキー情報とするＭａｐ処理であり、
前記見積部が見積もった前記新たなデータのデータ量から、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を決定する決定部を更に備える、請求項２に記載の情報処理装置。
【請求項４】
第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出し、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出し、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もる、
処理をコンピュータに実行させるための情報処理プログラム。
【請求項５】
Ｍａｐ／Ｒｅｄｕｃｅ処理を行う分散処理システムであって、
第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出する算出部と、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出する導出部と、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もるとともに、前記第１の時刻に前記第１のエリア内の機器から得られるデータに対して、エリアをキー情報とするＭａｐ処理を施した場合に生成される新たなデータのデータ量を見積もる見積部と、
前記見積部の見積もり結果に基づいて、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を決定する決定部と、
を備える分散処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラム、並びに分散処理システムに関する。
【背景技術】
【０００２】
現在、ネットワークに接続された複数のノード（例えば、複数のコンピュータ）を並列に動作させてデータ処理を行う並列データ処理システムが利用されている。並列データ処理システムは、例えば、データを分割して複数のノードに分散して割り当て、ノード間で独立にデータ処理を行うことで、データ処理を高速化する。並列データ処理システムは、いわゆるクラウドコンピューティングのシステムとして実現されることがある。並列データ処理システムに実行させるプログラムの作成を支援するため、Ｍａｐ／Ｒｅｄｕｃｅなどのフレームワークが提案されている。
【０００３】
Ｍａｐ／Ｒｅｄｕｃｅで定義されるデータ処理は、Ｍａｐ処理とＲｅｄｕｃｅ処理という２種類の処理を含む。Ｍａｐ／Ｒｅｄｕｃｅでは、まず、入力データが複数の部分集合に分割され、入力データの部分集合毎にＭａｐ処理が起動される。Ｍａｐ処理間には依存関係がないため、複数のＭａｐ処理は並列化可能である。次に、複数のＭａｐ処理の結果出力される中間データに含まれるレコードを、キーに応じて分類することで、中間データの集合が複数の部分集合に分割される。このとき、Ｍａｐ処理を行ったノードとＲｅｄｕｃｅ処理を行うノードの間で、中間データのレコードが転送され得る。そして、中間データの部分集合毎にＲｅｄｕｃｅ処理が起動される。Ｒｅｄｕｃｅ処理は、例えば、同じキーをもつ複数のレコードの値（バリュー）を集計する。Ｒｅｄｕｃｅ処理間には依存関係がないため、複数のＲｅｄｕｃｅ処理は並列化可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開２０１４／０２０７３５号
【特許文献２】国際公開２０１４／１３６３０２号
【特許文献３】特開２０１５−１０８８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
Ｒｅｄｕｃｅ処理を行うノードを決定するためには、Ｍａｐ処理により出力される中間データのデータ量を把握する必要がある。このため、Ｍａｐ処理が完了した後にＲｅｄｕｃｅ処理を行うノードを決定することが多い。
【０００６】
これに対し、入力データ量や中間データ量が不変な状況下においては、１回目のＲｅｄｕｃｅ処理を行ったノードを、そのまま２回目以降のＲｅｄｕｃｅ処理においても用いる方法が知られている。しかしながら、入力データ量や中間データ量が変動する場合には、この方法を採用することはできない。
【０００７】
また、中間データ量を過去の中間データ量に基づいて統計的に見積もる方法も知られている。しかしながら、入力データ量が急激に変動するような場合には対応することができない。
【０００８】
１つの側面では、本発明は、エリア内の機器から得られるデータ量を精度よく見積もることが可能な情報処理装置及び情報処理プログラムを提供することを目的とする。また、本発明は、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を適切に決定することが可能な分散処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
一つの態様では、情報処理装置は、第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出する算出部と、前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出する導出部と、前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もる見積部と、を備えている。
【発明の効果】
【００１０】
エリア内の機器から得られるデータ量を精度よく見積もることが可能な情報処理装置及び情報処理プログラムを提供することができる。また、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を適切に決定することが可能な分散処理システムを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】図１（ａ）は、一実施形態に係る分散処理システムの構成を概略的に示す図であり、図１（ｂ）は、エッジサーバがデータを取得する範囲を模式的に示す図である。
【図２】クラウド及びエッジサーバのハードウェア構成を示す図である。
【図３】クラウド及びエッジサーバの機能ブロック図である。
【図４】図４（ａ）は、入力データＤＢのデータ構造を示す図であり、図４（ｂ）は中間データＤＢのデータ構造を示す図である。
【図５】図５（ａ）は、相関パラメータＤＢのデータ構造を示す図であり、図５（ｂ）は、変動比ＤＢのデータ構造を示す図であり、図５（ｃ）は、ｋｅｙ−エリア変換テーブルのテーブル例を示す図である。
【図６】相関パラメータ算出処理を示すフローチャート（その１）である。
【図７】図６のステップＳ１６の詳細処理を示すフローチャートである。
【図８】図８（ａ）〜図８（ｃ）は、図６の処理を説明するための図（その１）である。
【図９】図９（ａ）、図９（ｂ）は、図６の処理を説明するための図（その２）である。
【図１０】相関パラメータ算出処理を示すフローチャート（その２）である。
【図１１】図１０の処理を説明するための図である。
【図１２】変動比算出処理を示すフローチャートである。
【図１３】中間データ量見積処理を示すフローチャートである。
【図１４】図１３のステップＳ１１０の詳細処理を示すフローチャートである。
【図１５】分散処理システムにおける処理タイミングを示すタイミングチャートである。
【発明を実施するための形態】
【００１２】
以下、分散処理システムの一実施形態について、図１〜図１５に基づいて詳細に説明する。図１（ａ）には、一実施形態に係る分散処理システム１００の構成が概略的に示されている。
【００１３】
本実施形態に係る分散処理システム１００は、自動車３０ａやスマートフォン３０ｂ等の多数の機器３０（以下、単に「デバイス３０」と表記する）から取得したデバイスデータをエッジサーバ２０配下の記憶領域に格納する。デバイス３０は、自動車３０ａやスマートフォン３０ｂに限らず、その他の移動可能なセンサ等を含む。デバイスデータの一例としては、速度、加速度、温度、湿度、輝度、位置、時間、機能等、デバイス３０から得られる各種データが挙げられる。
【００１４】
デバイス３０は、Ｗｉ−Ｆｉ ｄｉｒｅｃｔ（登録商標）やＢＬＥ（Bluetooth（登録商標） Low Energy）などによりエッジサーバ２０に接続されている。エッジサーバ２０は、広域に分散するデバイス３０からデバイスデータを取得し、記憶する。このように、本実施形態では、デバイスデータは、複数のエッジサーバ２０に分散して記憶される。なお、本実施形態では、図１（ｂ）に示すように、１つのエッジサーバ２０が所定範囲（例えば太線枠で囲む範囲）内に存在するデバイス３０からデバイスデータを取得する。また、１つのエッジサーバ２０がカバーする所定範囲は、複数のエリアに分割されており、エッジサーバ２０は、エリアごとにデバイスデータを集計するＭａｐ処理（ｋｅｙがエリアであるＭａｐ処理）を実行する。
【００１５】
エッジサーバ２０は、インターネット８０により情報処理装置としてのクラウド１０と接続されている。本実施形態では、エッジサーバ２０に配備される処理は、利用者端末４０からエンドユーザによる分析要求があったときに実行される。
【００１６】
クラウド１０は、Ｍａｐ／Ｒｅｄｕｃｅ処理をどのエッジサーバ２０に配備するかを決定する。なお、Ｍａｐ処理は、Ｍａｐ処理に用いるデバイスデータが入力されたエッジサーバ２０において実行されるものとする。一方、Ｒｅｄｕｃｅ処理は、後述するように、Ｍａｐ処理により生成される各ｋｅｙの中間データ量の予測値に基づいて各エッジサーバ２０に対して分散配備される。
【００１７】
（クラウド１０について）
図２にはクラウド１０のハードウェア構成が示されている。クラウド１０は、ＣＰＵ（Central Processing Unit）９０、ＲＯＭ（Read Only Memory）９２、ＲＡＭ（Random Access Memory）９４、記憶部（ここではＨＤＤ（Hard Disk Drive））９６、ネットワークインタフェース９７、及び可搬型記憶媒体用ドライブ９９等を備えている。これらクラウド１０の構成各部は、バス９８に接続されている。クラウド１０では、ＲＯＭ９２あるいはＨＤＤ９６に格納されているプログラム、或いは可搬型記憶媒体用ドライブ９９が可搬型記憶媒体９１から読み取ったプログラムをＣＰＵ９０が実行することにより、図３に示す、各部の機能が実現される。なお、図３の各部の機能は、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）等の集積回路により実現されてもよい。
【００１８】
図３には、クラウド１０の機能ブロック図が示されている。図３に示すように、クラウド１０においては、ＣＰＵ９０がプログラムを実行することにより、リクエスト受信部１１、データ管理部１５、リソース管理部１２、使用メモリ量予測部１４としての機能が実現されている。
【００１９】
リクエスト受信部１１は、利用者端末４０からＭａｐ／Ｒｅｄｕｃｅ処理の要求があった場合に、その要求を受信し、リソース管理部１２に通知する。
【００２０】
データ管理部１５は、各エッジサーバ２０と通信し、各エッジサーバ２０が有する入力データの情報を管理する。
【００２１】
リソース管理部１２は、各エッジサーバ２０と通信して、各エッジサーバ２０のリソース情報を受信して管理する。また、リソース管理部１２は、リクエスト受信部１１からＭａｐ／Ｒｅｄｕｃｅ処理の要求が通知された場合に、エッジサーバ２０の１つに処理実行場所制御部２４を配備する。そして、処理実行場所制御部２４からＭａｐ処理やＲｅｄｕｃｅ処理に関する問い合わせがあった場合には、リソース管理部１２は、データ管理部１５において管理する各エッジサーバ２０が有するデータの情報や使用メモリ量予測部１４の出力に基づく情報を処理実行場所制御部２４に対して回答する。
【００２２】
使用メモリ量予測部１４は、図１（ｂ）に示す各エリアの地理的な依存関係から、各エリアで得られるデバイスデータのデータ量（以下、入力データ量と表記する）を予測する。前述のようにデバイス３０は隣接するエリア間において移動するため、あるエリアにおいて入力データ量に変化があった所定時間後に隣のエリアの入力データ量に同様の変化が現れることがある。使用メモリ量予測部１４は、このような入力データ量の変化の特徴を利用して、あるエリアにおける入力データ量を隣接するエリアの入力データ量から予測することとしている。また、使用メモリ量予測部１４は、各エッジサーバ２０で実行されるＭａｐ処理により生成される各ｋｅｙの中間データ量を見積もる。なお、本実施形態では、例えば「ｋｅｙ」がエリアであり、「ｖａｌｕｅ」が台数である中間データが生成されるものとする。また、使用メモリ量予測部１４は、見積もった各ｋｅｙの中間データ量に基づいて、各ｋｅｙのＲｅｄｕｃｅ処理を実行するエッジサーバ２０において確保すべきメモリ量を見積もる。なお、使用メモリ量予測部１４の詳細については、後述する。
【００２３】
（エッジサーバ２０について）
エッジサーバ２０は、クラウド１０と同様のハードウェア構成を有する（図２参照）。エッジサーバ２０では、ＣＰＵ９０がプログラムを実行することで、図３に示す入力データ量送信部２１、中間データ量送信部２２、処理実行部２３、処理実行場所制御部２４、データ管理部２５として機能する。なお、処理実行場所制御部２４の機能は、クラウド１０のリソース管理部１２により複数のエッジサーバ２０のうちの１台に配備される。
【００２４】
入力データ量送信部２１は、クラウド１０からの求めに応じて、入力データ量の時系列データをクラウド１０に対して送信する。入力データ量送信部２１は、入力データ量の時系列データを、エッジサーバ２０に入力されるデバイスデータ（入力データ）が格納される入力データＤＢ３２から取得する。ここで、入力データＤＢ３２は、図４（ａ）に示すようなデータ構造を有する。具体的には、入力データＤＢ３２は、図４（ａ）に示すように、入力データが得られた「日時」の情報と、入力データが得られた「エリア」の情報と、データ値の情報（「value」）とが格納されている。
【００２５】
中間データ量送信部２２は、クラウド１０からの求めに応じて、中間データ量の時系列データをクラウド１０に対して送信する。中間データ量送信部２２は、中間データ量の時系列データを、処理実行部２３によるＭａｐ処理により生成された中間データが格納される中間データＤＢ３４から取得する。ここで、中間データＤＢ３４は、図４（ｂ）に示すようなデータ構造を有する。具体的には、中間データＤＢ３４は、図４（ｂ）に示すように、中間データが得られた「日時」の情報と、中間データの「ｋｅｙ」の情報と、データ値の情報（「value」）とが格納されている。
【００２６】
処理実行部２３は、処理実行場所制御部２４の指示の下、Ｍａｐ処理やＲｅｄｕｃｅ処理を実行する。Ｍａｐ処理が配備されたエッジサーバ２０の処理実行部２３では、入力データＤＢ３２に格納されている入力データを用いて中間データを生成する。また、Ｒｅｄｕｃｅ処理が配備されたエッジサーバ２０の処理実行部２３では、中間データＤＢ３４に格納されている中間データや他のエッジサーバ２０から転送されてくる中間データを用いて、割り当てられたｋｅｙについてのＲｅｄｕｃｅ処理を実行する。
【００２７】
処理実行場所制御部２４は、クラウド１０のリソース管理部１２に対して、Ｍａｐ処理やＲｅｄｕｃｅ処理に関する情報の問い合わせを行う。また、処理実行場所制御部２４は、リソース管理部１２から取得した情報に基づいて、各エッジサーバ２０にＭａｐ処理やＲｅｄｕｃｅ処理を割り振り、Ｍａｐ処理やＲｅｄｕｃｅ処理をエッジサーバ２０に配備する。また、処理実行場所制御部２４は、各エッジサーバ２０の処理実行部２３におけるＲｅｄｕｃｅ処理の結果（処理結果）を受信し、クラウド１０のリソース管理部１２を介して利用者端末４０に処理結果を通知する。
【００２８】
データ管理部２５は、入力データＤＢ３２に格納された入力データの情報をクラウド１０のデータ管理部１５に対して送信する。
【００２９】
（クラウド１０の使用メモリ量予測部１４の詳細について）
以下、使用メモリ量予測部１４の詳細について、説明する。使用メモリ量予測部１４は、図３に示すように、エリア別入力データ量収集部１１０、ｋｅｙ別中間データ量収集部１１２、相関パラメータ算出部１１４、演算部としての変動比算出部１１６、見積部としての中間データ量見積部１１８、決定部としての必要メモリ量見積部１２２、の各機能を有する。
【００３０】
エリア別入力データ量収集部１１０は、各エッジサーバ２０に入力された各エリアのデバイスデータ（入力データ）のデータ量の時系列データをエッジサーバ２０（入力データ量送信部２１）から取得し、エリア別に過去入力データ量ＤＢ１３０に格納する。過去入力データ量ＤＢ１３０には、例えば、図８（ａ）、図８（ｂ）に示すようなエリア別の入力データ量の時系列データが格納される。
【００３１】
ｋｅｙ別中間データ量収集部１１２は、各エッジサーバ２０におけるＭａｐ処理により生成された中間データのデータ量の時系列データをエッジサーバ２０（中間データ量送信部２２）から取得し、過去中間データ量ＤＢ１３２に格納する。過去中間データ量ＤＢ１３２には、ｋｅｙ別の中間データ量の時系列データが格納される。
【００３２】
相関パラメータ算出部１１４は、１つのエリアにおける入力データ量を他のエリアにおける入力データ量から見積もる際に利用する相関パラメータを算出する。このとき、相関パラメータ算出部１１４は、エリア別入力データ量収集部１１０が収集した各エリアの入力データ量の時系列データを利用する。そして、相関パラメータ算出部１１４は、算出した相関パラメータを相関パラメータＤＢ１３４に格納する。ここで、相関パラメータＤＢ１３４は、図５（ａ）に示すようなデータ構造を有する。具体的には、相関パラメータＤＢ１３４では、一方のエリアのエリアＩＤである「第１のエリアＩＤ」と、他方のエリアのエリアＩＤである「第２のエリアＩＤ」と、時間差パラメータと、回帰直線パラメータとが対応付けられている。なお、相関パラメータＤＢ１３４は、相関のある２つのエリアの組み合わせの数だけ存在している。
【００３３】
変動比算出部１１６は、エリア別入力データ量収集部１１０が収集したあるエリアにおける入力データ量と、ｋｅｙ別中間データ量収集部１１２が収集したあるエリアに対応するｋｅｙの中間データ量と、に基づいて、Ｍａｐ処理前後における入力データ量と中間データ量の比（変動比）を算出する。ここで、エリアとｋｅｙの対応関係については、ｋｅｙ−エリア変換テーブル１３８において定義されている。ｋｅｙ−エリア変換テーブル１３８には、図５（ｃ）に示すように、各ｋｅｙに対応するエリアＩＤが格納されている。変動比算出部１１６は、算出した変動比を変動比ＤＢ１３６に格納する。ここで、変動比ＤＢ１３６は、図５（ｂ）に示すようなデータ構造を有する。図５（ｂ）に示すように、変動比ＤＢ１３６には、各エリアＩＤに対応する変動比の値が格納されている。
【００３４】
中間データ量見積部１１８は、相関パラメータＤＢ１３４に格納されている相関パラメータと、変動比ＤＢ１３６に格納されている変動比とを用いて、ある時刻におけるエッジサーバ２０の入力データ量に対応する中間データ量を見積もる。中間データ量見積部１１８は、見積もった中間データ量を必要メモリ量見積部１２２とリソース管理部１２に送信する。なお、中間データ量見積部１１８は、ｋｅｙとエリアの対応関係を、ｋｅｙ−エリア変換テーブル１３８から取得する。
【００３５】
必要メモリ量見積部１２２は、各ｋｅｙの中間データ量をＲｅｄｕｃｅ処理するためにエッジサーバ２０において確保しておくべきメモリ量を見積もる。
【００３６】
（使用メモリ量予測部１４の処理について）
（相関パラメータ算出処理）
まず、相関パラメータ算出部１１４が所定のタイミングで実行する相関パラメータ算出処理について、図６、図７、図１０のフローチャートに沿ってその他図面を適宜参照しつつ詳細に説明する。
【００３７】
ステップＳ１０では、相関パラメータ算出部１１４が、隣接する２つのエリアを選択する。この場合、地図データや予め用意されている隣接エリアの情報を格納したテーブル等に基づいて、隣接する２つのエリアを選択する。なお、相関パラメータ算出部１１４は、地図データ等を考慮せず、２つのエリアをランダムに選択することとしてもよい。ここでは、隣接する２つのエリアとして、エリアｉ、エリアｈが選択されたものとする。
【００３８】
次いで、ステップＳ１２では、相関パラメータ算出部１１４が、選択した２つのエリアｉ，ｈの入力データ量の時系列データをエリア別入力データ量収集部１１０から取得する。取得した時系列データをfxi(t)、fxh(t)とする。例えば、時系列データfxi(t)が図８（ａ）に示すようなデータであり、時系列データｆxh(t)が図８（ｂ）に示すようなデータであったとする。
【００３９】
次いで、ステップＳ１４では、相関パラメータ算出部１１４が、時系列データをずらす。例えば、エリアｉの時系列データを固定した状態で、エリアｈの時系列データを所定秒（τ秒）分だけ時間が進む方向にずらす。ずらした後の時系列データをfxh(t-τ)とする。ずらした後の時系列データfxh(t-τ)は、図８（ｃ）において濃い黒線で示すデータであったとする。
【００４０】
次いで、ステップＳ１６では、相関パラメータ算出部１１４が、各入力データ量の時系列データの相関係数を算出する処理を実行する。このステップＳ１６の処理においては、図７のフローチャートに沿った処理が実行される。
【００４１】
図７の処理では、まず、ステップＳ３０において、相関パラメータ算出部１１４が、一方の入力データ量の時系列データfxi(t)の標準偏差Ｓfxi(t)を求める。
【００４２】
次いで、ステップＳ３２では、相関パラメータ算出部１１４が、他方の入力データ量の時系列データfxh(t-τ)の標準偏差Ｓfxh(t-τ)を求める。
【００４３】
次いで、ステップＳ３４では、相関パラメータ算出部１１４が、共分散Ｓfxi(t)fxh(t-τ)を求める。
【００４４】
次いで、ステップＳ３６では、相関パラメータ算出部１１４が、相関係数ｒを次式（１）から求める。その後は、図６のステップＳ１８に移行する。
ｒ＝Ｓfxi(t)fxh(t-τ)／（Ｓfxi(t)・Ｓfxh(t-τ)）      …（１）
【００４５】
図６のステップＳ１８に移行すると、相関パラメータ算出部１１４は、２つのエリアの時系列データに相関があるか否かを判断する。ここでは、一例として相関係数ｒが閾値（＝０．７）よりも大きければ、相関があると判断するものとする。例えば、相関係数ｒが閾値よりも大きい場合には、図９（ａ）に示すように、fxi(t)の入力データ量とfxh(t-τ)の入力データ量との関係をプロットした場合に、ある直線の近傍に集まる。一方、相関係数ｒが閾値以下の場合には、図９（ｂ）に示すように、fxi(t)の入力データ量とfxh(t-τ)の入力データ量との関係をプロットした場合にばらつくようになっている。
【００４６】
ステップＳ１８の判断が否定された場合には、ステップＳ１４に戻り、時系列データを更にずらして、相関係数を算出する。一方、ステップＳ１８の判断が肯定された場合には、ステップＳ２０に移行する。なお、ステップＳ１４〜Ｓ１８を所定回数繰り返したにもかかわらず、相関係数が閾値を超えなかった場合には、図１０のステップＳ６２に移行するようにしてもよい。
【００４７】
ステップＳ１８の判断が肯定され、ステップＳ２０に移行すると、相関パラメータ算出部１１４は、選択した２つのエリアにおける時間差を決定する。ここでは、相関があった場合における時系列データfxh(t)をずらした時間分を、選択した２つのエリアにおける時間差τ（i,h）として決定する。
【００４８】
次いで、ステップＳ２２では、相関パラメータ算出部１１４が、時間差τ（i,h）を相関パラメータＤＢ１３４に記憶する。その後は、図１０のステップＳ５０に移行する。
【００４９】
図１０のステップＳ５０に移行すると、相関パラメータ算出部１１４は、回帰直線の傾きを求める。ここで、回帰直線は、図１１に示すようなfxh(t-τ)の入力データ量を横軸、fxi(t)の入力データ量を縦軸としてプロットした場合の分布傾向を示す直線であり、回帰直線の傾きα(i,h)は、例えば次式（２）により求めることができる。
α(i,h)＝ｒ×Ｓfxi(t)／Ｓfxh(t-τ)      …（２）
【００５０】
次いで、ステップＳ５２では、相関パラメータ算出部１１４が、一方のエリアｉの入力データ量の時系列データfxi(t)の平均を求める。なお、以下においては、説明の便宜上、時系列データfxi(t)の平均を[fxi(t)]と表すものとする。
【００５１】
次いで、ステップＳ５４では、相関パラメータ算出部１１４が、他方のエリアｈの入力データ量の時間差τだけずらした時系列データｆxh(t-τ)の平均を求める。なお、以下においては、説明の便宜上、時系列データｆxh(t-τ)の平均を[ｆxh(t-τ)]と表すものとする。
【００５２】
次いで、ステップＳ５６では、相関パラメータ算出部１１４が、回帰直線の切片を求める。この場合、次式（３）より、回帰直線の切片β(i,h)を求めることができる。
β(i,h)＝[fxi(t)]−（α(i,h)・[ｆxh(t-τ)]）      …（３）
【００５３】
次いで、ステップＳ５８では、相関パラメータ算出部１１４が、一方のエリアｉの入力データ量の標準偏差σfxi(t)を求める（図１１参照）。
【００５４】
次いで、ステップＳ６０では、相関パラメータ算出部１１４が、求めた相関パラメータα(i,h)、β(i,h)、σfxi(t)を相関パラメータＤＢ１３４に格納する。
【００５５】
なお、一方のエリアの入力データ量ｙを他方のエリアの入力データ量ｘから求めるためのデータ量変換関数は、次式（４）にて表すことができる。
ｙ＝α(i,h)×ｘ＋β(i,h)＋σfxi(t)      …（４）
【００５６】
次いで、ステップＳ６２では、相関パラメータ算出部１１４が、全ての隣接する２つのエリアを選択したか否かを判断する。このステップＳ６２の判断が否定された場合には、図６のステップＳ１０に戻り、上述した処理を繰り返し実行する。一方、ステップＳ６２の判断が肯定された場合には、図６、図７、図１０の全処理を終了する。
【００５７】
なお、図６、図７、図１０の処理は所定のタイミングで実行されるため、相関パラメータＤＢ１３４は適宜更新されるようになっている。
【００５８】
（変動比算出処理）
次に、変動比算出部１１６が所定のタイミングで実行する変動比算出処理について、図１２のフローチャートに沿ってその他図面を適宜参照しつつ詳細に説明する。
【００５９】
図１２の処理では、まず、ステップＳ７０において、変動比算出部１１６が、未選択のエリアを１つ選択する。ここでは、一例としてエリアｉが選択されたものとする。
【００６０】
次いで、ステップＳ７２では、変動比算出部１１６が、選択したエリアｉの過去の入力データ量fi(t)を過去入力データ量ＤＢ１３０から取得する。
【００６１】
次いで、ステップＳ７４では、変動比算出部１１６が、選択したエリアｉの過去の中間データ量gi(t)を過去中間データ量ＤＢ１３２から取得する。この場合、変動比算出部１１６は、ｋｅｙ−エリア変換テーブル１３８を参照して、エリアｉに対応するｋｅｙの中間データ量を過去中間データ量ＤＢ１３２から取得する。
【００６２】
次いで、ステップＳ７６では、変動比算出部１１６が、過去の入力データ量fi(t)と中間データ量gi(t)からＭａｐ処理前後のデータ量の変動比γ(i)を求める。変動比γ(i)は、次式（５）から求めることができる。
γ(i)＝gi(t)／fi(t)      …（５）
【００６３】
次いで、ステップＳ７８では、変動比算出部１１６が、求めた変動比γを変動比ＤＢ１３６に格納する。
【００６４】
次いで、ステップＳ８０では、変動比算出部１１６が、全てのエリアを選択し終えたか否かを判断する。このステップＳ８０の判断が否定された場合には、ステップＳ７０に戻り、ステップＳ７０以降の処理を繰り返し実行するが、ステップＳ８０の判断が肯定された場合には、図１２の全処理を終了する。
【００６５】
以上の処理により、各エリアの入力データをＭａｐ処理した場合におけるデータ量の変動比を算出し、変動比ＤＢ１３６に格納しておくことができる。
【００６６】
（中間データ量見積処理）
次に、Ｍａｐ処理の結果得られるｋｅｙごとの中間データ量の見積処理について、図１３、図１４のフローチャートに沿って説明する。
【００６７】
図１３の処理では、まず、ステップＳ１０２において、中間データ量見積部１１８が、中間データ量を見積もる必要のあるｋｅｙ＝ｘｉを選択する。
【００６８】
次いで、ステップＳ１０４では、中間データ量見積部１１８が、ｋｅｙ＝ｘｉに対応するエリアをｋｅｙ−エリア変換テーブル１３８を参照して特定し、当該エリア（ｉとする）と隣接エリアとの間に依存関係があるか否かを判断する。この場合、中間データ量見積部１１８は、相関パラメータＤＢ１３４を参照して、第１のエリアＩＤが「ｉ」となっているデータが存在するか否かを判断する。このステップＳ１０４の判断が否定された場合には、ステップＳ１０６に移行する。
【００６９】
ステップＳ１０６では、中間データ量見積部１１８は、急激な変動を考慮しない方法でエリアｉの中間データ量を見積もる。この場合、中間データ量見積部１１８は、過去におけるｋｅｙ＝ｘｉの中間データ量の移動平均μｘｉと分散σｘｉとを用いて、次式（６）に基づいて中間データ量Ｄｘｉ(t)を見積もる。
Ｄｘｉ(t)＝μｘｉ＋２×σｘｉ      …（６）
【００７０】
ステップＳ１０６の処理の後は、中間データ量見積部１１８は、ステップＳ１１８に移行する。
【００７１】
一方、ステップＳ１０４の判断が肯定された場合には、ステップＳ１０８に移行し、中間データ量見積部１１８は、未選択の隣接エリアを１つ選択する。例えば、隣接エリアとして、エリアｈが選択されたものとする。
【００７２】
次いで、ステップＳ１１０では、中間データ量見積部１１８が、エリアｉの中間データ量を見積もる処理を実行する。このステップＳ１１０においては、中間データ量見積部１１８は、図１４のフローチャートに沿った処理を実行する。
【００７３】
図１４のステップＳ１３０では、中間データ量見積部１１８が、相関パラメータを取得する。この場合、中間データ量見積部１１８は、図５（ａ）の相関パラメータＤＢ１３４から、第１のエリアＩＤ＝ｉ、第２のエリアＩＤ＝ｈの時間差パラメータτ(i,h)及び回帰直線パラメータα(i,h)、β(i,h)、σfxi(t)を取得する。
【００７４】
次いで、ステップＳ１３２では、中間データ量見積部１１８が、選択しているエリアの入力データ量を隣接エリアの入力データ量から求める。この場合、選択しているエリアｉの時刻ｔにおける入力データ量Ｉxi(t)は、時刻ｔよりも時間τ(i,h)だけ前にエリアｈで得られた入力データ量Ｉxh(t-τ(i,h))を用いて、次式（７）から求めることができる。
Ixi(t)＝α(i,h)×Ｉxh(t-τ(i,h))＋β(i,h)＋σfxi(t)    …（７）
【００７５】
次いで、ステップＳ１３４では、中間データ量見積部１１８が、変動比ＤＢ１３６からエリアｉにおける変動比γ(i)を取得する。
【００７６】
次いで、ステップＳ１３６では、中間データ量見積部１１８が、ステップＳ１３２において求めた入力データ量Ixi(t)を中間データ量に変換する。この場合、次式（８）から、求めた入力データ量Ixi(t)を中間データ量Ｄxi(t)_propに変換することができる。
Ｄxi(t)_prop＝γ(i)・Ixi(t)      …（８）
【００７７】
その後は、図１３のステップＳ１１２に移行する。
【００７８】
図１３のステップＳ１１２に移行すると、中間データ量見積部１１８は、ステップＳ１０６と同様、急激な変動を考慮しない方法でエリアｉの中間データ量を見積もる。次いで、ステップＳ１１４では、中間データ量見積部１１８は、ステップＳ１１０で見積もった中間データ量と、ステップＳ１１２で見積もった中間データ量とを比較し、大きい方の値を隣接エリアｈに基づく見積量Ｄxi(t)_propとして決定する。
【００７９】
次いで、ステップＳ１１６では、中間データ量見積部１１８は、全ての隣接エリアを選択したか否かを判断する。このステップＳ１１６の判断が否定された場合、すなわちエリアｉに隣接するすべてのエリアを選択し終えた場合には、ステップＳ１０８に戻り、ステップＳ１０８〜Ｓ１１６の処理・判断を繰り返し実行する。一方、ステップＳ１１６の判断が肯定された場合には、ステップＳ１１８に移行する。
【００８０】
ステップＳ１１８に移行すると、中間データ量見積部１１８は、これまでに決定された見積量のうち最大の見積量を出力する。例えば、ステップＳ１０６を経てステップＳ１１８に移行した場合には、ステップＳ１０６で見積もった中間データ量Ｄxi(t)をそのまま中間データ量の見積量Ｄxi(t)として、必要メモリ量見積部１２２に出力する。一方、ステップＳ１１４を経てステップＳ１１８に移行した場合には、ステップＳ１１４において決定された見積量Ｄxi(t)_propのうちの最大値を中間データ量の見積量Ｄxi(t)として、必要メモリ量見積部１２２に出力する。このように、ステップＳ１１８においてこれまでに決定された見積量のうち最大の見積量を出力することで、見積もった中間データ量を処理するときにメモリ量が不足するのを極力抑制することができる。
【００８１】
以上の処理により、図１３、図１４の処理が終了する。
【００８２】
なお、必要メモリ量見積部１２２は、ｋｅｙ＝ｘｉの中間データのＲｅｄｕｃｅ処理を実行する場合にエッジサーバ２０が確保しておくべきメモリ量Ｍxi(t)を次式（９）から見積もり、リソース管理部１２に対して出力する。
Ｍxi(t)＝Ｄxi(t)      …（９）
【００８３】
なお、リソース管理部１２は、必要メモリ量見積部１２２から受信した各ｋｅｙの中間データ量の処理のために確保すべきメモリ量Ｍxi(t)をエッジサーバ２０の処理実行場所制御部２４に通知する。そして、処理実行場所制御部２４は、各ｋｅｙのＲｅｄｕｃｅ処理で確保すべきメモリ量に基づいて、各エッジサーバ２０に各ｋｅｙのＲｅｄｕｃｅ処理を割り振る。
【００８４】
（処理タイミングについて）
図１５には、各部における各処理の実施タイミングを示すタイミングチャートが示されている。
【００８５】
図１５に示すように、本実施形態では、使用メモリ量予測部１４の相関パラメータ算出部１１４や変動比算出部１１６において、相関パラメータの算出処理や変動比の算出処理が事前に行われているものとする。そして、リクエスト受信部１１を介してリソース管理部１２に対し利用者端末４０から分析要求が入力されると、リソース管理部１２は、エッジサーバ２０の１つに処理実行場所制御部２４を配備する。
【００８６】
エッジサーバ２０の１つに配備された処理実行場所制御部２４は、Ｒｅｄｕｃｅ処理において確保する必要のあるメモリ量の情報をリソース管理部１２に対して要求する。この要求を受けて、使用メモリ量予測部１４は、各ｋｅｙの中間データ量に基づいて各ｋｅｙのＲｅｄｕｃｅ処理を実行するエッジサーバ２０が確保すべきメモリ量の算出処理を実行する。
【００８７】
リソース管理部１２は、各ｋｅｙの中間データをＲｅｄｕｃｅ処理する際に確保すべきメモリ量を処理実行場所制御部２４に通知する。そして、処理実行場所制御部２４は、リソース管理部１２から取得したメモリ量に基づいて各ｋｅｙのＲｅｄｕｃｅ処理を割り振るエッジサーバ２０を決定し、Ｒｅｄｕｃｅ処理をエッジサーバ２０に配備する。このＲｅｄｕｃｅ処理の配備は、各エッジサーバ２０がＭａｐ処理を実行する前に行われる。したがって、Ｍａｐ処理を行ったエッジサーバ２０の処理実行部２３は、Ｍａｐ処理終了後すぐにＲｅｄｕｃｅ処理を行うエッジサーバ２０に対して中間データを転送することができる。これにより、Ｍａｐ処理を行ったエッジサーバ２０は、Ｍａｐ処理終了後すぐにメモリを解放することができる。
【００８８】
（比較例）
ここで、比較例について説明する。
【００８９】
（ａ）Ｍａｐ処理が全て終了してからＲｅｄｕｃｅ処理を配備する場合
Ｍａｐ処理により各ｋｅｙの中間データがどの程度生成されるかがわからない場合には、Ｍａｐ処理がすべて完了した後に、生成された中間データ量に基づいてＲｅｄｕｃｅ処理を配備するエッジサーバ２０を決定する。
【００９０】
この場合、Ｍａｐ処理の処理量にかかわらず、Ｍａｐ処理を実行するすべてのエッジサーバ２０においてＭａｐ処理が終了し、Ｒｅｄｕｃｅ処理が各エッジサーバ２０に配備されるまではメモリに中間データが格納され続けることになる。
【００９１】
一方、本実施形態では、Ｒｅｄｕｃｅ処理が事前にエッジサーバ２０に配備されているため、これらのエッジサーバ２０に対してＭａｐ処理を実行したエッジサーバ２０から中間データが即座に転送されるようになっている。したがって、Ｍａｐ処理を実行したエッジサーバ２０のメモリはＭａｐ処理終了後にすぐに解放されることになる。
【００９２】
（ｂ）入力データ量や中間データ量が不変の場合
入力データ量や中間データ量が不変であれば、２回目以降のＭａｐ／Ｒｅｄｕｃｅ処理において、Ｒｅｄｕｃｅ処理を１回目と同一のエッジサーバ２０に配備することができる。しかしながら、この方法は、本実施形態のように入力データ量や中間データ量が変動する場合には採用できない。
【００９３】
（ｃ）入力データ量を過去のデータから予測できる場合
過去の入力データ量の遷移から移動平均や標準偏差を求め、これらに基づいて入力データ量を推定し、推定結果を利用してＲｅｄｕｃｅ処理を配備するエッジサーバ２０を決定することもできる。
【００９４】
この方法を用いることで、移動平均や分散が一定の範囲内であれば高確率で入力データ量を推定することができる。しかしながら、非周期的に入力データ量に急激な変動（移動平均や分散が所定範囲を超える変動）が生じるような場合には、入力データ量の推定精度が低下するおそれがある。
【００９５】
これに対し、本実施形態では、入力データ量の地理的な依存関係に基づいて、あるエリアにおける入力データ量を隣接するエリアの入力データ量から見積もるため、精度よく入力データ量を見積もることが可能である。
【００９６】
これまでの説明からわかるように、本実施形態では、相関パラメータ算出部１１４により、エリアｈの時系列データに生じた変動に対応する変動がエリアｉの時系列データに現れるまでに要する所要時間（時間差τ）を算出する算出部としての機能が実現されている。また、相関パラメータ算出部１１４により、所定時刻においてエリアｉ内のデバイス３０から得られた入力データ量と、所定時刻より時間差τだけ前の時刻においてエリアｈ内のデバイス３０から得られたデータ量との関係を示す関係式を導出する導出部としての機能が実現されている。
【００９７】
以上、詳細に説明したように、本実施形態によると、相関パラメータ算出部１１４は、エリアｉ内のデバイス３０からの入力データ量の時系列データと、エリアｉに対して地理的に隣接するエリアｈ内のデバイス３０からの入力データ量の時系列データとに基づいて、エリアｈの時系列データに生じた変動に対応する変動がエリアｉの時系列データに現れるまでに要する所要時間（時間差τ）を算出する。また、相関パラメータ算出部１１４は、エリアｉ，ｈの時系列データに基づいて、所定時刻におけるエリアｉの入力データ量と、所定時刻より時間差τだけ前の時刻におけるエリアｈの入力データ量と、の関係を示す関係式（上式（４））を導出する。そして、中間データ量見積部１１８は、関係式を用いて、時刻ｔよりも時間差τだけ前の時刻におけるエリアｈの入力データ量から、時刻ｔにおけるエリアｉの入力データ量を見積もる。これにより、本実施形態では、エリアｉにおいて入力データ量に大きな変動があったとしても、隣接するエリアｈにおける時間差τだけ前の時刻における入力データ量に基づいてエリアｉの入力データ量を精度よく見積もることができる。
【００９８】
また、本実施形態によると、変動比算出部１１６が、入力データ量と、入力データを用いてＭａｐ処理を行って生成された中間データ量との比（変動比）を算出する。そして、中間データ量見積部１１８は、見積もった入力データ量と変動比とに基づいて、中間データ量を見積もる。これにより、中間データ量見積部１１８は、精度よく見積もった入力データ量を用いて中間データ量を見積もるため、中間データ量を精度よく見積もることができる。
【００９９】
また、本実施形態によると、必要メモリ量見積部１２２は、中間データ量見積部１１８が見積もった中間データ量から、Ｒｅｄｕｃｅ処理を実行するエッジサーバ２０において確保すべきメモリ量を決定する。これにより、Ｒｅｄｕｃｅ処理を実行するエッジサーバ２０においてメモリが不足するのを防止することができる。
【０１００】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記憶媒体（ただし、搬送波は除く）に記録しておくことができる。
【０１０１】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの可搬型記憶媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１０２】
プログラムを実行するコンピュータは、例えば、可搬型記憶媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記憶媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１０３】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【０１０４】
なお、以上の実施形態の説明に関して、更に以下の付記を開示する。
（付記１）  第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出する算出部と、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出する導出部と、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もる見積部と、
を備える情報処理装置。
（付記２）  機器から得たデータに対して所定の処理が施されて新たなデータが生成された場合における前記機器から得たデータ量と前記新たなデータのデータ量の比を演算する演算部を備え、
前記見積部は、見積もった前記第１の時刻に前記第１のエリア内の機器から得られるデータ量と、前記比に基づいて、前記第１の時刻に前記第１のエリア内の機器から得られるデータから生成される新たなデータのデータ量を見積もる、ことを特徴とする付記１に記載の情報処理装置。
（付記３）  前記所定の処理は、Ｍａｐ／Ｒｅｄｕｃｅ処理に含まれる、エリアをキー情報とするＭａｐ処理であり、
前記見積部が見積もった前記新たなデータのデータ量から、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を決定する決定部を更に備える、付記２に記載の情報処理装置。
（付記４）  第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出し、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出し、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もる、
処理をコンピュータに実行させるための情報処理プログラム。
（付記５）  機器から得たデータに対して所定の処理が施されて新たなデータが生成された場合における前記機器から得たデータ量と前記新たなデータのデータ量の比を演算する処理をコンピュータに更に実行させ、
前記見積もる処理では、見積もった前記第１の時刻に前記第１のエリア内の機器から得られるデータ量と、前記比に基づいて、前記第１の時刻に前記第１のエリア内の機器から得られるデータから生成される新たなデータのデータ量を見積もる、ことを特徴とする付記４に記載の情報処理プログラム。
（付記６）  前記所定の処理は、Ｍａｐ／Ｒｅｄｕｃｅ処理に含まれる、エリアをキー情報とするＭａｐ処理であり、
前記見積もる処理において見積もった前記新たなデータのデータ量から、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を決定する、処理を前記コンピュータに更に実行させることを特徴とする付記５に記載の情報処理プログラム。
（付記７）  Ｍａｐ／Ｒｅｄｕｃｅ処理を行う分散処理システムであって、
第１のエリア内の機器から得られたデータ量に関する第１の時系列データと、前記第１のエリアに対して地理的に隣接する第２のエリア内の機器から得られたデータ量に関する第２の時系列データとに基づいて、前記第２の時系列データに生じた変動に対応する変動が前記第１の時系列データに現れるまでに要する所要時間を算出する算出部と、
前記第１の時系列データと、前記第２の時系列データとに基づいて、所定時刻において前記第１のエリア内の機器から得られたデータ量と、前記所定時刻より前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量と、の関係を示す関係式を導出する導出部と、
前記関係式を用いて、第１の時刻よりも前記所要時間だけ前の時刻において前記第２のエリア内の機器から得られたデータ量から、前記第１の時刻に前記第１のエリア内の機器から得られるデータ量を見積もるとともに、前記第１の時刻に前記第１のエリア内の機器から得られるデータに対して、エリアをキー情報とするＭａｐ処理を施した場合に生成される新たなデータのデータ量を見積もる見積部と、
前記見積部の見積もり結果に基づいて、Ｒｅｄｕｃｅ処理を実行する装置において確保すべきメモリ量を決定する決定部と、
を備える分散処理システム。
【符号の説明】
【０１０５】
１０  クラウド（情報処理装置）
３０  デバイス（機器）
１１４  相関パラメータ算出部（算出部、導出部）
１１８  中間データ量見積部（見積部）
１１６  変動比算出部（演算部）
１２２  必要メモリ量見積部（決定部）
【図１】
2020024509.tif 000003
【図２】
2020024509.tif 000004
【図３】
2020024509.tif 000005
【図４】
2020024509.tif 000006
【図５】
2020024509.tif 000007
【図６】
2020024509.tif 000008
【図７】
2020024509.tif 000009
【図８】
2020024509.tif 000010
【図９】
2020024509.tif 000011
【図１０】
2020024509.tif 000012
【図１１】
2020024509.tif 000013
【図１２】
2020024509.tif 000014
【図１３】
2020024509.tif 000015
【図１４】
2020024509.tif 000016
【図１５】
2020024509.tif 000017