(57)【要約】【課題】利用装置におけるデータの取得頻度に基づいて転送コストが小さくなるように蓄積ルールを決定すること。【解決手段】通信制御装置は、データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置であって、前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する情報収集部と、前記情報収集部によって収集される前記データの取得に関する情報に基づき、前記蓄積装置における前記データの蓄積ルールを決定する決定部と、前記決定部で決定される蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する送信部とを含む。【選択図】図３
2015191301.tif 000002
【特許請求の範囲】
【請求項１】
データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置であって、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する情報収集部と、
前記情報収集部によって収集される前記データの取得に関する情報に基づき、前記蓄積装置における前記データの蓄積ルールを決定する決定部と、
前記決定部で決定される蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する送信部と
を含む、通信制御装置。
【請求項２】
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記決定部は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき、前記利用装置への前記データの転送時間が短くなるように、前記データを蓄積する前記蓄積装置と、当該蓄積装置が前記データを蓄積する時間とを選択することにより、前記蓄積ルールを決定する、請求項１記載の通信制御装置。
【請求項３】
前記決定部は、前記ネットワークにおける前記データの転送に係る転送コストと前記蓄積装置における前記データの蓄積コストの和が最小になるように前記蓄積ルールを決定する、請求項２に記載の通信制御装置。
【請求項４】
前記情報収集部は、前記データの取得頻度又は取得時期に関する情報を基に前記利用装置を分類し、
前記決定部は、前記分類毎に前記蓄積ルールを決定する、請求項２又は３に記載の通信制御装置。
【請求項５】
前記決定部は、前記データの蓄積先となる蓄積装置と、前記蓄積先となる蓄積装置における前記データの蓄積時間とを含む蓄積ルールを決定する、請求項１乃至４のいずれか一項に記載の通信制御装置。
【請求項６】
データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置と通信を行う前記蓄積装置であって、
前記データを生成する生成装置で生成されるデータを取得する取得部と、
前記取得部で取得されるデータを蓄積する蓄積部と、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報に基づき決定される蓄積ルールを受信する受信部と、
前記受信部で受信される蓄積ルールに基づき、前記取得部で取得されるデータの蓄積を管理する管理部と
を含む、蓄積装置。
【請求項７】
データを生成する生成装置で生成されるデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積される前記データを利用する利用装置とにネットワークを介して接続されて、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する工程と、
収集された前記データの取得に関する情報に基づき、前記複数の蓄積装置における前記データの蓄積ルールを決定する工程と、
決定された蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する工程と
を含む通信制御方法。
【請求項８】
データを生成する生成装置で生成されるデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積される前記データを利用する利用装置とにネットワークを介して接続されるコンピュータが、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集し、
収集された前記データの取得に関する情報に基づき、前記複数の蓄積装置における前記データの蓄積ルールを決定し、
決定された蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する
通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、蓄積装置、通信制御方法、及び通信制御プログラムに関する。
【背景技術】
【０００２】
従来、様々な情報源からデータを受信するストリームデータ処理システムにおいて、複数のデータ蓄積装置および複数のフィルタ処理装置を用い、情報管理装置が、各データ蓄積装置に蓄積される過去のストリームデータの位置情報（追記データ位置情報）をデータ位置管理ＤＢにおいて管理するものがある。
情報管理装置は、参照クライアントから再フィルタ指示を受信したとき、この追記データ位置情報を参照して、当該ストリームデータを蓄積するデータ蓄積装置からこの再フィルタ処理の対象となるストリームデータを読み出し、再フィルタ処理を行う（例えば、特許文献１を参照）。
【０００３】
また、一定のファイルシステム移動ルールに基づいて、当該ファイルシステム移動ルールに適合するファイルシステムを第１のストレージ装置の第１のボリュームから第２のストレージ装置の第２のボリュームに移動させるファイルシステム移動指示部と、ファイルシステム移動部によるファイルシステムの移動に伴って、ファイルシステムの格納情報を更新するデータ管理システムがある。
【０００４】
データ管理システムは、更新されたファイルシステムの格納情報を送信するファイルシステム格納情報管理部と、ファイルシステム格納情報管理部により送信されたファイルシステムの格納情報により、クライアント装置からのファイル検索要求に基づくファイルを検索するための検索情報を更新する検索情報管理部とを備える（例えば、特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２９４７７４号公報
【特許文献２】特開２００８−０７１０３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
端末により生成されるデータをネットワーク内に配置される複数の蓄積装置のいずれかに蓄積する場合、データを蓄積する蓄積装置の選定又はデータの保存期間を、データを利用する装置の配置又はデータの利用頻度と無関係に決定すると、蓄積装置に蓄積されたデータを利用する利用装置においてデータを転送する際の転送コストが増大するおそれがある。
【０００７】
そこで、一側面では、利用装置におけるデータの取得頻度に基づいて転送コストが小さくなるように蓄積ルールを決定することを目的とする。
【課題を解決するための手段】
【０００８】
一つの案では、通信制御装置は、データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置であって、前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する情報収集部と、前記情報収集部によって収集される前記データの取得に関する情報に基づき、前記蓄積装置における前記データの蓄積ルールを決定する決定部と、前記決定部で決定される蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する送信部とを含む。
【発明の効果】
【０００９】
一態様によれば、利用装置におけるデータの取得頻度に基づいて転送コストが小さくなるように蓄積ルールを決定することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態におけるシステム構成例を示す図である。
【図２】本実施の形態における通信制御装置のハードウェア構成例を示す図である。
【図３】本実施の形態における通信制御装置の機能構成例を示す図である。
【図４】本実施の形態における蓄積装置の機能構成例を示す図である。
【図５】構成情報テーブルの一例を示す図である。
【図６】蓄積装置情報テーブルの一例を示す図である。
【図７】生成装置情報テーブルの一例を示す図である。
【図８】利用装置情報テーブルの一例を示す図である。
【図９】転送・蓄積コスト係数テーブルの一例を示す図である。
【図１０】システム構成例における蓄積ルール決定第１ステップの一例を示す図である。
【図１１】システム構成例における蓄積ルール決定第２ステップの第１の一例を示す図である。
【図１２】システム構成例における蓄積ルール決定第２ステップの第２の一例を示す図である。
【図１３】システム構成例における蓄積ルール決定第３ステップの第１の一例を示す図である。
【図１４】システム構成例における蓄積ルール決定第３ステップの第２の一例を示す図である。
【図１５】システム構成例における最終決定された蓄積ルールの一例を示す図である。
【図１６】蓄積ルールテーブルの一例を示す図である。
【図１７】通信制御装置の動作の一例を示すフローチャートである。
【図１８】第１ステップの動作の一例を示すフローチャートである。
【図１９】第２ステップの動作の一例を示すフローチャートである。
【図２０】第２ステップにおけるデータ移動コスト算出の動作の一例を示すフローチャートである。
【図２１】第２ステップにおけるデータ取得コスト算出の動作の一例を示すフローチャートである。
【図２２】第２ステップにおける蓄積コスト算出の動作の一例を示すフローチャートである。
【図２３】第３ステップの動作の一例を示すフローチャートである。
【図２４】第３ステップにおけるデータ移動コスト算出の動作の一例を示すフローチャートである。
【図２５】第３ステップにおけるデータ取得コスト算出の動作の一例を示すフローチャートである。
【図２６】第３ステップにおける蓄積コスト算出の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本実施の形態におけるシステム構成例を示す図である。図１は、ネットワーク上に存在する装置同士の論理的な接続関係を表すネットワークトポロジである。ネットワークトポロジでは、ネットワーク上の装置をノードとして、ノード間の経路を抽象化して表している。
【００１２】
図１において、Ｓ１はデータを生成するデータ生成装置を示している。Ｎ１〜Ｎ１６は、データ生成装置で生成されたデータを蓄積する蓄積装置を示している。Ａ１１〜Ａ１９は、データ生成装置で生成されて蓄積装置に蓄積されたデータを利用する利用装置を示している。Ｌ１は、データ生成装置で生成されたデータがどの蓄積装置に蓄積されているかを管理するデータ位置管理装置を示している。さらにＣ１は、蓄積装置に対して蓄積装置におけるデータの蓄積方法を定めた蓄積ルールを送信する通信制御装置を示している。データ生成装置Ｓ１、蓄積装置Ｎ１〜Ｎ１６、利用装置Ａ１１〜Ａ１９、データ位置管理装置Ｌ１、および通信制御装置Ｃ１は、ネットワーク上のノードとして図示する経路で接続されている。
【００１３】
データ生成装置Ｓ１は、定期的にあるいは非定期的にデータを生成する。生成されたデータはネットワークで接続された蓄積装置Ｎ１に所定の通信プロトコルによって送信される。データ生成装置Ｓ１は、例えば各種の測定データを生成するセンサ又はカウンタを備えた装置である。データ生成装置によってデータの生成周期又は生成されるデータの大きさが異なる。データ生成装置で生成されるデータの種類は、例えば数値データ、画像データ、音声データ等である。
【００１４】
蓄積装置Ｎ１〜Ｎ１６は、後述するデータの蓄積方法を定めた蓄積ルールに従って、データ生成装置Ｓ１で生成されたデータを、自らの蓄積部に蓄積し、またネットワークで接続された他の蓄積装置に転送する。蓄積ルールは通信制御装置Ｃ１から受信する。
【００１５】
蓄積装置Ｎ１は、データ生成装置Ｓ１で生成されたデータを蓄積し、蓄積装置Ｎ７に転送する。
【００１６】
蓄積装置Ｎ１〜Ｎ１６は、データ位置管理装置Ｌ１に対して、自らが蓄積しているデータの情報を送信して、どのデータがどの蓄積装置に蓄積されているかについてデータ位置管理装置Ｌ１が管理可能としている。
【００１７】
蓄積装置Ｎ１〜Ｎ１６は、例えば通信キャリアによって運用されるアクセス網又はコア網などのネットワーク上に配置されてデータを中継する装置であってもよい。また、データセンタ事業者によって運用されるデータセンタ内又は企業網の中などに配置される装置であってもよい。
【００１８】
本実施形態では、蓄積装置Ｎ１〜Ｎ９はアクセス網に、蓄積装置Ｎ１０〜Ｎ１４はコア網に、蓄積装置Ｎ１５およびＮ１６はそれぞれデータセンタＤＣ１およびＤＣ２にそれぞれ設置される例を示している。ただし、ネットワーク網の構成、蓄積装置の数及び配置はこの限りではない。
【００１９】
利用装置Ａ１１〜Ａ１９は、蓄積装置Ｎ１〜Ｎ１６に蓄積されたデータを利用する装置である。利用装置Ａ１１〜Ａ１９には、例えばデータを利用するアプリケーションのプログラムをそれぞれ備える。本実施形態では１つの利用装置に対して１つのアプリケーションプログラムを備える場合を例示しているので、アプリケーションの符号も利用装置の符号Ａ１１〜Ａ１９をそのまま使用する。
【００２０】
利用装置Ａ１１〜Ａ１９がデータを利用する頻度及びタイミングは、それぞれの利用装置によって異なる場合がある。例えば、アプリケーションプログラムの要求によって、データ生成装置Ｓ１で生成されるデータを、データが生成されるタイミングで全て利用する場合、又は、蓄積装置に蓄積されたデータを所定のタイミングで読み出して利用する場合がある。
【００２１】
利用装置Ａ１１〜Ａ１９は、例えばデータの利用頻度をそれぞれの利用装置の情報として通信制御装置Ｃ１に送信することができる。利用頻度は、例えば、１時間に１回、１日に１回、又はデータが生成される都度等である。
【００２２】
図１では、利用装置Ａ１１は蓄積装置Ｎ１に接続され、利用装置Ａ１２は蓄積装置Ｎ２に接続され、また利用装置Ａ１３は蓄積装置Ｎ７に接続されていることを例示している。
【００２３】
データ位置管理装置Ｌ１は、蓄積装置Ｎ１〜Ｎ１６がデータの蓄積、移動、又は削除等を行った際に、蓄積装置Ｎ１〜Ｎ１６から位置登録要求を受信する。位置登録は、データを蓄積している蓄積装置をデータ位置管理装置Ｌ１に登録するものであり、位置登録要求は、データの識別情報と蓄積装置の識別情報を含む。データ位置管理装置Ｌ１は、位置登録要求を受信して、データの識別情報と蓄積装置の識別情報を保存することにより、どのデータがどこの蓄積装置に蓄積されているかを管理する。
【００２４】
データ位置管理装置Ｌ１は、蓄積装置Ｎ１〜Ｎ１６から目的のデータが蓄積された蓄積装置を検索する位置検索要求を受信すると、データの識別情報から目的のデータが蓄積された蓄積装置を検索して、蓄積装置の検索結果を含む位置検索応答を蓄積装置に送信する。
【００２５】
通信制御装置Ｃ１は、蓄積装置Ｎ１〜Ｎ１６におけるデータの蓄積および転送を制御するための蓄積ルールを決定する。蓄積ルールは利用装置Ａ１１〜Ａ１９から収集された情報によって決定される。蓄積ルールの決定方法の詳細は後述する。通信制御装置Ｃ１は、決定された蓄積ルールをそれぞれの蓄積装置Ｎ１〜Ｎ１６に送信する。図１では、通信制御装置Ｃ１は蓄積装置１４に接続されている例を示しているが、蓄積装置Ｎ１〜Ｎ１６と通信ができる環境であればネットワーク上のどこに接続されていても良い。
【００２６】
なお、図１では、データ生成装置Ｓ１、蓄積装置Ｎ１〜Ｎ１６、利用装置Ａ１１〜Ａ１９、および通信制御装置Ｃ１によって構築されるシステムの一例を例示している。ネットワークで接続されるデータ生成装置、蓄積装置、利用装置、および通信制御装置の構成はこの例の限りではない。例えば、通信装置Ｃ１の機能とデータ位置管理装置Ｌ１の機能とを一つの装置で構成してもよい。
【００２７】
また、図１では、ネットワーク内部のスイッチ又はルータなどのネットワーク機器の図示は省略しているが、これらネットワーク機器により蓄積装置及び通信制御装置が接続されていても良い。例えば、蓄積装置Ｎ１、Ｎ２およびＮ７において、図１のように蓄積装置Ｎ７がそれぞれ蓄積装置Ｎ１とＮ２に個別のリンクで接続されていても良い。また、蓄積装置Ｎ１、Ｎ２およびＮ７の間に図示しないレイヤ２スイッチがあり、レイヤ２スイッチと各蓄積装置Ｎ１、Ｎ２およびＮ７がスター型に接続されていても良い。
【００２８】
また、例えば、蓄積装置Ｎ１１、Ｎ１２およびＮ１４は、図１のように３つの蓄積装置間がそれぞれ個別のリンクで相互に接続されていても良い。また、蓄積装置Ｎ１１、Ｎ１２およびＮ１４の間に図示しないルータがあり、ルータと各蓄積装置Ｎ１１、Ｎ１２およびＮ１４がスター型に接続されていても良い。
【００２９】
次に、図２を用いて、通信制御装置Ｃ１のハードウェア構成を説明する。図２は、本実施の形態における通信制御装置のハードウェア構成例を示す図である。
【００３０】
図２において、通信制御装置１は、プロセッサ１１、主記憶装置１２、入力装置１３、出力装置１４、補助記憶装置１５、可搬記録媒体１９を駆動する可搬記憶媒体駆動装置１６、およびネットワークインタフェース１７を備える。また、これらはバス１８により互いに接続されている。
【００３１】
プロセッサ１１は、例えば、ＣＰＵ（Central Processing Unit）である。プロセッサ１１は、補助記憶装置１５又は可搬記録媒体１９に格納されたＯＳ（Operating System）又は様々なアプリケーションプログラムを主記憶装置１２に読み出して実行する。
【００３２】
主記憶装置１２は、例えば、ＲＡＭ（Random Access Memory）である。主記憶装置１２には、補助記憶装置１５又は可搬記録媒体１９に格納されたＯＳ又はアプリケーションプログラムが読み出されて記憶される。主記憶装置１２には、ＯＳが管理する主記憶領域がマッピングされて、ＯＳ上で動作するアプリケーションプログラムがプロセッサ１１によって実行される。
【００３３】
入力装置１３は、例えば、キーボード、マウス等のポインティングデバイス等のデータ入力デバイスである。出力装置１４は、プロセッサ１１の処理の結果を出力する出力デバイスである。出力装置１４は、例えば、スピーカ等の音声出力装置、ディスプレイ、又はプリンタ等の印字装置である。
【００３４】
補助記憶装置１５は、例えば、ＥＰＲＯＭ（Erasable Programmable ＲＯＭ）、ＳＳＤ（Solid State Drive）又はハードディスクドライブ等の不揮発性のメモリである。補助記憶装置１５は、ＯＳ又は様々なアプリケーションプログラム等のプログラム、各種のデータをプロセッサ１１により読み出し可能に記憶する。補助記憶装置１５は、主記憶装置１２の仮想メモリとして機能させてもよい。
【００３５】
図１で説明した、生成装置Ｓ１で生成されたデータは、補助記憶装置１５に記憶されて蓄積することができる。
【００３６】
可搬記録媒体駆動装置１６は、可搬記録媒体１９に記録されるプログラム又は各種データを、プロセッサ１１から読み書きできるように駆動する。可搬記録媒体１９は、例えば、メモリカード、光ディスク、磁気ディスクである。
【００３７】
ネットワークインタフェース１７は、ネットワークとの情報の入出力を行うインタフェースである。ネットワークインタフェース１７は、例えば、ＮＩＣ（Network Interface Card）、無線ＬＡＮ（Local Area Network）カードである。
【００３８】
なお、図２は通信制御装置Ｃ１のハードウェア構成を例示したが、蓄積装置Ｎ１〜Ｎ１６、利用装置Ａ１１〜Ａ１９、およびデータ位置管理装置Ｌ１についても、図２で例示した同様のハードウェア構成とすることができる。従って、蓄積装置Ｎ１〜Ｎ１６、利用装置Ａ１１〜Ａ１９、およびデータ位置管理装置Ｌ１のハードウェア構成については説明を省略する。
【００３９】
次に、図３を用いて通信制御装置Ｃ１の機能を説明する。図３は、本実施の形態における通信制御装置の機能構成例を示す図である。
【００４０】
図３において、通信制御装置２は、情報収集部２１、決定部２２、及び送受信部２３を備える。
【００４１】
決定部２２は、転送コスト試算部２２１、蓄積コスト試算部２２２、及び蓄積ルール決定部２２３を備える。また、送受信部２３は、送信部２３１、及び受信部２３２を備える。
【００４２】
情報収集部２１、決定部２２、及び送受信部２３の各機能は、図２で説明した主記憶装置１２に記憶されたプログラムをプロセッサ１１が実行することにより機能させることができる。
【００４３】
送受信部２３は、図１で説明したデータ生成装置Ｓ１、利用装置Ａ１１〜Ａ１９、データ位置管理装置Ｌ１、及び蓄積装置Ｎ１〜Ｎ１６との間におけるデータ又は制御メッセージを含むメッセージパケットの送受信をネットワークを介して行う。メッセージパケットは、例えば、通信回線に応じたレイヤ２ヘッダ及びＩＰ（Internet Protocol）／ＴＣＰ（Transmission Control Protocol）／ＨＴＴＰ（Hypertext Transfer Protocol）ヘッダとＨＴＴＰボディを含み、ＨＴＴＰボディの中に、データ生成元端末によって生成されたデータ値、識別子、及び制御メッセージの内容等が含まれる。送信部２３１はメッセージパケットの送信を行い、受信部２３２はメッセージパケットの受信を行う。但し、通信プロトコルは他のプロトコルを使用してもよい。
【００４４】
情報収集部２１は、利用装置Ａ１１〜Ａ１９の情報を収集する。収集する情報は、例えば、利用装置Ａ１１〜Ａ１９における、データ生成装置Ｓ１によって生成されたデータの利用頻度の情報である。利用頻度は、例えば、利用装置Ａ１１〜Ａ１９がそれぞれ有するアプリケーションが要求するデータの利用間隔、あるいは利用のタイミングである。情報収集部２１は、利用装置Ａ１１〜Ａ１９が有するアプリケーションを要求するデータの利用頻度に応じて後述するカテゴリに分類することができる。本実施形態においては、情報収集部２１は、後述する利用装置情報テーブルに分類したカテゴリを記録する。
【００４５】
転送コスト試算部２２１は、後述する計算方法によって、データ生成装置Ｓ１で生成されるデータの生成頻度、データ容量、アプリケーションの利用頻度、ネットワーク上のそれぞれの装置の構成情報等の情報を基にネットワークにおけるデータ転送コストを算出する。なお、ネットワーク上での装置の構成情報は、図１で説明した蓄積装置同士のネットワークでの接続トポロジで表現され、データ転送コストの算出は、図１のネットワークトポロジを基に算出される。
【００４６】
蓄積コスト試算部２２２は、それぞれの蓄積装置Ｎ１〜Ｎ１６におけるデータの蓄積コストを算出する。例えば、図１で説明したデータセンタＤＣ１、ＤＣ２等の大容量の蓄積を行う蓄積装置では、蓄積容量あたりの蓄積単価が低くなる。また蓄積可能な容量も大きくなる。一方、小容量の蓄積容量しか持たない蓄積装置では蓄積容量あたりの蓄積単価は高くなる。また、蓄積可能な容量も小さくなる。蓄積コスト試算部は、蓄積装置における蓄積単価の情報と蓄積するデータの容量を基に蓄積コストを算出する。
【００４７】
蓄積ルール決定部２２３は、転送コスト試算部２２１と蓄積コスト試算部２２２による試算結果に基づいて、データの蓄積先の蓄積装置と、その蓄積装置における蓄積ルールを決定する。蓄積ルールには、それぞれの蓄積装置における、蓄積時間、他の蓄積装置へのデータの移動、他の蓄積装置へのデータのコピー、データの削除などのアクションが規定される。蓄積ルールの詳細は後述する。蓄積ルール決定部２２３は、決定した蓄積ルールを、例えばテキストデータとして、送信部２３１を介してそれぞれの蓄積装置Ｎ１〜Ｎ１６に送信する。
【００４８】
次に、図４を用いて蓄積装置Ｎ１〜Ｎ１６の機能を説明する。図４は、本実施の形態における蓄積装置の機能構成例を示す図である。
【００４９】
図４において、蓄積装置３は、メッセージ処理部３１、データ制御部３２、管理部３３、識別部３４、及び送受信部３５を備える。
【００５０】
メッセージ処理部３１は、位置登録要求部３１１、位置検索要求部３１２、及び転送要求部３１３を備える。データ制御部３２は、移動処理部３２１、コピー処理部３２２、削除処理部３２３、及び取得部３２４を備える。また、送受信部３５は、送信部３５１、及び受信部３５２を備える。
【００５１】
送受信部３５は、図３で説明した送受信部２３と同様の機能を有する。送受信部３５は、通信制御装置Ｃ１から蓄積ルールを受信し、生成装置で生成されたデータの送受信を行う。
【００５２】
識別部３４は、受信部３５２により受信されたメッセージパケットのヘッダ又はボディの解析を行い、メッセージパケットの種別又はメッセージ送信元の装置の識別子を抽出する。
【００５３】
ここで、メッセージパケットの種別とは、例えば、データ生成装置Ｓ１からのデータ送信、利用装置Ａ１１〜Ａ１９からのデータ取得要求、他の蓄積装置からのデータ転送又は他の蓄積装置へのデータ転送要求である。また、データ位置管理装置Ｌ１からの位置登録要求に対する応答又は位置検索要求に対する応答である。
【００５４】
識別部３４は、メッセージの種別がデータ生成装置Ｓ１で生成されたデータ送信だった場合には、抽出したデータ生成装置の識別子を元に、通信制御装置Ｃ１から受信した蓄積ルールを検索し、蓄積対象のデータ生成装置であるか否かを確認する。
【００５５】
メッセージ処理部３１は、各種の要求メッセージを生成して送信部３５１を介して他の蓄積装置又はデータ位置管理装置Ｌ１へ生成した要求メッセージを送信する。また、送信した要求メッセージに対する応答メッセージ又は転送データを、受信部３５２を介して他の蓄積装置又はデータ位置管理装置Ｌ１から受信する。
【００５６】
位置登録要求部３１１は、自装置においてデータの蓄積、移動、又は削除を行った際に、データ位置管整理装置Ｌ１へ、データ生成装置の識別子、蓄積中のデータの生成時刻又はその範囲、自身の蓄積装置の識別子を含んだ位置登録要求メッセージを送信する。位置登録要求部３１１は、データ位置管理装置Ｌ１から、応答として位置登録応答メッセージを受信する。
【００５７】
位置検索要求部３１２は、利用装置Ａ１１〜Ａ１９からのデータ取得要求時に、自身が蓄積していないデータについて、データ位置管理装置Ｌ１へ、蓄積先の蓄積装置の検索を要求する位置検索要求メッセージを送信する。位置検索要求部３１２は、データ位置管理装置Ｌ１から、検索結果を含む位置検索応答メッセージを受信する。
【００５８】
転送要求部３１３は、蓄積装置が自装置に蓄積していないデータについて、他の蓄積装置に対して転送を要求するとともに、要求したデータが他の蓄積装置から転送された場合に、送信部２３１を介してデータ取得要求元の利用装置へ転送されたデータの送信を行う。
【００５９】
管理部３３は、通信制御装置Ｃ１から送信された蓄積ルールに基づいて、データ制御部３２に対して、蓄積データの操作を指示する。蓄積データの操作としては、例えば、データの転送（移動）、データのコピー（複製）、データの削除、データの取得である。
【００６０】
移動処理部３２１は、蓄積ルールに従って、蓄積されたデータを他の蓄積装置からの転送の要求に基づき送信部２３１を介して転送する。コピー処理部３２２は、蓄積ルールに従って、所定のタイミングで蓄積中のデータをコピーして他の蓄積装置にコピーしたデータを送信する。削除処理部３２３は、蓄積ルールに従って、所定のタイミングで蓄積中のデータを削除する。また、取得部３２４は、蓄積ルールに従って、データ生成装置Ｓ１によって生成されたデータを取得する。
【００６１】
次に、図５を用いて、図３で説明した転送コスト試算部２２１が転送コストの算出に用いるネットワークを構成する機器の構成情報テーブルの説明をする。図５は、構成情報テーブルの一例を示す図である。構成情報テーブルはネットワークトポロジをテーブルの形式にて表している。構成情報テーブルは、本実施形態においては通信制御装置Ｃ１の内部に保存しておくが、転送コスト試算部２２１が利用可能であれば、例えば、ネットワークで接続された他の装置に保存しておいてもよい。
【００６２】
構成情報テーブルのデータ項目の情報は、例えば定期的にネットワークから収集して更新してもよいし、蓄積ルールを作成するときに収集してもよい。
【００６３】
図５において、構成情報テーブルは、送信元ノード、宛先ノード、及びリンクコストの各データ項目を有する。送信元ノードおよび宛先ノードの番号は、図１で説明した蓄積装置Ｎ１〜Ｎ１６の識別子を表す。例えば、送信元ノード"１"は蓄積装置Ｎ１を示す。
【００６４】
リンクコストは、ノードとノードをデータ通信で利用する際のリンクコストである。例えば、テーブルの第１行目は、送信元ノードから宛先ノードへのリンクコストが１であることを示している。ここでリンクコストとは、ノード間の回線スピード又は回線使用料を基にノード間の通信をコストとして表してもよい。例えば、リンクの回線速度が１０Ｍｂｐｓであり、１ヶ月当たりの回線使用料金が１０万円であったとすると、１ｂｐｓ当たりのコストに換算した回線コスト単価として０．００１と設定しても良い。本実施形態では説明を簡単にするために図１で示す蓄積装置間のノードのコストは全て１としている。
【００６５】
図５の構成情報テーブルは、図１で示す蓄積装置のネットワークトポロジにおける全ての蓄積装置のノード間のリンクコストを示している。構成情報テーブルのデータ項目の情報は、例えば定期的にネットワークから収集して更新してもよいし、蓄積ルールを作成するときに収集してもよい。
【００６６】
図１で示したネットワークトポロジにおいて、蓄積装置間でデータの転送を行う場合の転送コストは、データが通過する経路によって異なる。転送コストが最小となる経路は、例えばダイクストラ法によって最短経路を計算することにより選択することができる。図１の蓄積装置Ｎ１から蓄積装置Ｎ１６への最短経路は、蓄積装置Ｎ１−Ｎ７−Ｎ１０−Ｎ１３（又はＮ１１）−Ｎ１４―Ｎ１６であり、経路コストは５となる。
【００６７】
なお、本実施形態では各蓄積装置が互いに接続されている構成を示しているが、例えば通信経路にスイッチ又はルータ等のネットワーク機器が存在するネットワークトポロジであってもよい。その場合は図５の構成情報テーブルには、スイッチ又はルータを考慮したリンクコストを規定してもよい。例えば、蓄積装置Ｎ１と蓄積装置Ｎ７の間にレイヤ２スイッチが介在し、レイヤ２スイッチと蓄積装置１及びＮ７がそれぞれリンクコスト０．５で接続される場合は、０．５のリンクコストが追加される。
【００６８】
次に、図６を用いて、蓄積コスト試算部２２２が蓄積コストを算出するときに使用する蓄積装置情報を説明する。図６は、蓄積装置情報テーブルの一例を示す図である。蓄積装置情報テーブルは、本実施形態においては通信制御装置Ｃ１の内部に保存しておくが、蓄積コスト試算部２２２が利用可能であれば、例えば、ネットワークで接続された他の装置に保存しておいてもよい。
【００６９】
図６において、蓄積装置情報テーブルは、蓄積装置識別子（Ｎ１〜Ｎ１６）、最大蓄積容量、種別、及び蓄積コスト単価の各データ項目を有する。蓄積装置情報テーブルのデータ項目の情報は、例えば定期的にネットワークから収集して更新してもよいし、蓄積ルールを作成するときに収集してもよい。
【００７０】
最大蓄積容量は、各蓄積装置で蓄積が可能なデータ容量を示している。最大蓄積容量は、例えば図２で説明した補助記憶装置１５の記憶容量等によって定められる。なお、後述する蓄積ルール決定処理では、蓄積されるデータの総容量が最大蓄積容量によって制限される。図示しない使用容量を記録しておき、容量が不足する場合には、蓄積コスト試算において蓄積先の候補から除外するようにしてもよい。
【００７１】
種別は、蓄積装置の用途又はネットワーク上の設置位置によって、"上位"、"下位"、及び"ＤＣ（データセンタ）"の３種類に分類している。例えば、図１で説明したアクセス網などの下位のネットワークに設置される場合を"下位"、コア網などの上位のネットワークに設置される場合を"上位"、さらにデータセンタに設置される場合を"ＤＣ"として分類する。また、種別の他の分類例としては、物理的な装置規模に基づいて分類してもよい。例えば、数ギガバイト程度の容量の蓄積装置を"小規模"、汎用サーバのように数十ギガから数百ギガバイト程度の容量の蓄積装置を"中規模"、さらに数テラ〜数十テラバイトの容量の装置を"大規模"のように分類しても良い。
【００７２】
蓄積コスト単価は、蓄積装置にデータを蓄積する際の単位量当たりのコストである。一般的に、蓄積容量の大きい蓄積装置の単位量あたりの蓄積コストは低くなり、蓄積容量の小さな蓄積装置の単位量あたりの蓄積コストは高くなる。蓄積コストは、蓄積装置の記憶デバイスの種類によって異なり、例えばフラッシュメモリを用いた蓄積デバイスに比べて、ハードディスクを用いた蓄積デバイスは低くなる。図６では、Ｎ１〜Ｎ６の下位の蓄積装置は"１００"と蓄積コストが高く、Ｎ６〜Ｎ１４は"１０"、さらにＮ１５及びＮ１６は"１"と低くなっている。
【００７３】
次に、図７を用いて、データを生成する生成装置Ｓ１の情報について説明する。図７は、生成装置情報テーブルの一例を示す図である。生成装置情報テーブルのデータ項目の情報は、例えば定期的にネットワークから収集して更新してもよいし、蓄積ルールを作成するときに収集してもよい。
【００７４】
図７において、生成装置情報テーブルは、生成装置識別子、接続先蓄積装置、生成データサイズ、及び生成周期の各データ項目を有する。生成装置情報テーブルの各データ項目は、図３で説明した情報収集部２１が、送受信部２３を介して、ネットワークに存在する生成装置から収集し、生成装置情報テーブルを生成する。
【００７５】
生成装置識別子は、データを生成するセンサ等の装置を識別する識別子である。生成装置識別子は、例えば、生成装置それぞれに一つ割り当てられた識別子でもよいし、生成装置で実行される複数のデータ生成プログラムのそれぞれに対応付けられた識別子であってもよい。また、生成装置に複数のセンサが取り付けられている場合、センサ毎の識別子であってもよい。
【００７６】
生成装置識別子は、生成されて蓄積又は転送等の制御対象となるデータ毎に設定することができる。例えば、１つの生成装置が温度センサと湿度センサを備える場合、温度センサと湿度センサのそれぞれに生成装置識別子を設定してもよい。本実施形態においては、生成装置はＳ１の１台のみの場合を説明しているが、生成装置情報テーブルには、データを生成するセンサが複数の場合には、センサ毎のデータ項目を入力することができる。
【００７７】
接続先蓄積装置は、生成装置が直接接続される蓄積装置の通信装置識別子である。例えば、図１において、生成装置Ｓ１は蓄積装置Ｎ１に直接接続されているため、図７のテーブルでは、接続先蓄積装置としてＮ１が設定されている。
【００７８】
生成データサイズは、生成装置が生成する１データあたりのサイズである。生成データサイズは、生成されるデータそのもののサイズであってもよいし、例えば、ネットワークで通信されるパケットのヘッダ等を含めたパケットサイズであってもよい。また、生成データサイズは、固定長であってもよいし、生成されるデータのサイズが毎回異なる場合であっても、例えば、所定の期間に生成されたデータの平均長であってもよい。
【００７９】
生成周期は、生成装置がデータを生成する周期である。生成周期は、固定周期であってもよいし、データが生成される周期が毎回異なる場合であっても、例えば所定個数のデータが生成された平均周期であってもよい。
【００８０】
次に、図８を用いて、通信制御装置Ｃ１が収集する利用装置の情報を説明する。図８は、利用装置情報テーブルの一例を示す図である。利用装置情報テーブルのデータ項目の情報は、例えば定期的にネットワークから収集して更新してもよいし、蓄積ルールを作成するときに収集してもよい。
【００８１】
図８において、利用装置情報テーブルは、アプリケーション識別子、接続先蓄積装置、利用対象の生成装置識別子、取得データの時間範囲、取得周期、及びカテゴリの各データ項目を有する。アプリケーション識別子、接続先蓄積装置、利用対象の生成装置識別子、取得データの時間範囲、及び取得周期のデータ項目は、利用装置Ａ１１〜Ａ１９より利用装置の情報として通信制御装置Ｃ１が収集して記録する。一方、カテゴリは、通信制御装置Ｃ１にて分類されて記録される。
【００８２】
利用装置の情報の収集、利用装置情報テーブルの作成およびカテゴリの分類分けは、例えば、図３で説明した情報収集部２１によって実行される。
【００８３】
アプリケーション識別子は、生成装置で生成されたデータを利用するアプリケーションの識別子である。アプリケーションとは、データを利用し利用装置上で動作するプログラムである。例えば、利用装置に複数のアプリケーションが存在して、それぞれが生成装置で生成されたデータを利用するのであれば、利用装置情報テーブルには一つの利用装置の複数のアプリケーション識別子を記載してもよい。
【００８４】
また、１つの利用装置に１つのアプリケーションのみが存在する場合には、アプリケーション識別子には、利用装置の識別子を用いてもよい。図１で示した実施形態では、Ａ１１〜Ａ１９は、利用装置の識別子をそのままアプリケーションの識別子として用いている。
【００８５】
接続先蓄積装置は、アプリケーションが動作する利用装置がネットワークを介して直接接続する蓄積装置の識別子を表す。図８は、図１で説明した接続先を示している。例えば、アプリケーションＡ１１は蓄積装置Ｎ１に、またアプリケーションＡ１２は蓄積装置Ｎ２に接続されていることを示している。
【００８６】
利用対象データの生成装置識別子は、アプリケーションが利用するデータを生成する生成装置の識別子である。図８では、アプリケーションＡ１１〜Ａ１９は、全て生成装置Ｓ１のデータを利用する場合を説明している。なお、１つのアプリケーションが複数の生成装置が生成したデータを利用する場合には、利用装置情報テーブルは、生成装置毎に作成することができる。
【００８７】
取得データの時間範囲は、アプリケーションが接続先蓄積装置に対して取得を要求するデータの時間的な範囲であり、例えば、データの取得時期を表す。例えば、Ａ１１は、蓄積装置Ｎ１に対して、生成装置Ｓ１が生成して蓄積装置Ｎ１に蓄積されたデータのうち取得を要求する時点で最新のデータのみを要求する。また、Ａ１３は、生成装置Ｓ１が生成して蓄積装置Ｎ１に蓄積されたデータのうち取得を要求した時点から１日以内に生成されたデータを要求する。つまり、取得を要求した時点から１日前から最新のデータまでが要求の対象となる。
【００８８】
取得周期は、アプリケーションが接続先蓄積装置に対してデータの取得を要求する周期である。取得周期は、毎回同じ周期でデータの取得を要求する場合には固定周期として固定値を用いる。また、データ取得を要求する周期が変わる場合には、例えば所定のデータ数を取得する際の平均値を用いてもよい。例えば、アプリケーションＡ１１は、取得周期が１分であり、アプリケーションＡ１２は、取得周期が２分である。
【００８９】
カテゴリは、アプリケーションを取得データの時間範囲（取得時期）のデータ項目で分類したものである。本実施形態においては、例えば以下の基準によってカテゴリを決定している。
【００９０】
第１カテゴリ：取得データの時間範囲が、最新データのみの場合
第２カテゴリ：取得データの時間範囲が、１日以内の場合
第３カテゴリ：取得データの時間範囲が、１日以上の場合
このカテゴリの決定方法では、アプリケーションＡ１１及びＡ１２は第１カテゴリ、アプリケーションＡ１３〜Ａ１７は第２カテゴリ、さらに、アプリケーションＡ１８及びＡ１９は第３カテゴリに分類される。
【００９１】
通信制御装置Ｃ１は、分類されたカテゴリを、利用装置から収集した情報とともに利用装置情報テーブルに記録する。利用装置情報テーブルは、図２に示した主記憶装置１２又は補助記憶装置１５に記憶することができる。
【００９２】
上記カテゴリは、それぞれのアプリケーションが要求するデータの取得頻度で分類している。例えば、第１カテゴリに分類されるアプリケーションは、生成装置で生成されたデータを低遅延で取得することを前提としたアプリケーションとして分類する。また、第３カテゴリに分類されるアプリケーションは、データの遅延に対する要求が低く、データ転送に要する時間よりもデータの蓄積に対するコストを重視するアプリケーションとして分類する。さらに、第２カテゴリには、第１カテゴリと第３カテゴリの中間的な転送コストのバランスを重視したアプリケーションとして分類される。ここでは、転送コストとしてデータの遅延と蓄積コストに対応する形態について説明しているため、第２カテゴリには、第１カテゴリと第３カテゴリの中間的なデータの遅延と蓄積コストのバランスを重視したアプリケーションが分類される。
【００９３】
なお、カテゴリを分類するための基準は、上記の基準に限定されるものではない。例えば、上記の基準では、取得データの時間範囲によって３つのカテゴリに分類したが、カテゴリ数を２又は４以上として分類することもできる。また、取得データの時間範囲以外のデータ項目を基にカテゴリを分類してもよい。後述する蓄積先の蓄積装置を決定する際には、カテゴリ毎に蓄積先を計算して決定される。
【００９４】
また、本実施形態では、１つのアプリケーションについて１つの分類を割り当てて分類した。しかし、例えば、１つのアプリケーションが異なった取得データの時間範囲を要求する場合、取得データの時間範囲毎にアプリケーションのカテゴリを分けて利用装置情報テーブルに登録してもよい。
【００９５】
次に、図９を用いて、転送コストと蓄積コストの重み付けを行う転送・蓄積コスト係数を説明する。図９は、転送・蓄積コスト係数テーブルの一例を示す図である。転送・蓄積コスト係数は、後述するコスト試算において、生成装置で生成されたデータをシステム内部に保存する際にデータの転送にともなうコストと蓄積にともなうコストに重み付けを行い、システム全体でのコストを算出するために用いられる。
【００９６】
図９において、転送・蓄積コスト係数テーブルは、転送・蓄積コスト係数のデータ項目を有する。転送・蓄積コスト係数は、転送コストを１とした場合の蓄積コストの値である。本実施形態では、転送・蓄積コスト係数は、１０−６を例示している。これは、１ｂｐｓ（bit per second）のトラフィックをネットワークで転送するのにかかるコストは、データを１０−６ビットを蓄積するのにかかるコストに相当することを意味する。すなわち、１０６ｂｉｔ（１Ｍｂｉｔ）のデータを蓄積するのにかかるコストと、１ｂｐｓのトラフィックをネットワークで転送するのにかかるコストが等価の場合である。
【００９７】
転送・蓄積コスト係数テーブルにより、転送コストと蓄積コストの重み付けを予め設定しておくことにより、通信網のコスト又は蓄積コストが異なる場合にもシステム環境に応じたコスト試算が可能となる。
【００９８】
転送・蓄積コスト係数テーブルは、図２に示した主記憶装置１２又は補助記憶装置１５に記憶することができる。
【００９９】
次に、図１０から図１５を用いて、第１ステップから第３ステップまでの処理で行う、蓄積ルールの決定方法について説明する。
［第１ステップ］
第１ステップでは、図８で説明した第１カテゴリのアプリケーションが利用するデータを蓄積する蓄積装置およびその蓄積装置におけるデータの蓄積時間を決定する。図８において第１カテゴリに分類されたアプリケーションは、Ａ１１およびＡ１２である。第１カテゴリのアプリケーションは、最新のデータを低遅延で要求するアプリケーションとして分類されている。したがって、第１カテゴリのアプリケーションに対する蓄積ルールの決定においては、アプリケーションからのデータ取得要求に対してデータの転送時間が短くなる接続先蓄積装置が選択される。また、蓄積装置での蓄積時間は、利用されるデータが最新のもののみであるため、生成装置におけるデータの生成周期とすればよい。
【０１００】
第１ステップでは、蓄積ルールの決定に蓄積コスト及び転送コストを計算する必要がないため、迅速な蓄積ルールの決定ができ、後述する第２ステップにおける蓄積ルールの決定の計算負荷を軽減することができる。
【０１０１】
データの転送時間が一番短くなるのは、図８で説明した接続先蓄積装置にデータが蓄積される、ネットワーク経路のホップ数が０となるときであり、第１カテゴリのアプリケーションＡ１１が利用するデータは蓄積装置Ｎ１に蓄積される。Ｎ１でのデータの蓄積時間は、図７で説明した生成装置Ｓ１の生成周期から、１分と決定される。同様にアプリケーションＡ１２が利用するデータは、蓄積時間１分にて蓄積装置Ｎ２に蓄積される。
【０１０２】
図１０は、システム構成例における蓄積ルール決定第１ステップの一例を示す図である。図１０において、生成装置Ｓ１で生成されたデータは、蓄積装置Ｎ１に転送される。蓄積装置Ｎ１に転送されたデータは、蓄積装置Ｎ１に蓄積時間１分で蓄積されるとともに、蓄積装置Ｎ１でコピーされて蓄積装置Ｎ２に転送される。蓄積装置Ｎ２に転送されたデータは、蓄積装置Ｎ２にて蓄積時間１分で蓄積される。
【０１０３】
図８で説明したとおり、アプリケーションＡ１１は、取得周期１分にて蓄積装置Ｎ１からデータを取得する。また、アプリケーションＡ１２は、取得周期２分にて蓄積装置Ｎ２からデータを取得する。ここで蓄積装置Ｎ２の蓄積時間を例えばアプリケーションＡ１２の取得周期としたときには、蓄積されるデータの半分は利用されないため、無駄な蓄積コストが発生する。第１ステップでは、蓄積装置における蓄積時間を生成装置におけるデータの生成周期として蓄積ルールを決定することにより、無駄な蓄積コストの発生を防止することができる。
【０１０４】
第１ステップでは蓄積装置における蓄積時間を生成装置のデータ生成周期とした。しかし、後述する第２ステップにおいて、同じデータに対してさらに長い蓄積時間を蓄積ルールとして決定した場合には、その蓄積装置の蓄積ルールにおける蓄積時間をより長い蓄積時間とする。
【０１０５】
なお、本実施形態では、データ取得時の遅延を少なくするために、蓄積装置をアプリケーションから一番近い蓄積装置として決定したが、図８で説明した接続先蓄積装置を他の蓄積装置として登録してもよい。例えば、蓄積装置Ｎ１及び蓄積装置Ｎ２と同じアクセス網１の内部にありデータ取得にともなう遅延が少ない場合には、蓄積装置Ｎ７を接続先蓄積装置として登録することができる。アプリケーションＡ１１から蓄積装置Ｎ１は直接接続されているので通信のホップ数が０であるのに対して、蓄積装置Ｎ７は、蓄積装置Ｎ１を経由するのでホップ数が１となる。例えば、蓄積装置を所定のホップ数以下にある蓄積装置として決定することができる。
［第２ステップ］
次に、第１ステップで蓄積装置が決定されたアプリケーションを除く、第２カテゴリおよび第３カテゴリのアプリケーションの情報を基に蓄積先の蓄積装置と蓄積時間を決定する第２ステップによる蓄積ルールの決定方法を説明する。
【０１０６】
第２ステップにおいては、全ての蓄積装置を蓄積先として仮定して、蓄積装置毎の蓄積コストと転送コストを計算し、蓄積コストと転送コストの両方を考慮して一番低いコストの蓄積装置を蓄積先として決定する。
【０１０７】
図１１は、システム構成例における蓄積ルール決定第２ステップの第１の例を示す図である。第１の例では、蓄積先を１つの蓄積装置として計算を行う場合を例示している。
【０１０８】
図１１において、生成されたデータは、蓄積装置Ｎ１に蓄積されて、蓄積装置Ｎ７を介して蓄積装置Ｎ１０に移動される。蓄積装置Ｎ１０に蓄積されたデータは、このデータを利用する第２カテゴリ及び３の全てのアプリケーション（Ａ１３〜Ａ１９）から取得されるものとする。
【０１０９】
先ずは、蓄積コストを算出する。蓄積コストは、蓄積装置に蓄積するデータ量、蓄積時間、及び蓄積コストの単価に比例する。蓄積時間は、その蓄積装置に蓄積されたデータを利用する第２カテゴリのアプリケーションの中で取得周期が最長のものとする。なお、第２ステップでは、第３カテゴリのアプリケーションの情報は、蓄積先の決定にのみ使用され、第３カテゴリのアプリケーションに基づく蓄積時間の決定は後述する第３ステップにて行われる。以下に、蓄積装置Ｎ１０における蓄積コストの計算例を示す。
【０１１０】
蓄積コスト＝蓄積データ量×蓄積コスト単価
＝（蓄積時間÷データ生成周期）×データサイズ×蓄積コスト単価
＝（６０×２４分÷１分）×８００ビット×１０
＝１１５２００００
上記計算では、蓄積時間を図８で説明した取得周期（１分）として計算している。つまり、生成装置Ｓ１で生成されたデータが、蓄積装置Ｎ１を介して直ちに蓄積装置Ｎ１０にデータが転送される場合である。しかし、例えば、蓄積装置Ｎ１での取得周期１分経過後にデータがコピーされて蓄積装置Ｎ１０に転送される場合には、蓄積時間は（１日−１分＝２３時間５９分）となる。
【０１１１】
次に、データの転送にともなう転送コストを算出する。転送コストは、蓄積装置から次の蓄積装置までのデータの移動にともなう移動コストと、蓄積装置に蓄積されたデータを各アプリケーションが取得するときの取得コストの合計で算出される。
【０１１２】
図１１において破線矢印で示す、蓄積装置Ｎ１からＮ７（移動経路コスト＝１）、及び蓄積装置Ｎ７からＮ１０（移動経路コスト＝１）までの移動コストは以下のとおり計算される。
【０１１３】
移動コスト＝移動トラフィック×移動経路コスト
＝（データサイズ÷データ生成周期）×移動経路コスト
＝（８００ビット÷６０秒）×（１×２）≒２６．７
移動経路コストは、ネットワークで接続された蓄積装置間において発生するコストである。
【０１１４】
なお、図１１では、蓄積装置Ｎ２には、第１ステップにより決定されたとおり、蓄積装置Ｎ１からコピーされた同じデータが存在している。また、蓄積装置Ｎ１０までの移動コストは、蓄積装置Ｎ１からの移動と蓄積装置Ｎ２からの移動で同じである。このため、蓄積装置Ｎ１０へのデータの移動は蓄積装置Ｎ１から行っても蓄積装置Ｎ２から行っても移動コストは変わらない。
【０１１５】
つまり、第２ステップで決定される蓄積装置は、第１ステップで蓄積先として既に決定された蓄積装置が同じデータを蓄積しているのであれば、データの移動元は、第１ステップで蓄積先として決定したいずれの蓄積装置からも行うことができる。そして、後述する取得コストを含めたシステムコストが最も低い蓄積先を決定することができる。
【０１１６】
次に、図１１において実線矢印で示す取得コストを算出する。取得コストはアプリケーションによるデータの取得にともなう取得トラフィックと、取得経路のコストに基づき、以下の算式で算出される。
【０１１７】
取得コスト＝蓄積装置からの取得トラフィック×取得経路コスト
＝（取得データ量÷取得周期）×取得経路コスト
＝｛（取得データ個数×データサイズ）÷取得周期｝×取得経路コスト
＝｛（蓄積時間÷生成周期×データサイズ）÷取得周期｝×取得経路コスト
上記計算式において、プリケーションＡ１３、Ａ１６、Ａ１７の取得コストは、以下のとおり算出される。
【０１１８】
取得コスト＝｛（６０×２４分÷１分×８００ビット）÷８６４００秒｝×１
≒１３．３
また、アプリケーションＡ１８の取得コストは、以下の通り算出される。
【０１１９】
取得コスト＝｛（６０×２４分÷１分×８００ビット）÷６０４８００秒｝×（１×２）
≒３．８１
さらに、アプリケーションＡ１９の取得コストは、以下の通り算出される。
【０１２０】
取得コスト＝｛（６０×２４分÷１分×８００ビット）÷６０４８００秒｝×（１×３）
≒５．７１
一方、アプリケーションＡ１４、Ａ１５は、蓄積装置Ｎ１０に直接接続されているために取得経路コストは０となるため、取得コストは生じない。
【０１２１】
なお、アプリケーションＡ１３〜Ａ１９はいずれも、取得データの時間範囲に最新データが含まれるため、データ取得要求が行われた際には、それぞれの時間範囲において最新データの取得が要求される。ここで、取得要求がされた蓄積装置に最新データが無い場合には、取得要求がされた蓄積装置は、最新のデータを蓄積している他の蓄積装置にデータの転送を要求する。図１１では、生成装置Ｓ１で生成されたデータは蓄積装置Ｎ１に存在するため、蓄積装置Ｎ１０は蓄積装置Ｎ１に対して転送要求を行う。この際も上記計算と同様に移動コストが発生する。なお、データがどの蓄積装置に蓄積されているかは、データ位置管理装置Ｌ１によって管理されているため、蓄積装置Ｎ１０は位置管理装置Ｌ１から転送要求先の蓄積装置Ｎ１の情報を得ることができる。
【０１２２】
以上より、第２ステップにおいて蓄積装置１０を蓄積先とした場合のシステム全体のコストは、次のように算出される。
【０１２３】
システムコスト＝総転送コスト＋総蓄積コスト×転送・蓄積コスト係数
＝総移動コスト＋総取得コスト＋総蓄積コスト×転送・蓄積コスト係数
＝２６．７＋（１３．３＋０＋０＋１３．３＋１３．３＋３．８１＋５．７１）＋１１５２００００×１０−６≒８７．６
上記計算では、蓄積装置Ｎ１０にデータを蓄積する場合を算出したが、他の蓄積装置でデータの蓄積を行った場合におけるシステムコストを順次算出して、全ての組合せの中でシステムコストの一番低いデータの蓄積ルールを決定することができる。
【０１２４】
次に、図１２を用いて、蓄積先を２箇所とした場合を第２ステップの第２の例として説明する。図１２は、システム構成例における蓄積ルール決定第２ステップの第２の例を示す図である。
【０１２５】
図１２において、データの蓄積先は蓄積装置Ｎ７及びＮ１０の２箇所である。図１１で説明した第１の例と図１２の第２の例の違いは、蓄積装置Ｎ７における蓄積コストが発生する点と、アプリケーションＡ１３のデータの取得先が蓄積装置Ｎ１０から蓄積装置Ｎ７に変わる点である。蓄積装置Ｎ７における蓄積時間は、アプリケーションＡ１３の取得周期を基に、蓄積装置Ｎ１０と同じ１日とする。
【０１２６】
先ず、蓄積装置Ｎ７における蓄積コストは、蓄積装置Ｎ１０の蓄積コストと同じであり、蓄積コスト＝蓄積データ量×蓄積コスト単価＝１１５２００００となる。
【０１２７】
次に、移動コストは、第１の例で説明した、蓄積装置Ｎ１から蓄積装置Ｎ１０までの移動に加えて、蓄積装置Ｎ１から蓄積装置Ｎ７までの移動にともなう移動コストが新たに生じる。新たに生じる移動コストは
（データサイズ÷データ生成周期）×移動経路コスト
＝（８００ビット÷６０秒）×１≒１３．３
であり、蓄積装置Ｎ１から蓄積装置Ｎ１０までの移動コスト（２６．７）を加え、
１３．３＋２６．７＝４０．０
が移動コストとなる。
【０１２８】
取得コストは、第１の例と比べて、アプリケーションＡ１３の取得コスト（１３．３）が０となるところが相違する。他のアプリケーションによる取得コストは同じである。
【０１２９】
従って、システムコストは、以下のとおりとなる。
【０１３０】
システムコスト＝４０．０＋（１３．３＋１３．３＋３．８１＋５．７１）＋２×１１５２００００×１０−６≒９９．２
ここで、図１１で説明した第１の例と図１２で説明した第２の例のシステムコストを比較すると、第１の例によるシステムコストの方が低くなることがわかる。本実施形態では、上記の方法によって蓄積先の蓄積装置と蓄積時間を決定することにより、データを利用するアプリケーションのネットワーク上での配置とデータ取得周期などの情報に基づいて最適な蓄積ルールを決定することができる。
【０１３１】
また、本実施形態では、蓄積装置の数が１又は２である場合を例示して算出したが、さらに多くの蓄積装置を蓄積先とする場合においても同様の方法によりシステムコストが一番低い蓄積ルールを決定することができる。
【０１３２】
また、第１ステップで優先的に選択される蓄積装置を決定することにより、第２ステップにおける算出対象のアプリケーションの数が少なくなり、蓄積ルールの決定に要する算出負荷が軽減できる。
【０１３３】
また、ネットワークの転送コストと蓄積装置におけるデータの蓄積コストとの重み付けを変えることにより、システムに合わせた蓄積ルールの算出が可能になる。
［第３ステップ］
次に、第３カテゴリのアプリケーションの情報を基に蓄積先の蓄積装置と蓄積時間を決定する第３ステップによる蓄積ルールの決定方法を説明する。
【０１３４】
生成装置で生成されたデータは、第２ステップによりシステムコストが一番低い方法で決められた蓄積ルールによって蓄積装置に蓄積される。しかし、例えば、データを長期間保管しなければいけない場合には、全ての蓄積装置を蓄積対象として決定すると、蓄積容量の小さい蓄積装置では、生成されるデータ量の変動によりデータ容量をオーバーしてしまう場合がある。そこで、第３ステップでは、蓄積先を図１で説明したＤＣ１又はＤＣ２に配置されている蓄積装置Ｎ１５及び蓄積装置Ｎ１６に限定した蓄積ルールを決定する。
【０１３５】
第３ステップにおいて、蓄積装置の蓄積時間は、第３カテゴリのアプリケーションの中で取得周期の最も長いアプリケーションを基に決定する。
【０１３６】
図１３は、蓄積ルール決定第３ステップの第１の例を示す図である。第１の例では、蓄積先として１つのデータセンタを使用して計算を行う場合を例示している。
【０１３７】
図１３において、蓄積装置Ｎ１５を新たな蓄積先とする。ここで、第１ステップにて蓄積装置Ｎ１及び蓄積装置Ｎ２が蓄積先として決定され、第２ステップにて蓄積装置Ｎ１０が蓄積先として決定されているものとする。蓄積装置Ｎ１０に蓄積されたデータは、蓄積装置Ｎ１５に転送されている。
【０１３８】
蓄積装置Ｎ１５の蓄積時間は、図８で説明した第３カテゴリのアプリケーションであるＡ１８及びＡ１９の取得周期によって、その最長となる１週間に決定される。
【０１３９】
なお、第２ステップで決定した蓄積装置Ｎ１０の蓄積ルールにて、もし蓄積装置Ｎ１０の蓄積時間が経過した後にデータを蓄積装置Ｎ１０に移動又はコピーするアクションが決定されていたとする。その場合は、蓄積装置Ｎ１５における蓄積時間（１週間）は、蓄積装置Ｎ１０の蓄積時間（１日）を引いた６日となる。
【０１４０】
以下の計算例では、蓄積装置Ｎ１０によるデータ転送の遅延が無い場合を説明している。
【０１４１】
先ず、蓄積コストは、第２ステップと同様に以下の計算式で算出される。
【０１４２】
蓄積コスト＝蓄積データ量×蓄積コスト単価
＝（蓄積時間÷データ生成周期）×データサイズ×蓄積コスト単価
＝（６０×２４×７分÷１分）×８００ビット×１
＝８０６４０００
次に、移動コストと取得コストとを含む転送コストは以下の計算式で算出される。第３ステップでは、移動コストは、図１３の破線矢印で示す蓄積装置Ｎ１０から蓄積装置Ｎ１５への移動において算出される。
【０１４３】
移動コスト＝移動トラフィック×移動経路コスト
＝（データサイズ÷データ生成周期）×移動経路コスト
＝（８００ビット÷６０秒）×（１＋１）
≒２６．７
また、取得コストは、第３カテゴリのアプリケーションである、アプリケーションＡ１８およびアプリケーションＡ１９について算出する。図１３において、アプリケーションＡ１９の取得経路コストは３であり、蓄積装置Ｎ１５に直接接続されているアプリケーションＡ１８の取得経路コストは０であるため、取得コストはアプリケーションＡ１９についてのみ発生する。
【０１４４】
取得コスト＝蓄積装置からの取得トラフィック×取得経路コスト
＝｛（６０×２４×７分÷１分×８００ビット）÷６０４８００秒｝×３
＝４０
以上の計算より、第３ステップの第１の例において通信装置１５蓄積先とした場合のシステム全体のコストは、第２ステップと同様に以下のように算出される。
【０１４５】
システムコスト＝総転送コスト＋総蓄積コスト×転送・蓄積コスト係数
＝２６．７＋（０＋４０）＋８０６４０００×１０−６
≒７４．８
図１４は、蓄積ルール決定第３ステップの第２の例を示す図である。第２の例では、蓄積先として２つのデータセンタを使用して計算を行う場合を例示している。
【０１４６】
図１４において、蓄積先には蓄積装置Ｎ１５および蓄積装置Ｎ１６を使用する。
【０１４７】
蓄積コストは、蓄積装置Ｎ１５および蓄積装置Ｎ１６ともに第３ステップの第１の例と同じであるため、説明を省略する。
【０１４８】
データの移動コストは、第３ステップの第１の例で算出した、蓄積装置Ｎ１０から蓄積装置Ｎ１５までの移動コストに加えて、蓄積装置Ｎ１４を経由して１ホップ多い３ホップの、蓄積装置Ｎ１０から蓄積装置Ｎ１６までの移動コストが加わる。蓄積装置Ｎ１０から蓄積装置Ｎ１６までの移動コストは、次式で算出される。
【０１４９】
移動コスト＝（８００ビット÷６０秒）×３
＝４０．０
なお、取得コストは、アプリケーションＡ１８およびアプリケーションＡ１９は、それぞれが取得先の蓄積装置である蓄積装置Ｎ１５および蓄積装置Ｎ１６に直接接続されているために０となる。従って、システムコストは以下のとおり算出される。
【０１５０】
システムコスト＝（２６．７＋４０）＋８０６４０００×１０−６
≒８２．８
図１３で説明した第３のステップにおける第１の例と図１４で説明した第２の例のシステムコストを比較すると、第１の例によるシステムコストの方が低くなることがわかる。本実施形態では、上記の方法によって蓄積先の蓄積装置と蓄積時間を決定することにより、データを利用するアプリケーションのネットワーク上での配置、データ取得周期などの情報に基づいて最適な蓄積ルールを決定することができる。
【０１５１】
また、本実施形態では、蓄積装置がデータセンタに配置された１又は２の蓄積装置である場合を例示して算出したが、さらに多くの蓄積装置を蓄積先とする場合においても同様の方法によりシステムコストが一番低い蓄積ルールを決定することができる。
【０１５２】
なお、第１ステップおよび第２ステップで決定した蓄積装置が第３ステップで決定した蓄積装置と同じ場合は、蓄積時間を第３ステップの蓄積時間にすればよい。
【０１５３】
次に、図１５および図１６を用いて、第１ステップから第３ステップによって最終的に決定された蓄積装置と、その蓄積装置における蓄積ルールを説明する。図１５は、システム構成例における最終決定された蓄積ルールの一例を示す図である。図１６は、蓄積ルールテーブルの一例を示す図である。
【０１５４】
図１５において、第１ステップから第３ステップにて最終的に蓄積先として決定された蓄積装置は、蓄積装置Ｎ１、蓄積装置Ｎ２、蓄積装置Ｎ１０、および蓄積装置Ｎ１５の４つである。
【０１５５】
先ず、生成装置Ｓ１は生成したデータを転送先蓄積装置Ｎ１に送信する（１）。
【０１５６】
蓄積装置Ｎ１は、受信した生成装置Ｓ１から受信したデータを直ちに蓄積装置Ｎ２にコピーする（２）。ここで、コピーとは、元のデータを保存したまま同じデータを他の蓄積装置に転送することをいう。
【０１５７】
蓄積装置Ｎ１は、受信した生成装置Ｓ１から受信したデータを、蓄積時間１分蓄積した後に蓄積装置Ｎ１０に移動する（３）。ここで、移動とは、元のデータを削除してデータを転送することをいう。
【０１５８】
蓄積装置Ｎ２は、蓄積したデータを蓄積時間１分蓄積した後に削除する（４）。
【０１５９】
通信装置Ｎ１０は、蓄積したデータを蓄積時間１４３９分蓄積して、転送先蓄積装置である蓄積装置Ｎ１５に移動する（５）。
【０１６０】
蓄積装置Ｎ１５は、蓄積したデータを蓄積時間８６４０分蓄積した後に削除する（６）。
【０１６１】
図１６は、図１５で説明し蓄積装置の動作を蓄積ルールテーブルとして表したものである。蓄積ルールテーブルは、転送元蓄積装置、蓄積時間、アクション、および転送先蓄積装置の各データ項目を有する。
【０１６２】
転送元蓄積装置は、データを蓄積している蓄積装置又は最初にデータを生成する生成装置である。蓄積ルールは、通信制御装置Ｃ１で決定されて、転送元蓄積装置に送信される。つまり、転送元蓄積装置は、送信された蓄積ルールを実行する装置である。
【０１６３】
蓄積時間は、その蓄積装置でデータを蓄積しておく時間である。蓄積時間が長いと蓄積コストが高くなるため、本実施形態では、利用装置に取得周期に合わせて必要な蓄積時間を設定している。
【０１６４】
図１６では、それぞれの蓄積時間を転送前の蓄積時間を差し引いた時間として定義している。例えば、蓄積装置Ｎ１０においては、蓄積時間を１日とするが、蓄積装置Ｎ１における蓄積時間１分を差し引いた１４３９分を蓄積時間としている。従って、例えば複数の蓄積装置で蓄積されて転送された場合には、転送先蓄積装置での蓄積時間は、転送前に転送元蓄積装置で蓄積された蓄積時間の合計を差し引いた時間として設定される。
【０１６５】
また、蓄積装置の蓄積時間を空欄とするか、又は特定の記号を入力することにより、蓄積時間を定義しない、つまりその蓄積装置に蓄積されたデータを削除しない設定をしてもよい。
【０１６６】
アクションは、蓄積装置におけるデータに対するアクションである。図１６では、上記の通り、送信、コピー、移動、および削除のアクションが規定されている。アクションは、他にも例えば画像処理などのデータ処理、２以上のデータの統合、データの分割等を含んでいてもよい。
【０１６７】
転送先蓄積装置は、データが転送される蓄積装置である。図１６では、１つの転送元から１つの転送先を定義しているが、例えば、転送先に複数の蓄積装置を定義してもよい。また、転送先蓄積装置へのネットワーク環境に応じて、暗号化又は通信プロトコルの指定を行ってもよい。
【０１６８】
なお、本実施形態においては、システム構成として生成装置は生成装置Ｓ１のみが存在する場合を例示しているが、生成装置が複数存在する場合には蓄積ルールテーブルを生成装置毎に作成してもよい。
【０１６９】
図１６で説明した蓄積ルールテーブルは、同一の内容が通信制御装置Ｃ１から各蓄積装置に一斉に送信される。しかし、例えば、通信制御装置Ｃ１は、送信先の蓄積装置で必要な情報のみを蓄積ルールテーブルの中から抽出して送信してもよい。また、通信制御装置Ｃ１は、蓄積装置からのリクエストによって、送信する内容を抽出して送信してもよい。
【０１７０】
次に、図１７から図２６を用いて、通信制御装置Ｃ１における蓄積ルール決定の動作の詳細を説明する。なお、図１７から図２６で説明する動作は、図３で説明した通信制御装置２の情報収集部２１、決定部２２の転送コスト試算部２２１、蓄積コスト試算部、および蓄積ルール決定部２２３によって行われる。
【０１７１】
図１７は、通信制御装置の動作の一例を示すフローチャートである。
【０１７２】
図１７において、通信制御装置２は、ステップＳ２〜Ｓ７の処理をシステム内に存在する全ての生成装置毎に繰り返して実行する（Ｓ１）。
【０１７３】
情報収集部２１は、それぞれの生成装置で生成されるデータを利用する利用装置を送受信部２３を介して収集して、図８で説明した利用装置情報テーブルを作成する（Ｓ２）。
【０１７４】
情報収集部２１は、収集した利用装置情報から、それぞれの利用装置におけるアプリケーションの「取得データの時間範囲」のデータ項目を基に、それぞれのアプリケーションをカテゴリに分類して利用装置情報テーブルに記録する（Ｓ３）。
【０１７５】
なお、ステップＳ２およびＳ３は、ステップＳ１のループ処理が開始されるより前に事前に実行し、利用装置情報テーブルに予め作成しておいても良い。
【０１７６】
決定部２２は、第１ステップを実行し（Ｓ４）、第２ステップを実行し（Ｓ５）、さらに第３ステップを実行し（Ｓ６）、図１６で説明した蓄積ルールテーブルを生成する（Ｓ７）。第１ステップ（Ｓ４）、第２ステップ（Ｓ５）、さらに第３ステップ（Ｓ６）の詳細は、以下で説明する。決定部２２は、生成された蓄積ルールテーブルを基に蓄積ルールを生成する。生成される蓄積ルールは、例えばテキストデータ、ＨＴＭＬ文書、又はバイナリデータとして記述される。蓄積ルールには、生成された全ての蓄積装置における蓄積ルールを記述してもよいし、送信対象となる蓄積装置のみについての蓄積ルールを記載してもよい。
【０１７７】
送信部２３１は、生成された蓄積ルールをネットワークを介して蓄積装置に送信する（Ｓ９）。送信は、例えば全ての蓄積装置を対象としたブロードキャストによって送信してもよく、また特定の蓄積装置のネットワークアドレスを指定してマルチキャストによって送信してもよい。
【０１７８】
なお、図１７では、ステップＳ２において、情報収集部２１が、ネットワーク経由でそれぞれの生成装置で生成されるデータを利用する利用装置を送受信部２３を介して収集して、図８で説明した利用装置情報テーブルを作成する形態について説明した。
【０１７９】
しかしながら、通信制御装置２の入力装置から利用装置の情報を入力したり、補助記憶装置１５又は可搬記憶媒体から読み出して、利用装置情報テーブルを作成しても良い。
【０１８０】
また、構成情報テーブル又は生成装置情報テーブル、転送・蓄積コスト係数テーブルについても同様に、通信制御装置２の入力装置から利用装置の情報を入力したり、補助記憶装置１５又は可搬記憶媒体から読み出して、利用装置情報テーブルを作成しても良い。
【０１８１】
図１８は、第１ステップ（Ｓ４）の動作の一例を示すフローチャートである。第１ステップ（Ｓ４）の動作は、図３で説明した蓄積ルール決定部２２３によって実行される。
【０１８２】
図１８において、図７で説明した生成装置情報テーブルから、生成装置のデータ生成周期、接続先蓄積装置のデータ項目を参照する（Ｓ４１）。
【０１８３】
ステップＳ３で第１カテゴリに分類された全てのアプリケーションについて、利用装置情報テーブルから接続先蓄積装置を抽出し（Ｓ４２）、抽出した全ての接続先蓄積装置を、第１ステップの蓄積先として決定する（Ｓ４３）。ステップＳ４１で参照した生成装置のデータ生成周期を、ステップＳ４３で決定した第１ステップの蓄積先における第１の蓄積時間として決定し（Ｓ４４）、第１ステップ（Ｓ４）の動作を終了する。
【０１８４】
図１９は、第２ステップ（Ｓ５）の動作の一例を示すフローチャートである。
【０１８５】
図１９において、蓄積ルール決定部２２３は、利用装置情報テーブルからステップＳ３で第２および第３カテゴリに分類された全てのアプリケーションを抽出する（Ｓ５１）。さらに、第２カテゴリに分類された全てのアプリケーションについて、利用装置情報テーブルから取得データの時間範囲を参照し、最長の取得データ時間範囲を第２の蓄積時間として決定する（Ｓ５２）。
【０１８６】
アプリケーションの抽出（Ｓ５１）は、利用装置情報テーブルから行ってもよいし、アプリケーションの抽出のタイミングでネットワークを介して利用装置から情報を収集してもよい。
【０１８７】
蓄積ルール決定部２２３は、全ての蓄積装置の組み合わせを蓄積先と仮定した場合のステップＳ５４〜Ｓ５７のコスト算出を繰り返し計算する（Ｓ５３）。なお、蓄積装置の組合せは、蓄積先が１つの場合から予め定められた数の組合せまでを計算対象としてもよい。例えば、蓄積先を２つとした場合、全ての蓄積装置の中から２つの蓄積装置を選択して蓄積先として仮定し、ステップＳ５４〜Ｓ５７の計算を繰り返す。
【０１８８】
また、例えば、生成装置から利用装置のネットワーク上における最短経路上に存在する蓄積装置を選択対象の蓄積先としてステップＳ５４〜Ｓ５７の計算を行ってもよい。
【０１８９】
次に、データ移動コストを算出し（Ｓ５４）、データ取得コストを算出し（Ｓ５５）、さらに、データ蓄積コストを算出する（Ｓ５６）。データ移動コストの算出（Ｓ５４）、データ取得コストの算出（Ｓ５５）、およびデータ蓄積コストの算出（Ｓ５６）の詳細は、図２０から図２２において説明する。
【０１９０】
次に、蓄積ルール決定部２２３は、ステップＳ５４〜Ｓ５６にて算出したデータ移動コスト、データ取得コスト、データ蓄積コスト、および図９で説明した転送-蓄積コスト係数から、システムの総コストを算出する（Ｓ５７）。蓄積ルール決定部２２３は、総コストが最小となった蓄積装置の組み合わせを、第２の蓄積先として決定し（Ｓ５８）、第２ステップ（Ｓ５）を終了する。
【０１９１】
図２０は、第２ステップにおけるデータ移動コスト算出（Ｓ５４）の動作の一例を示すフローチャートである。データ移動コスト算出（Ｓ５４）は、転送コスト試算部２２１で実行される。
【０１９２】
図２０において、データ移動コスト算出（Ｓ５４）におけるステップＳ５４２〜Ｓ５４４の処理は、ステップＳ５３で蓄積先とされた全ての蓄積装置について繰り返して実行される（Ｓ５４１）。例えば、蓄積装置が２つ選択された場合は、ステップＳ５４２〜Ｓ５４４の処理はそれぞれの装置について行われる。
【０１９３】
先ず、第１ステップによって決定された第１の蓄積先の蓄積装置の中で、データ移動コスト算出の対象として仮定した第２の蓄積先の蓄積装置までのネットワークの経路が最短のものを移動又はコピー元の蓄積装置として抽出する（Ｓ５４２）。
【０１９４】
次に、生成装置で生成されたデータのサイズ、およびデータの生成周期から、データの移動に伴う転送トラフィック量を算出する（Ｓ５４３）。算出された転送トラフィック量とステップＳ５４で抽出された第１の蓄積装置から第２の蓄積装置までの経路コストからデータ移動コストを算出する。ステップＳ５４１で繰り返して算出された移動コストは加算されて（Ｓ５４４）、データ移動コスト算出（Ｓ５４）を終了する。
【０１９５】
図２１は、第２ステップにおけるデータ取得コスト算出（Ｓ５５）の動作の一例を示すフローチャートである。データ取得コスト算出（Ｓ５５）は、転送コスト試算部２２１で実行される。
【０１９６】
図２１において、転送コスト試算部２２１は、図１９のステップＳ５１で抽出された全ての第２および第３カテゴリのアプリケーションについて、ステップＳ５５２〜Ｓ５５５を繰り返し計算する（Ｓ５５１）。抽出されたアプリケーションについて、図８の利用装置情報テーブルから、接続先蓄積装置、取得データの時間範囲、および取得周期を参照する（Ｓ５５２）。
【０１９７】
図１９のステップＳ５３で第２の蓄積先と仮定した蓄積装置の中で、抽出されたアプリケーションからのネットワーク経路が最短のものをデータの取得先として選定する（Ｓ５５３）。
【０１９８】
ステップＳ５２で決定した第２の蓄積時間、アプリケーションの取得データ時間範囲、取得周期、およびデータサイズから、データの取得に伴う転送トラフィック量を算出する（Ｓ５５４）。
【０１９９】
転送コスト試算部２２１は、算出した転送トラフィック量と、第２の蓄積先と仮定した蓄積装置からアプリケーションの接続先蓄積装置までの経路コストから、データ取得コストを算出する。転送コスト試算部２２１は、ステップＳ５５１の計算ループが終了した時点で算出したデータ取得コストを全て加算し、抽出された全てのアプリケーションのデータ取得コストの総和を算出して（Ｓ５５５）、データ取得コスト算出（Ｓ５５）を終了する。
【０２００】
図２２は、第２ステップにおける蓄積コスト算出（Ｓ５６）の動作の一例を示すフローチャートである。蓄積コスト算出（Ｓ５６）は、蓄積コスト試算部２２２で実行される。
【０２０１】
図２２において、蓄積コスト試算部２２２は、図１９のステップＳ５３で第２の蓄積先として仮定する全ての蓄積装置について、ステップＳ５６２〜Ｓ５６３を繰り返し計算する（Ｓ５６１）。
【０２０２】
蓄積コスト試算部２２２は、図１９のステップＳ５２で決定された第２の蓄積時間、ならびに生成装置で生成されるデータサイズおよびデータの生成周期から、蓄積装置において蓄積される蓄積データ量を算出する（Ｓ５６２）。
【０２０３】
蓄積コスト試算部２２２は、ステップＳ５６２で算出された蓄積データ量、および蓄積先の蓄積装置における蓄積コスト単価からデータ蓄積コストを算出する。蓄積コスト試算部２２２は、ステップＳ５６１の計算ループにおいて算出した全てのデータ蓄積コストを加算し、第２の蓄積先として仮定した全ての蓄積装置におけるデータ蓄積コストの総和を算出し（Ｓ５６３）、データ蓄積コスト算出（Ｓ５６）を終了する。
【０２０４】
図２３は、第３ステップ（Ｓ６）の動作の一例を示すフローチャートである。
【０２０５】
図２３において、蓄積ルール決定部２２３は、図１７のステップＳ３で第３カテゴリに分類された全てのアプリケーションを抽出する（Ｓ６１）。
【０２０６】
蓄積ルール決定部２２３は、第３カテゴリに分類された全てのアプリケーションについて、アプリケーション情報テーブルから取得データの時間範囲を参照し、最長の取得データ時間範囲を第３の蓄積時間として決定する（Ｓ６２）。
【０２０７】
蓄積ルール決定部２２３は、第３の蓄積先となり得る種別が"ＤＣ"である全ての蓄積装置の組み合わせについて蓄積先と仮定して、ステップＳ６４〜Ｓ６７を繰り返し計算する。
【０２０８】
次に、データ移動コストを算出し（Ｓ６４）、データ取得コストを算出し（Ｓ６５）、さらに、データ蓄積コストを算出する（Ｓ６６）。データ移動コストの算出（Ｓ６４）、データ取得コストの算出（Ｓ６５）、およびデータ蓄積コストの算出（Ｓ６６）の詳細は、図２４から図２６において説明する。
【０２０９】
次に、蓄積ルール決定部２２３は、ステップＳ６４〜Ｓ６６にて算出したデータ移動コスト、データ取得コスト、データ蓄積コスト、および図９で説明した転送-蓄積コスト係数から、システムの総コストを算出する（Ｓ６７）。そして、総コストが最小となった蓄積装置の組み合わせを、第３の蓄積先として決定し（Ｓ６８）、第３ステップ（Ｓ６）を終了する。
【０２１０】
図２４は、第３ステップにおけるデータ移動コスト算出（Ｓ６４）の動作の一例を示すフローチャートである。データ移動コスト算出（Ｓ６４）は、転送コスト試算部２２１で実行される。
【０２１１】
図２４において、データ移動コスト算出（Ｓ６４）におけるステップＳ６４２〜Ｓ６４４の処理は、ステップＳ６３で蓄積先とされた全ての蓄積装置について繰り返して実行される（Ｓ６４１）。例えば、蓄積装置が２つ選択された場合は、ステップＳ６４２〜Ｓ６４４の処理はそれぞれの装置について行われる。
【０２１２】
先ず、第２ステップによって決定された第２の蓄積先の蓄積装置の中で、データ移動コスト算出の対象として仮定した第３の蓄積先の蓄積装置までのネットワークの経路が最短のものを移動又はコピー元の蓄積装置として抽出する（Ｓ６４２）。
【０２１３】
次に、生成装置で生成されたデータのサイズ、およびデータの生成周期から、データの移動に伴う転送トラフィック量を算出する（Ｓ６４３）。算出された転送トラフィック量とステップＳ６４で抽出された第２の蓄積装置から第３の蓄積装置までの経路コストからデータ移動コストを算出する。ステップＳ６４１で繰り返して算出された移動コストは加算されて（Ｓ６４４）、データ移動コスト算出（Ｓ６４）を終了する。
【０２１４】
図２５は、第３ステップにおけるデータ取得コスト算出（Ｓ６５）の動作の一例を示すフローチャートである。データ取得コスト算出（Ｓ６５）は、転送コスト試算部２２１で実行される。
【０２１５】
図２５において、転送コスト試算部２２１は、図２３のステップＳ６１で抽出された全ての第３カテゴリのアプリケーションについて、ステップＳ６５２〜Ｓ６５５を繰り返し計算する（Ｓ６５１）。抽出されたアプリケーションについて、図８の利用装置情報テーブルから、接続先蓄積装置、取得データの時間範囲、および取得周期を参照する（Ｓ６５２）。
【０２１６】
図２３のステップＳ６３で第３の蓄積先と仮定した蓄積装置の中で、抽出されたアプリケーションからのネットワーク経路が最短のものをデータの取得先として選定する（Ｓ６５３）。
【０２１７】
ステップＳ６２で決定した第３の蓄積時間、アプリケーションの取得データ時間範囲、取得周期、およびデータサイズから、データの取得に伴う転送トラフィック量を算出する（Ｓ６５４）。
【０２１８】
転送コスト試算部２２１は、算出した転送トラフィック量と、第３の蓄積先と仮定した蓄積装置からアプリケーションの接続先蓄積装置までの経路コストから、データ取得コストを算出する。転送コスト試算部２２１は、ステップＳ６５１の計算ループが終了した時点で算出したデータ取得コストを全て加算し、抽出された全てのアプリケーションのデータ取得コストの総和を算出して（Ｓ６５５）、データ取得コスト算出（Ｓ６５）を終了する。
【０２１９】
図２６は、第３ステップにおける蓄積コスト算出（Ｓ６６）の動作の一例を示すフローチャートである。蓄積コスト算出（Ｓ６６）は、蓄積コスト試算部２２２で実行される。
【０２２０】
図２６において、蓄積コスト試算部２２２は、図２３のステップＳ６３で第３の蓄積先として仮定する全ての蓄積装置について、ステップＳ６６２〜Ｓ６６３を繰り返し計算する（Ｓ６６１）。
【０２２１】
蓄積コスト試算部２２２は、図２３のステップＳ６２で決定された第３の蓄積時間、ならびに生成装置で生成されるデータサイズおよびデータの生成周期から、蓄積装置において蓄積される蓄積データ量を算出する（Ｓ６６２）。
【０２２２】
蓄積コスト試算部２２２は、ステップＳ６６２で算出された蓄積データ量、および蓄積先の蓄積装置における蓄積コスト単価からデータ蓄積コストを算出する。蓄積コスト試算部２２２は、ステップＳ６６１の計算ループにおいて算出した全てのデータ蓄積コストを加算し、第３の蓄積先として仮定した全ての蓄積装置におけるデータ蓄積コストの総和を算出し（Ｓ６６３）、データ蓄積コスト算出（Ｓ６６）を終了する。
【０２２３】
以上、図１７から図２６を用いて、通信制御装置Ｃ１における蓄積ルール決定の動作の詳細を説明した。
【０２２４】
以上のように、実施の形態によれば、上記の方法によって、利用装置におけるデータの取得頻度、又は、ネットワークにおける利用装置の位置に基づいて転送コストが小さくなるように蓄積ルールを決定することができる。
【０２２５】
すなわち、上記の方法によって蓄積先の蓄積装置と蓄積時間を決定することにより、データ転送における遅延時間の改善と蓄積コストの低減とを実現できる最適な蓄積ルールを決定することができる。
【０２２６】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【０２２７】
以上の説明に関し、更に以下の項を開示する。
（付記１）
データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置であって、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する情報収集部と、
前記情報収集部によって収集される前記データの取得に関する情報に基づき、前記蓄積装置における前記データの蓄積ルールを決定する決定部と、
前記決定部で決定される蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する送信部と
を含む、通信制御装置。
（付記２）
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記決定部は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき、前記利用装置への前記データの転送時間が短くなるように、前記データを蓄積する前記蓄積装置と、当該蓄積装置が前記データを蓄積する時間とを選択することにより、前記蓄積ルールを決定する、請求項１記載の通信制御装置。
（付記３）
前記決定部は、前記ネットワークにおける前記データの転送に係る転送コストと前記蓄積装置における前記データの蓄積コストの和が最小になるように前記蓄積ルールを決定する、付記２に記載の通信制御装置。
（付記４）
前記情報収集部は、前記データの取得頻度又は取得時期に関する情報を基に前記利用装置を分類し、
前記決定部は、前記分類毎に前記蓄積ルールを決定する、付記２又は３に記載の通信制御装置。
（付記５）
前記決定部は、前記データの蓄積先となる蓄積装置と、前記蓄積先となる蓄積装置における前記データの蓄積時間とを含む蓄積ルールを決定する、付記１乃至４のいずれか一に記載の通信制御装置。
（付記６）
データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記複数の蓄積装置に蓄積されるデータを利用する利用装置とにネットワークを介して接続される通信制御装置と通信を行う前記蓄積装置であって、
前記データを生成する生成装置で生成されたデータを取得する取得部と、
前記取得部で取得されたデータを蓄積する蓄積部と、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報に基づき決定された蓄積ルールを受信する受信部と、
前記受信部で受信された蓄積ルールに基づき、前記取得部で取得されたデータの蓄積を管理する管理部と
を含む、蓄積装置。
（付記７）
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記受信部は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき、前記ネットワークにおける前記データの転送に係る転送コストと前記蓄積装置における前記データの蓄積コストの和が最小になるように決定された前記蓄積ルールを受信する、付記６に記載の蓄積装置。
（付記８）
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記受信部は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき前記利用装置を分類した分類毎に決定された前記蓄積ルールを受信する、付記７に記載の通信制御装置。
（付記９）
前記受信部は、前記データの蓄積先となる蓄積装置と、前記蓄積先となる蓄積装置における前記データの蓄積時間とを含み決定された蓄積ルールを受信する、付記６乃至８のいずれか一に記載の通信制御装置。
（付記１０）
データを生成する生成装置で生成されたデータを複数の蓄積する蓄積装置と、前記蓄積装置に蓄積された前記データを利用する利用装置とにネットワークを介して接続されて、
前記利用装置における前記複数の蓄積装置からの前記データの取得に関する情報を収集する工程と、
収集された前記データの取得に関する情報に基づき、前記複数の蓄積装置における前記データの蓄積ルールを決定する工程と、
決定された蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する工程と
を含む、通信制御方法。
（付記１１）
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記決定する工程では、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき、前記ネットワークにおける前記データの転送に係る転送コストと前記蓄積装置における前記データの蓄積コストの和が最小になるように前記蓄積ルールを決定する、付記１０に記載の通信制御方法。
（付記１２）
前記データの取得に関する情報は、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報を有し、
前記情報を収集する工程では、前記利用装置が前記データを利用する頻度、又は、前記ネットワークにおける前記利用装置の位置を表す情報に基づき前記利用装置を分類し、
前記決定する工程では、前記分類毎に前記蓄積ルールを決定する、付記１０又は１１に記載の通信制御方法。
（付記１３）
前記決定する工程は、前記データの蓄積先となる蓄積装置と、前記蓄積先となる蓄積装置における前記データの蓄積時間とを含む蓄積ルールを決定する、付記１０乃至１２のいずれか一に記載の通信制御方法。
（付記１４）
データを生成する生成装置で生成されたデータを蓄積する複数の蓄積装置と、前記蓄積装置に蓄積された前記データを利用する利用装置とにネットワークを介して接続されるコンピュータが、
前記利用装置における前記蓄積装置からの前記データの取得に関する情報を収集し、
収集された前記データの取得に関する情報に基づき、前記複数の蓄積装置における前記データの蓄積ルールを決定し、
決定された蓄積ルールを、当該蓄積ルールに対応する前記蓄積装置に送信する
通信制御プログラム。
（付記１５）
前記決定する処理では、前記データの取得の頻度に関する情報を基に、前記ネットワークにおける前記データの転送に係る転送コストと前記蓄積装置における前記データの蓄積コストの和が最小になるように前記蓄積ルールを決定する、付記１４に記載の通信制御プログラム。
（付記１６）
前記情報を収集する処理では、前記データの取得に関する情報を基に前記利用装置を分類し、
前記決定する処理では、前記分類毎に前記蓄積ルールを決定する、付記１４又は１５に記載の通信制御プログラム。
（付記１７）
前記決定する処理では、前記データの蓄積先となる蓄積装置と、前記蓄積先となる蓄積装置における前記データの蓄積時間とを含む蓄積ルールを決定する、付記１４乃至１６のいずれか一に記載の通信制御プログラム。
【符号の説明】
【０２２８】
１      通信制御装置
１１    プロセッサ
１２    主記憶装置
１３    入力装置
１４    出力装置
１５    補助記憶装置
１６    可搬記憶媒体駆動装置
１７    ネットワークインタフェース
１８    バス
１９    可搬記憶媒体
２      通信制御装置
２１    情報収集部
２２    決定部
２２１  転送コスト試算部
２２２  蓄積コスト試算部
２２３  蓄積ルール決定部
２３    送受信部
２３１  送信部
２３２  受信部
３      蓄積装置
３１    メッセージ処理部
３１１  位置登録要求部
３１２  位置検索要求部
３１３  転送要求部
３２    データ制御部
３２１  移動処理部
３２２  コピー処理部
３２３  削除処理部
３２４  取得部
３３    管理部
３４    識別部
３５    送受信部
３５１  送信部
３５２  受信部
【図１】
2015191301.tif 000003
【図２】
2015191301.tif 000004
【図３】
2015191301.tif 000005
【図４】
2015191301.tif 000006
【図５】
2015191301.tif 000007
【図６】
2015191301.tif 000008
【図７】
2015191301.tif 000009
【図８】
2015191301.tif 000010
【図９】
2015191301.tif 000011
【図１０】
2015191301.tif 000012
【図１１】
2015191301.tif 000013
【図１２】
2015191301.tif 000014
【図１３】
2015191301.tif 000015
【図１４】
2015191301.tif 000016
【図１５】
2015191301.tif 000017
【図１６】
2015191301.tif 000018
【図１７】
2015191301.tif 000019
【図１８】
2015191301.tif 000020
【図１９】
2015191301.tif 000021
【図２０】
2015191301.tif 000022
【図２１】
2015191301.tif 000023
【図２２】
2015191301.tif 000024
【図２３】
2015191301.tif 000025
【図２４】
2015191301.tif 000026
【図２５】
2015191301.tif 000027
【図２６】
2015191301.tif 000028