説明

計算機システムおよび計算機資源の管理方法

【課題】ユーザ端末の移動に伴うネットワーク遅延によるユーザへの応答速度を改善し、複製時に発生するネットワーク負荷を低減する。
【解決手段】ネットワークによって接続された複数の計算機資源と、移動端末と接続される無線通信部と、を備える計算機システムであって、前記計算機資源は、プログラムを実行する計算部と、前記計算部および前記移動端末からの要求によって、記憶デバイスに格納されたデータを入出力するストレージ部と、を含み、前記計算機システムは、前記移動端末の移動を予測する移動予測部と、前記移動予測部による予測結果に基づいて計算機資源を複製する複製制御部と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、計算機システムに関し、特にユーザ端末の位置情報に基づいて計算機資源を管理する技術に関する。
【背景技術】
【0002】
ユーザ端末の位置情報に基づいて計算機資源を配置する方法が提案されている。例えば、特許文献1には、移動端末との間で無線通信を行う無線通信部と、移動端末から送信されてくるデータ入出力要求を受信して、受信したデータ入出力要求に応じて記憶デバイスに対するデータの入出力を行う入出力制御部と、遠隔地に存在する他のストレージ制御装置と通信可能に接続する遠隔通信部と、移動経路予測部により予測される移動経路に基づいて、無線通信における移動端末の通信相手の切り替え制御により、後に移動端末と通信することが予測される前記他のストレージ制御装置を特定する通信相手特定部と、通信相手特定部により特定されるストレージ制御装置に、移動端末に送信されることが予測されるデータを、移動端末との間で行われる通信が開始されるのに先立って転送するデータ転送部と、を備えるストレージ制御装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−149398号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
前述したように、特許文献1には、データを記憶するストレージ装置において、移動端末に送信されることが予測されるデータを、移動端末からの通信が開始される前に先だって転送することが記載されている。特許文献1に記載された技術では、ユーザが移動端末において利用されるデータを移動が予測される地点に予め複製することによって、移動端末とストレージ装置との距離が離れることによるデータの転送遅延を削減し、端末操作の応答速度を改善する。なお、特許文献1に記載された技術では、ストレージ装置はネットワークを介して移動端末にデータを提供し、移動端末はユーザの操作に従ってデータ計算処理を実行する。
【0005】
一方、近年のコンピュータシステムでは、ユーザ側にアプリケーションソフトウェアやそれを実行するコンピュータ装置(計算機資源)を持たずに、サービス提供者が持つ計算機資源をネットワークを介して利用するクラウドコンピューティングが普及している。例えば、その一形態であるSaaS(Software as a Service)では、ソフトウェアを、ユーザ端末ではなくソフトウェア提供者側のコンピュータで動作させ、ユーザは当該ソフトウェアによる処理の結果をネットワーク経由で取得する。
【0006】
また、別の形態であるIaaS(Infrastructure as a Service)では、コンピュータシステムを構築する計算機などの基盤を、ユーザがネットワーク経由で利用する。このような近年のシステム形態では、ユーザが所有するデータ、ユーザが期待する処理を行うソフトウェアおよびそれを実行する計算機などの計算機資源がネットワーク上で連携することによって、ユーザへのサービスを提供する。
【0007】
このような形態のコンピュータシステムにおいて、特許文献1に記載された方法によってデータを複製・管理すると、ソフトウェアおよび計算機などのデータ以外の計算機資源が依然としてユーザ端末から離れた位置に配置されたままであるため、ネットワーク遅延によるサービス速度の低下は解消されない。
【0008】
また別の観点では、特許文献1に記載された方法は、ユーザの移動時に各ユーザが保持するデータがネットワークを介して複製されることから、飛行機など多人数が乗車する高速移動手段を利用した場合に、乗車している全てのユーザに関わるデータが移動・複製されることになり、広大なネットワーク帯域を必要とする。そのため、多ユーザが利用する大規模コンピュータシステムに適用することは事実上困難である。
【0009】
そこで、本発明は計算機を含む複数の要素から構成されるコンピュータシステムにおいて、ユーザ端末の移動に伴うネットワーク遅延によるユーザへの応答速度を改善し、また、複製時に発生するネットワーク負荷を低減する。
【課題を解決するための手段】
【0010】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、ネットワークによって接続された複数の計算機資源と、移動端末と接続される無線通信部と、を備える計算機システムであって、前記計算機資源は、プログラムを実行する計算部と、前記計算部および前記移動端末からの要求によって、記憶デバイスに格納されたデータを入出力するストレージ部と、を含み、前記計算機システムは、前記移動端末の移動を予測する移動予測部と、前記移動予測部による予測結果に基づいて計算機資源を複製する複製制御部と、を備えることを特徴とする。
【発明の効果】
【0011】
本発明の代表的な実施の形態によれば、ユーザ端末の移動に伴うネットワーク遅延に起因するユーザ端末の応答速度を改善し、ネットワーク負荷を低減することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の第1の実施形態のコンピュータシステムの構成例を示す図である。
【図2】第1の実施形態の計算装置の構成例を示すブロック図である。
【図3】第1の実施形態のストレージ装置の構成例を示すブロック図である。
【図4】第1の実施形態のユーザ履歴データベースの構成例を説明する図である。
【図5】第1の実施形態の利用形態データベースの構成例を説明する図である。
【図6】第1の実施形態において移動先の計算機資源の利用形態RESfを導出する処理を説明する図である。
【図7】第1の実施形態のネットワーク性能データベースの構成例を説明する図である。
【図8】第1の実施形態のネットワーク資源配置表の構成例を説明する図である。
【図9A】第1の実施形態の資源配置決定処理の例の全体を示すフローチャートである。
【図9B】第1の実施形態の資源配置決定処理の例の詳細を示すフローチャートである。
【図9C】第1の実施形態の資源配置決定処理の例の詳細を示すフローチャートである。
【図9D】第1の実施形態の資源配置決定処理の例の詳細を示すフローチャートである。
【図10】第1の実施形態の資源管理テーブルの構成例を説明する図である。
【図11】第1の実施形態の複製の削除・更新処理の例のフローチャートである。
【図12】本発明の第2の実施形態の利用形態データベースの構成例を説明する図である。
【図13】第2の実施形態のアプリ特性データベースの構成例を説明する図である。
【図14】第2の実施形態において移動先の計算機資源の利用形態RESfを導出する処理を説明する図である。
【図15】第2の実施形態の資源管理テーブルの構成例を説明する図である。
【図16】第2の実施形態の複製の削除・更新処理のフローチャートである。
【図17】本発明の第3の実施形態の資源管理テーブルの構成例を説明する図である。
【発明を実施するための形態】
【0013】
<実施形態1>
<システムの構成>
図1は、第1の実施形態のコンピュータシステムの構成例を示す図である。
【0014】
第1の実施形態のコンピュータシステムは、情報処理装置10、資源管理装置12および無線基地局160を有し、これらの装置がネットワーク150(例えば、ローカルネットワーク、広域ネットワーク)を介して接続される。
【0015】
また、第1の実施形態のコンピュータシステムは、無線基地局160を介してユーザ端末170と接続される。ユーザ端末170は、携帯電話機、PDA(Personal Digital Assistants)、スマートフォンなどの端末で、無線送受信部を有する無線基地局160およびネットワーク150を介して、計算装置100およびストレージ装置110と通信する。資源管理装置12は、ネットワーク150を介してコンピュータシステム内の計算機資源を管理する。
【0016】
情報処理装置10は、複数の計算装置100および複数のストレージ装置110を有し、計算装置100とストレージ装置110の間はネットワーク150によって接続される。なお、図示するように、計算装置100およびストレージ装置110が一つの装置を構成したり、計算装置100が単体で一つの装置を構成したり、ストレージ装置110が単体で一つの装置を構成してもよい。
【0017】
資源管理装置12は、ユーザ移動・行動予測装置120、ユーザ履歴・複製判定装置130および複製制御装置140を有し、ユーザ移動・行動予測装置120、ユーザ履歴・複製判定装置130および複製制御装置140の間はネットワーク150によって接続される。
【0018】
図2は、第1の実施形態の計算装置100の構成例を示すブロック図である。
【0019】
計算装置100は、複数のCPU(Central Processing Unit)101、メモリ102、ネットワークインタフェース(NIC)103などの、ハードウェア資源を有する。計算装置100は、ハードウェア資源の管理ソフトウェア(ハイパーバイザ)を搭載し、ハードウェア資源の数に依存しない仮想的な計算機(以後、仮想マシン、Virtual Machine)106を提供する。各仮想マシン106A〜106Z上では、基本ソフトウェア(Operating System)が動作し、オペレーティングシステム上では、ユーザ毎に固有のアプリケーションソフトウェアが動作する。
【0020】
各仮想マシン106A〜106Zは、仮想マシン管理部104によって管理される。仮想マシン管理部104は、ユーザ毎の仮想マシンの構成情報(例えば、CPU、メモリ、NICなどのハードウェア資源の割り当て、仮想マシン上で動作しているOSおよびアプリケーションソフトウェアの情報)を保持し、ハイパーバイザと連携して仮想マシンを構成するために必要な物理ハードウェアの割り当てを動的に変更して、仮想マシンの実行状態を制御する。
【0021】
図3は、第1の実施形態のストレージ装置110の構成例を示すブロック図である。
【0022】
ストレージ装置110は、記憶媒体111、ストレージ管理部112および通信インターフェース113を有する。
【0023】
記憶媒体111は、磁気ディスクドライブ(Hard Disk Drive)や、不揮発性メモリ(Solid State Drive)等の不揮発性の記憶装置である。ストレージ管理部112は、ネットワーク150を介したアクセス要求に従って、記録媒体111へのデータの読み書きを制御し、ネットワーク150へのデータの転送を制御する。通信インターフェース113は、ネットワーク150を介した通信を制御する。
【0024】
<サービス/アプリの例>
次に、本コンピュータシステムの動作を説明する。ここでは一例として、ユーザが所有する写真・動画などのデジタルメディアデータを扱う例について説明するが、本コンピュータシステムの利用用途はこれに限定されない。
【0025】
デジタルメディアデータはストレージ装置110に格納される。ユーザ端末170からの操作にによって、ユーザが所有するデータの検索、再生、編集、変換、登録などの処理を行うことができる。ユーザ端末170は、ネットワーク150を介してデジタルメディアデータ管理サービスに接続する。本サービスを提供するソフトウェアは計算装置100内の仮想マシン上で実行される。
【0026】
例えば、利用者がユーザ端末170からキーワードを指定すると、ネットワーク150を介してキーワードが仮想マシン106上のソフトウェアに転送される。次に、仮想マシン106上のソフトウェアはストレージ装置110上に予め構築しておいた検索インデックスデータをネットワーク150経由で仮想マシン106のメモリに転送し、インデックス検索処理が仮想マシン106上で実行され、指定されたキーワードと一致したデータの一覧がユーザ端末170に転送され、ユーザ端末170の表示装置に表示される。
【0027】
次に、データの再生の例を示す。ユーザ端末170から再生操作を行うと、再生するメディアデータ名と再生指示が仮想マシン106上のソフトウェアに転送される。再生に必要な動画データはストレージ装置から仮想マシン106に順次転送され、仮想マシン106ではデータの復号処理が行われて画像データとして復元される。本画像データを毎秒15〜30枚の速度でユーザ端末170に転送することでユーザ端末170上で動画が再生される。
【0028】
また、データ形式を変換する場合には、変換対象のメディアデータ名のリストと変換指示が、ユーザ端末170から計算装置100の仮想マシン106上のソフトウェアに転送される。同様にストレージ装置110に格納されたメディアデータが仮想マシン106に転送され、データが復号され、指定の形式へ変換される。変換されたデータは仮想マシン106からストレージ装置110に転送され、記録媒体111に格納される。全てのデータの変換が完了すると、仮想マシン106はユーザ端末170に、変換の完了を示すメッセージを送信し、ユーザ端末170は当該メッセージを表示する。
【0029】
また、ユーザ端末170の動画撮影機能で撮影した動画データを登録する場合には、データの復号・変換などの加工処理が不要なため、ユーザ端末170から直接ストレージ装置110に動画データを転送する。ユーザ端末170は、転送の完了後に、転送された動画データの情報をデータ検索用のインデックスに追加する必要があることを計算装置100に通知する。インデックスの追加は動画データの登録と同時に行う必要はなく、次回の検索処理時、または、サービスの利用頻度が低い夜間などに、仮想マシン106上のソフトウェアが、通知された動画ファイルと検索インデックスとを、ストレージ装置110から仮想マシン106に転送し、動画の特徴抽出結果をインデックスに追加した上で、検索インデックスをストレージ装置110に書き込む。
【0030】
ここで、上記に述べた検索、再生、変換、登録の4種類のサービス機能について、サービスの応答速度に影響を与えるネットワーク150によるデータの転送量について考察する。ネットワークによるデータ転送は(経路A)ユーザ端末170−仮想マシン106、(経路B)仮想マシン106−ストレージ装置110、(経路C)ストレージ装置110−ユーザ端末170の三つの経路において発生する。また、データ量としては動画の複合後の画像データ(大)>復号前の動画データ(中)>検索インデックス(小)>検索キーワード・操作指示(小)の関係があることを考慮すると、以下のネットワーク転送が発生する。
検索時:(経路A)小、(経路B)小、(経路C)無
再生時:(経路A)大、(経路B)中、(経路C)無
変換時:(経路A)小、(経路B)中、(経路C)無
登録時:(経路A)小、(経路B)無、(経路C)中
【0031】
これらのネットワーク150によるデータ転送量は、サービス、アプリケーション、ユーザの利用方法にも大きく依存する。
【0032】
<ユーザ移動の説明>
以上に述べたデジタルメディアデータ管理サービスにおいて、ユーザ端末移動時の資源管理装置12の動作について説明する。図1に示すとおり、資源管理装置12は、ユーザ移動・行動予測装置120、ユーザ履歴・複製判定装置130および複製制御装置140を有する。
【0033】
<ユーザ移動・行動予測装置>
ユーザ移動・行動予測装置120は、ユーザ端末170の現在地と、今後の移動先または行動を予測する。ユーザ端末170の現在地は、ユーザの過去の行動および将来の予定によって、例えば、以下の方法によって検出することができる。以下の方法を選択的または複数の方法による検出結果を、例えば多数決などの方法で統合して、場所を特定する。
(1)ユーザ端末170に搭載されたGPS(Global Posisioing System)が取得した緯度・経度情報をネットワーク150経由で入手する方法。
(2)ユーザ端末170が無線通信をしている無線基地局の場所から特定する方法。
(3)ユーザが管理している予定表(個人カレンダー)に記載された予定場所から特定する方法。
(4)航空機などの予約、旅程から特定する方法。
(5)ユーザ端末170とは異なる、ユーザが保持する携帯電話等の携帯端末が提供する位置情報サービス(GPS情報、無線基地局との通信等に基づく)を用いて特定する方法。
(6)ソーシャルネットワークに投稿されたユーザのメッセージに含まれる場所の情報から特定する方法。
【0034】
また、移動先は、例えば、以下の方法によって推定することができる。以下の方法を選択的または複数の方法による検出結果を、例えば多数決などの方法で、統合して、将来の移動先を予測する。(A)特定した現在地の履歴から移動速度・方向を検出して場所を推定する方法。(B)前述した(3)(4)(6)の方法を用いて将来時刻の場所を直接的に推定する方法。さらに、現在地の履歴を蓄積し、曜日や時間帯毎にユーザが存在する位置を集計し、ユーザの行動を時系列順に推定する行動予測を行ってもよい。
【0035】
ユーザ移動・行動予測装置120は、以上のような手段で予測したユーザの現在地Puserc、今後の移動先Puserf、および、その到着時間Tuserfをユーザ履歴・複製判定装置130に送信する。このユーザの情報は、あらかじめ指定された期間T毎またはユーザ位置・予測位置が所定値以上変化した場合に送信するとよい。
【0036】
<ユーザ履歴・複製判定装置(DB検索)>
次に、ユーザ履歴・複製判定装置130による計算機資源の複製判定方法について説明する。
【0037】
ユーザ履歴・複製判定装置130は、ユーザ毎の計算機資源の利用履歴から構築されたユーザ履歴データベース400を保持する。図4に示すとおり、ユーザ履歴データベース400は、ユーザ名401、過去の履歴から抽出した現在地402、移動先403、および、その移動先における計算機資源の利用形態の種別404が格納される。例えば、ユーザXが東京から大阪に移動した場合には、移動先である大阪におけるコンピュータの利用形態はタイプ5であったことが過去の履歴として記録されていることを示す。
【0038】
また、ユーザ履歴・複製判定装置130は、計算機資源の利用形態の種別が登録される利用形態データベース500を保持する。すなわち、図5に示すとおり、利用形態データベース500は、計算機資源の利用形態の種別501、利用形態の種別毎に利用される計算機資源の量(Trans)502、すなわち、データを複製する際に必要となる計算機資源の量、および、ユーザの実稼動状態における計算機資源間の転送速度に対するサービス応答時間の感度(Sense)503を含む。
【0039】
データ複製時の計算機資源の転送量(Trans)502は、ユーザ端末170の計算機資源の使用量504、ストレージ装置110の計算機資源の使用量505および仮想マシン106の計算機資源の使用量506を含む。ストレージ装置110の計算機資源の使用量505は、データ転送に必要な記憶媒体の容量で規定され、仮想マシン106の計算機資源の使用量506は、OSおよびアプリケーションソフトウェアを実行するための必要なメモリの容量で規定される。
【0040】
サービス応答時間の感度503は、サービス利用時のユーザの待ち時間が計算機資源間の距離に影響を受ける感度を示す指標であり、資源間の距離が大きい場合に待ち時間が大きくなる傾向が強い場合にその数値が大きくなる。サービス応答時間の感度503は、ユーザ端末170とストレージ装置110との間のデータ転送における性能感度507、ストレージ装置110と仮想マシン106との間のデータ転送における性能感度508および仮想マシン106とユーザ端末170との間のデータ転送における性能感度509を含む。
【0041】
ユーザ履歴・複製判定装置130は、ユーザ移動・行動予測装置120から送信される現在地Pusercおよび今後の移動先Puserfから、図6に示す手順でユーザ履歴データベース400および利用形態データベース500を検索し、移動先での計算機資源の利用形態RESfを導出する。前述したとおり、RESfは、利用形態の種別毎に利用される計算機資源の量Trans、および、計算機資源間の転送速度がユーザへのサービスの応答時間に与える感度Senseを含む。また、データを複製するための期限の時間として、ユーザ移動予測における移動時間Tuserfを出力する。
【0042】
<ユーザ履歴・複製判定装置(複製先の特定)>
その後、得られた資源利用形態RESfから、ユーザが移動先Puserfから当該サービスを利用した場合の計算機資源が配置される望ましい位置を決定する。まず、配置の決定に先立って、現在のネットワークの状態を示すネットワーク性能データベース800を構築する。
【0043】
図7に示すとおり、ネットワーク性能データベース800は、二つの拠点(801、802)間で、時間帯803毎に、ネットワーク性能を応答時間(Resp)804および転送帯域(Band)805で記録している。ネットワーク性能データベース800は、ネットワーク500内の各拠点において、ネットワーク転送量および応答時間を、転送先・転送元のペアで時間帯毎に集計することによって構築することができる。
【0044】
また、各拠点の絶対位置(本実施形態では緯度および経度)と、計算機資源(例えば、演算処理に必要なソフトウェアおよびデータ)が各拠点に配置可能かの情報をネットワーク資源配置表900にて管理する。
【0045】
図8に示すとおり、ネットワーク資源配置表900は、拠点の名称(または識別子)901、拠点の位置(緯度および経度)902、各拠点に配置される資源の種類903〜905を含む。なお、図5に示す利用形態データベース500と同様に、資源Aはユーザ端末170の接続可否、資源Bはストレージ装置110の資源、資源Cは仮想マシン106の資源の配置可否を示す。
【0046】
以下、図9Aから図9Dを参照して複製先の特定方法について説明する。
【0047】
まず、ユーザ履歴・複製判定装置130は、資源配置可能場所を抽出して、資源配置可能場所リストを生成する(ステップ1)。
【0048】
具体的には、図9Bに示すように、利用形態RESfで必要とされる各計算機資源rについて(1−1)、また、各拠点p毎に(1−2)、ネットワーク資源配置表900を参照して、資源rが拠点pに存在するかを判定する(1−3)。その結果、資源rが拠点pに存在する場合、拠点pを資源配置可能場所リストSetPrに追加する(1−4)。そして、この処理を全ての拠点p、および、全ての資源rについて繰り返して(1−5、1−6)、資源を配置可能な拠点の集合(SetPA、SetPB、…)である資源配置可能場所リストSetPrを生成する。
【0049】
その後、資源複製可能場所を絞り込む(ステップ2)。
【0050】
具体的には、図9Cに示すように、利用形態RESfで必要とされる各計算機資源について(2−2)、また、各拠点p毎に(2−2)、各資源を現在地(Pres)から資源配置可能場所リストSetPrの要素である拠点pに転送した時の所要時間Tを求める。所要時間Tは、ネットワーク性能DB800から取得した情報を用いて、下式によって計算する(2−3)。
【0051】
所要時間T=RESf.Trans/Band(Pres→p)
ユーザが移動先へ到着する時刻Tuserfまでにデータの転送が間に合う場合(2−4でY)、拠点pを資源配置可能場所リストSetPr’に追加する(2−5)。なお、既に資源が複製されて複数個所に存在し、資源の所在地Presが複数の要素を含むことがある。その場合には、いずれかの資源の所在地から複製が間に合う場合は、転送可能と判断することができる。
【0052】
そして、この処理を全ての拠点p、および、全ての資源rについて繰り返して(2−6、2−7)、資源を配置可能な拠点の集合(SetPA’、SetPB’、…)である資源配置可能場所リストSetPr’を生成する。
【0053】
その後、性能を最大化する配置場所を決定する(ステップ3)。
【0054】
具体的には、図9Dに示すように、ステップ2で求めたSetPA’、SetPB’、…から得られる全ての可能な配置場所の組み合わせ(Loc=combination of SetP*)について(3−1)、下式によって推定性能Perfを計算し(3−2)、Perfが最大となる配置をPerfMaxに設定する(3−3、3−4)。資源間距離は、ネットワーク資源配置表900の拠点位置から算出することができる。
Perf=1/(ΣRESf.Sense×資源間距離)
【0055】
そして、この処理を全ての配置場所の組み合わせについて繰り返して(3−5)、Perfが最大となる配置(LocMax)を決定する。
【0056】
以上の処理によって、資源(演算処理に必要なハードウェア、プログラムおよびデータ)をユーザ到着前に複製可能であり、かつ、配置可能な範囲内でユーザ端末170に提供されるサービスの性能を最大化(例えば、応答速度を最小化)する配置を決定することができる。
【0057】
なお、複製先の候補として複数の拠点が決定された場合、複数の拠点に計算機資源を複製してもよい。また、複製期限時間Tuserfに余裕があれば、複製先の拠点の決定を保留してもよい。
【0058】
<複製制御装置>
次に、複製制御装置140について説明する。
【0059】
まず、図10を用いて、複製管理装置140が管理する資源管理テーブル1600について説明する。
【0060】
第1の実施形態の資源管理テーブル1600は、資源の種類1601、オリジナル拠点1602および複製1から複製N(1603〜1605)のデータを含む。各複製のデータは、各拠点に複製された内容が記録され、拠点1606、参照時間1607および更新1608を含む。
【0061】
オリジナル拠点1602は、各資源のオリジナルが設定されるまたは複製を保有する拠点である。オリジナルの拠点は様々な方法によって決定することができる。例えば、ユーザが予め登録した拠点をオリジナルの拠点に決定しても、過去のユーザ位置の履歴を参照して、滞在期間が長い拠点をオリジナル拠点に決定してもよい。
【0062】
複製1から複製N(1603〜1605)は、各資源の複製に関するデータである。拠点1605は、各資源の複製が設定されるまたは複製を保有する拠点である。参照時刻1607は、当該複製が直近に参照された時刻である。更新1608は、当該複製の資源を更新する必要があるかを示すフラグである。
【0063】
図11は、第1の実施形態の複製制御装置140によって実行される複製の削除・更新処理の例のフローチャートである。
【0064】
複製制御装置140は、ユーザ履歴・複製判定装置130から送信された資源配置コマンドおよびユーザ端末170から送信された資源更新コマンドに従って、計算機資源の複製・更新・削除処理を実行する。
【0065】
まず、複製制御装置140は、資源配置コマンドを受信したかを確認し(1501)、受信した資源配置コマンドの内容に従って、計算機資源の拠点間での複製を指示し、複製された計算機資源を資源管理テーブル1600に追加する(1502)。計算機資源を複製する機能は各計算機資源内に設けられている。例えば、図2に示すデータ処理装置100の仮想マシン管理部104、図3に示すストレージ装置110のストレージ管理部112に複製機能が設けられる。各計算機資源の管理部への複製の指示方法は、ベンダーによって異なるため、複製制御装置140は指示を変換して拠点毎の装置に適合する指示を出力する。
【0066】
次に、複製制御装置140は、データ更新コマンドを受信したかを確認する(1503)。複製されたコンピュータ資源がユーザ端末170からのサービス利用によって(すなわち、ユーザ端末170から送信されたデータ更新コマンドによって)更新された場合、その更新内容を全ての複製に配布する必要がある。この更新内容は、即時には配布されず、ユーザ端末170の位置から所定距離D以上離れた場所にある複製資源については、更新内容を複製制御装置140内に保存し、複製への更新を一旦保留し、保留状態であることを資源管理テーブル1600の更新欄1608に「要」として記憶する。ユーザ端末170の位置が移動し、ユーザ端末170と複製資源との距離が一定距離Dより小さくなった場合(1505でY)、複製資源を更新する(1506)ことによって、計算機資源の複製の更新に使用されるネットワーク転送量を削減することができる。
【0067】
さらに、複製制御装置140は、資源管理テーブル1600の参照時間1606の欄を参照し、当該資源の複製が直近に参照されてからの経過時間Tを計算する。そして、複製制御装置140は、過去に同一ユーザ向けに複製した資源が現在の予測からは複製先の候補でなく、予め定められた時間Tの間に参照されておらず、かつ、資源の数が1を超える場合(1507でY)、複製を削除し、資源管理テーブル1600を更新する(1508)。このように、資源管理テーブル1600に重複されて登録されているかによって、当該資源の数が一つであるかを判定し、唯一の資源である場合には資源を削除しないことによって、資源の消失を防止することができる。
【0068】
以上に説明したように、第1の実施形態では、情報処理装置10における計算機資源の複製処理によって、ユーザ端末170の移動予測に基づいて、ユーザの過去の利用履歴から推定される情報処理装置10の利用状態において、応答速度が良好な計算機資源の配置を算出し、ユーザの移動に先だって資源の複製を実施することができる。
【0069】
第1の実施形態において説明したデジタルメディア処理サービスでは、ユーザ端末170、仮想マシン106、ストレージ装置110間のデータ転送量がユーザの利用方法によって大きく変化する。たとえば、東京に住むあるユーザが大阪に住む知人宅に出向いて、多くの動画を再生する場合、ユーザ端末170と仮想マシン106との間に大きなトラフィックが発生するが、動画データを格納するストレージ装置110からは比較的小さな容量のストリーミングデータが読み出される。この場合には、仮想マシン106のみが大阪付近に複製され、ストレージ装置110に格納されたデータは複製されない。また、ユーザが北海道へ旅行して、多くの写真および動画が撮影され、撮影された写真および動画がデジタルメディア処理サービスへ頻繁に登録される状況では、ストレージ装置110が北海道付近に複製されて、ユーザ端末170とストレージ装置110との間の応答時間が短縮される。東京のストレージ装置110に格納された複製への登録されたデータの更新は保留される。そして、ユーザが旅行から戻る間に、東京のストレージ装置110とユーザ端末170との距離が近づくと、北海道で登録されたデータの変更が東京のストレージ装置110に反映される。
【0070】
<実施形態2>
第2の実施形態では、計算機資源の複製時に、複製すべき資源の部分を特定することによって、ネットワークの負荷をさらに低減するコンピュータシステムの例を示す。前述した第1の実施形態のコンピュータシステムと同一の構成および機能を有する部分には同一の符号を付し、それらの説明は省略する。
【0071】
図12は、第2の実施形態のユーザ履歴・複製判定装置130に保持される利用形態データベース1000の構成例を説明する図である。第1の実施形態の利用形態データベース500に加えて、仮想マシン106で実行されるアプリケーションソフトウェアの情報1001が追加されている。また、ユーザ履歴・複製判定装置130は、アプリケーションソフトウェアの情報1001の詳細を示すアプリ特性データベース1100を保持する。
【0072】
図13に示すとおり、アプリ特性データベース1100は、アプリケーション名1101、仮想マシン106上で動作するソフトウェア名(ファイル名)1102および当該アプリケーションで扱われるファイルタイプ(拡張子)1103を含む。
【0073】
図14は、第2の実施形態において移動先の計算機資源の利用形態RESfを導出する処理を示す説明図である。
【0074】
第2の実施形態では、ユーザの移動予測から検索された利用形態に加えて、アプリケーションが必要とする資源の特性が推定される。このため、第2の実施形態の利用形態データベース1000の計算機資源の転送量502には、ファイルタイプで指定される資源のみの転送量が登録される。アプリ特性データベース1100に含まれるプログラム名1102は、仮想マシン106の複製時に、複製する仮想マシン106上で実行されるアプリケーションソフトウェアの特定に用いられ、ファイルタイプ1103はストレージ装置110の複製時に、複製対象となるデータの特定に用いられる。これによって、複製される計算機資源を絞り込むことができ、計算機資源の複製に伴うネットワーク転送量を低減することができる。
【0075】
ユーザ履歴・複製判定装置における複製先の特定は、前述したとおり利用形態データベース1000の計算機資源の転送量502に指定される資源のみの転送量が記述されているため、前述した第1の実施の形態と同じであり、詳細な説明は省略する。
【0076】
なお、第2の実施形態では、複製される計算機資源の量が減るので、複製制限時間Tuserfに余裕が生じ、前述した第1の実施形態より多くの拠点を複製先の拠点の候補として選択することができる。
【0077】
さらに、第2の実施形態では、複製先の候補として複数の拠点が決定された場合、複数の拠点毎に利用されるアプリケーションソフトウェアを特定し、拠点毎に異なる計算機資源を複製してもよい。
【0078】
第2の実施形態では、各計算機資源が全体ではなく一部のみ複製されるので、複製制御装置140で実行される複製の削除・更新処理が異なる(図16参照)。
【0079】
まず、図15を用いて、第2の実施形態の複製管理装置140が管理する資源管理テーブル1300について説明する。
【0080】
第2の実施形態の資源管理テーブル1300は、資源の種類1601、オリジナル拠点1602および複製1から複製N(1603〜1605)のデータを含む。各複製のデータは、各拠点に複製された内容が記録され、拠点1606、内容1301、参照時刻1607および更新1608を含む。
【0081】
資源の種類1601、オリジナル拠点1602、拠点1606、参照時刻1607および更新1608に保持されるデータは、前述した第1の実施形態の資源管理テーブル1600(図10)と同じである。内容1301は、複製された資源(特に、演算処理に必要なソフトウェアおよびデータ)の内容であり、例えば、図示したように、ファイル名や拡張子名で表すことができる。
【0082】
図16は、第2の実施形態の複製制御装置140によって実行される複製の削除・更新処理のフローチャートである。
【0083】
第2の実施形態の削除・更新処理は、ステップ1501、1503から1506および1508の処理は、前述した第1の実施形態の処理と同じであるが、ステップ1501で資源配置コマンドの要求があった場合(1501でY)のテーブル追加・資源複製処理(1702)と、ステップ1505で、ユーザ端末170と複製資源との距離を判定した後の処理(1701)が異なる。具体的には、ステップ1701で、複製判定装置から入力される資源特定情報も資源管理テーブル1600に登録し、また、計算装置、ストレージ装置への複製要求時に特定された資源のみの複製を要求することである。また、ステップ1505で、ユーザ端末170と複製資源との距離が一定距離D以上である場合(1505でN)、および、ステップ1506で、複製資源を更新した後に、複製制御装置140は、資源管理テーブル1600の参照時間1606の欄を参照し、当該資源の複製が直近に参照されてからの経過時間Tを計算する。そして、複製制御装置140は、過去に同一ユーザ向けに複製した資源が現在の予測からは複製先の候補でなく、予め定められた時間Tの間に参照されていなく、かつ、当該拠点がオリジナル拠点でない場合(1507でY)、複製を削除し、資源管理テーブル1600を更新する(1508)。このように、当該資源がオリジナルの資源であるかを判定することによって、オリジナルの資源の消失を防止することができる。
【0084】
なお、第2の実施形態において、ユーザがオリジナル拠点に近づいた場合、オリジナル拠点には全ての資源の複製元が削除されずに存在し、距離Dの条件を満たすことから、各拠点における全ての資源の更新をオリジナル拠点に反映する。これにより、予測精度とは無関係に最も資源を多く使うであろう本拠地(オリジナル拠点)でのユーザの資源の利用性を高めることができる。
【0085】
以上に説明したように、第2の実施形態では、拠点によってユーザが使用するアプリケーションの動作に必要な資源を選択して複製するので、ユーザの移動に伴う資源の複製量を減少し、ネットワーク負荷を減らすことができる。
【0086】
<実施形態3>
第3の実施形態では、計算機資源の複製時に、資源のオリジナル拠点を識別・特定しないことによって、ネットワークの負荷をさらに低減するコンピュータシステムの例を示す。前述した第1および第2の実施形態のコンピュータシステムと同一の構成および機能を有する部分には同一の符号を付し、それらの説明は省略する。
【0087】
第3の実施形態の複製制御装置140は、前述した第2の実施形態と異なり、資源のオリジナル拠点を識別せず、資源の一部である部分資源の場所と内容を管理する。このため、図17に示すように、第3の実施形態の複製管理装置140が管理する資源管理テーブル1400は、資源の種類1601、部分資源1から部分資源N(1402〜1404)のデータを含む。各部分資源のデータは、拠点に部分的に複製された資源の内容が記録され、拠点1606、内容1301、参照時刻1607および更新1608を含む。
【0088】
資源の種類1601、拠点1606、内容1301、参照時刻1607および更新1608に保持されるデータは、前述した第1の実施形態の資源管理テーブル1600(図10)または第2の実施形態の資源管理テーブル1300(図15)と同じである。
【0089】
第3の実施形態では、資源は全ての部分資源の集合で定義され、ユーザに属するコンピュータ資源とその複製は、全てユーザのアプリ利用形態に関連付けされて資源管理テーブル1400に登録される。
【0090】
なお、前述した第1の実施形態と同様に、一定期間利用されない部分資源の複製は削除されるが、資源管理テーブル1400に重複されて登録されていない唯一の部分資源は削除しないことによって資源の喪失を防止する。すなわち、第3の実施形態では、複製元および複製先が区別されないので、複製がされた後であれば複製元の計算機資源の利用状況によって、複製元の計算機資源が削除されることがある。
【0091】
第3の実施形態によると、複製制御装置140に保持される資源管理テーブル1400が大きくなるが、ユーザ位置と資源の相関性が高くなり、また、ユーザの位置が頻繁に移動する利用形態において、資源の複製に必要なネットワーク転送量を減らすことができる。
【符号の説明】
【0092】
10 情報処理装置
12 資源管理装置
100 計算装置
110 ストレージ装置
120 ユーザ移動・行動予測装置
130 ユーザ履歴・複製判定装置
140 複製制御装置
150 ネットワーク
160 無線基地局
170 ユーザ端末

【特許請求の範囲】
【請求項1】
ネットワークによって接続された複数の計算機資源と、
移動端末と接続される無線通信部と、を備える計算機システムであって、
前記計算機資源は、プログラムを実行する計算部と、前記計算部および前記移動端末からの要求によって、記憶デバイスに格納されたデータを入出力するストレージ部と、を含み、
前記計算機システムは、
前記移動端末の移動を予測する移動予測部と、
前記移動予測部による予測結果に基づいて計算機資源を複製する複製制御部と、を備えることを特徴とする計算機システム。
【請求項2】
前記計算部およびストレージ部の少なくとも一方は、物理的な計算機上に仮想的に構成された仮想マシンであり、
前記複製される計算機資源は前記仮想マシンであり、
前記計算部は、前記ユーザ端末にサービスを提供するオペレーティングシステムおよびソフトウェアを含むことを特徴とする請求項1に記載の計算機システム。
【請求項3】
前記移動端末による計算機資源の利用形態が記録された履歴記録部と、
前記履歴記録部に記録されたユーザ毎の利用形態の履歴に基づいて、複製すべき計算機資源を決定する履歴・複製判定部と、を備えることを特徴とする請求項1に記載の計算機システム。
【請求項4】
前記移動予測部による予測結果および予測された位置への移動時間に基づいて、複製すべき計算機資源を決定する履歴・複製判定部を備えることを特徴とする請求項1に記載の計算機システム。
【請求項5】
前記移動端末による計算機資源の利用形態が記録された履歴記録部を備え、
前記移動予測部は、前記移動端末の位置情報、前記移動端末を使用しているユーザの将来の移動に関する情報、または、前記履歴記録部に記録されたユーザ毎の計算機資源の利用形態の履歴の情報の少なくとも一つ以上を用いて、当該移動端末の移動を予測することを特徴とする請求項1に記載の計算機システム。
【請求項6】
前記移動予測部による予測結果に基づいて、複製すべき計算機資源および複製先の拠点を決定する履歴・複製判定部を備えることを特徴とする請求項5に記載の計算機システム。
【請求項7】
前記複製制御部は、所定の期間利用されない前記計算機資源の複製を削除することを特徴とする請求項1に記載の計算機システム。
【請求項8】
前記複製制御部は、前記計算機資源の複製後に、所定の期間利用されない複製元の計算機資源を削除することを特徴とする請求項1に記載の計算機システム。
【請求項9】
前記移動端末による計算機資源の利用形態が記録された履歴記録部と、
前記履歴記録部に記録されたユーザ毎の利用形態の履歴に基づいて、各拠点に複製すべき計算機資源の種類を決定する履歴・複製判定部と、を備え、
前記複製制御部は、前記履歴・複製判定部によって決定された種類の計算機資源を前記拠点毎に複製することを特徴とする請求項1に記載の計算機システム。
【請求項10】
ネットワークによって接続された複数の計算機資源と、移動端末と接続される無線通信部と、を有する計算機システムにおける計算機資源の管理方法であって、
前記計算機資源は、プログラムを実行する計算部と、前記計算部および前記移動端末からの要求によって、記憶デバイスに格納されたデータを入出力するストレージ部と、を含み、
前記管理方法は、
前記移動端末の移動を予測するステップと、
前記移動予測部による予測結果に基づいて計算機資源を複製するステップと、を含むことを特徴とする計算機資源の管理方法。
【請求項11】
前記計算機システムは、前記移動端末による計算機資源の利用形態が記録された履歴記録部を有し、
前記管理方法は、さらに、前記履歴記録部に記録されたユーザ毎の利用形態の履歴に基づいて、複製すべき計算機資源を決定するステップを含み、
前記計算機資源を複製するステップでは、前記決定された計算機資源を複製することを特徴とする請求項10に記載の計算機資源の管理方法。
【請求項12】
前記管理方法は、さらに、前記移動予測部による予測結果および予測された位置への移動時間に基づいて、複製すべき計算機資源を決定するステップを含み、
前記計算機資源を複製するステップでは、前記決定された計算機資源を複製することを特徴とする請求項10に記載の計算機資源の管理方法。
【請求項13】
前記計算機システムは、前記移動端末による計算機資源の利用形態が記録された履歴記録部を有し、
前記移動を予測するステップでは、前記移動端末の位置情報、前記移動端末を使用しているユーザの将来の移動に関する情報、または、前記履歴記録部に記録されたユーザ毎の計算機資源の利用形態の履歴の情報の少なくとも一つ以上を用いて、当該移動端末の移動を予測することを特徴とする請求項10に記載の計算機資源の管理方法。
【請求項14】
前記管理方法は、さらに、前記移動予測部による予測結果に基づいて、複製すべき計算機資源および複製先の拠点を決定するステップを含み、
前記計算機資源を複製するステップでは、前記決定された計算機資源を複製することを特徴とする請求項13に記載の計算機資源の管理方法。
【請求項15】
前記管理方法は、さらに、所定の期間利用されない複製元または複製の計算機資源を削除するステップを含むことを特徴とする請求項10に記載の計算機資源の管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9A】
image rotate

【図9B】
image rotate

【図9C】
image rotate

【図9D】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate