(57)【特許請求の範囲】
【請求項１】
複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出する検出部と、
前記検出したレイテンシに基づき、前記複数のデータセンタのうち１のデータセンタを選択する選択部と、
前記複数のデータセンタのうち所定のデータを格納するデータセンタに対して、前記選択部が選択した１のデータセンタ内に当該所定のデータのレプリカを作成させる指示を送信する指示部と、
を備える情報処理装置。
【請求項２】
前記リクエストは、前記複数のデータセンタ各々の使用状況に関する情報の送信を要求するリクエストであることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記選択部は、前記複数のデータセンタ各々の使用状況に関する情報に基づき、使用率が低いデータセンタのうち、最もレイテンシが低いデータセンタを選択することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記検出部は、起動時に処理が所定時間を超えた場合、自動的に、複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
複数のデータセンタのうち所定のデータを格納する１のデータセンタに配置されるサーバと、当該サーバとネットワークを介して通信可能に接続される情報処理装置と、を備える情報処理システムにおいて、
前記情報処理装置は、
前記複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出する検出部と、
前記検出したレイテンシに基づき、前記複数のデータセンタのうちデータセンタを１つ選択する選択部と、
前記１のデータセンタに配置される前記サーバに対して、前記選択部が選択したデータセンタ内に前記所定のデータのレプリカを作成させる指示を送信する指示部と、
を備え、
前記サーバは、
前記指示部からの指示に応じて、レプリカを作成し、作成したレプリカを、前記選択部が選択したデータセンタに送信するレプリカ作成部、
を備える情報処理システム。
【請求項６】
前記リクエストは、前記複数のデータセンタ各々の使用状況に関する情報の送信を要求するリクエストであることを特徴とする請求項５に記載の情報処理システム。
【請求項７】
前記サーバは、
前記複数のデータセンタのうち１のデータセンタ以外のデータセンタから、当該データセンタの使用状況に関する情報を取得してデータセンタリストを作成する作成部をさらに備え、
前記サーバが備えるレプリカ作成部は、前記情報処理装置の選択部が選択したデータセンタにレプリカを作成できないと判定した場合、前記選択部が選択したデータセンタ以外のデータセンタであって前記データセンタリストに含まれるデータセンタの一つをレプリカ先として選択し直して、レプリカ作成処理を継続することを特徴とする請求項５または６に記載の情報処理システム。
【請求項８】
前記検出部は、起動時に処理が所定時間を超えた場合、自動的に、複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出することを特徴とする請求項５から７のいずれか１項に記載の情報処理システム。
【請求項９】
複数のデータセンタのうち１のデータセンタに配置され所定のデータを格納するサーバと、当該サーバとネットワークを介して通信可能に接続される情報処理装置と、を備える情報処理システムにおいて、前記所定のデータの格納場所を制御する情報処理方法であって、
前記情報処理装置が、
前記複数のデータセンタ各々に前記複数のデータセンタ各々の使用状況に関する情報の送信を要求するリクエストを送信し、当該リクエストに対する応答から前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを算出し、当該算出したレイテンシに基づきデータセンタを１つ選択し、
前記１のデータセンタに配置される前記サーバに対して、選択したデータセンタ内に当該所定のデータのレプリカを作成させる指示を送信し、
前記サーバが、
前記情報処理装置からの指示に応じて、レプリカを作成し、作成したレプリカを、前記情報処理装置が選択したデータセンタに送信する
各処理を実行することを特徴とする情報処理方法。
【請求項１０】
起動時に処理が所定時間を超えた場合、自動的に、複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出することを特徴とする請求項９に記載の情報処理方法。
【請求項１１】
コンピュータに、
複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを算出し、算出したレイテンシに基づき１のデータセンタを選択し、
前記複数のデータセンタのうち所定のデータを格納するサーバを備えるデータセンタに対して、選択した前記１のデータセンタ内に当該所定のデータのレプリカを作成させる指示を送信する、
各処理を実行させることを特徴とする情報処理プログラム。
【請求項１２】
前記リクエストは、前記複数のデータセンタ各々の使用状況に関する情報の送信を要求するリクエストであることを特徴とする請求項１１に記載の情報処理プログラム。
【請求項１３】
起動時に処理が所定時間を超えた場合、自動的に、複数のデータセンタ各々にリクエストを送信し、当該リクエストに対する応答から、前記複数のデータセンタ各々と自装置との通信にかかるレイテンシを検出することを特徴とする請求項１１または１２に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
通信技術の発達に伴い、所定の場所に配置されるサーバ等に格納された情報に、状況に応じて、複数の異なる場所からユーザが情報端末を用いてアクセスすることが一般的になっている。また、クラウドコンピューティングやマイグレーションの技術により、一つのデータセンタ内に格納された情報を、処理負荷等に応じて他のデータセンタや自センタ内の別装置に移動させることも行われている。さらに、デスクトップ仮想化により、サーバ上で実行され保管されるプログラムや情報をあたかもクライアント装置側で実行しているかのように、クライアント装置が利用することが可能となっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−３１８７号公報
【特許文献２】特開２００６−７９３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、企業等において業務データをデータセンタ内のサーバに格納して利用する場合、通常、ユーザは社内から所定の情報処理装置を用いて業務データにアクセスすると考えられる。しかし、出張先等、通常のアクセス元とは異なる場所からユーザが携帯端末等を用いて業務データにアクセスすることもある。その場合、業務データが格納されたサーバと、携帯端末がネットワークに接続する地点との距離が、通常業務時とは変化する。このため、情報の取得に要する時間が長くなることが考えられる。
【０００５】
本発明は、一側面では、レイテンシの増加を抑制することができる情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
１つの態様では、情報処理システムは、複数のデータセンタのうち１のデータセンタに配置され所定のデータを格納するサーバを備える。また、情報処理システムは、サーバとネットワークを介して通信可能に接続される情報処理装置を備える。情報処理装置は、複数のデータセンタ各々に送信されたリクエストに対する応答から複数のデータセンタ各々との通信にかかるレイテンシを算出する。情報処理装置は、算出したレイテンシに基づきデータセンタを１つ選択する。情報処理装置は、１のデータセンタに配置されるサーバに対して、選択したデータセンタ内に当該所定のデータのレプリカを作成させる指示を送信する。サーバは、情報処理装置からの指示に応じて、レプリカを作成する。そして、サーバは、作成したレプリカを、情報処理装置が選択したデータセンタに送信する。
【発明の効果】
【０００７】
本発明の一側面によれば、レイテンシの増加を抑制することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施例１に係る情報処理システムのハードウェア構成を示す図である。
【図２】図２は、実施例１に係る情報処理装置の構成の一例を示す図である。
【図３】図３は、実施例１に係るレイテンシチェック結果のデータ構成の一例を示す図である。
【図４】図４は、実施例１に係るデータセンタリストのデータ構成の一例を示す図である。
【図５】図５は、実施例１に係るサーバの構成の一例を示す図である。
【図６】図６は、実施例１に係る情報処理方法の流れの一例を示すフローチャートである。
【図７】図７は、実施例１に係るデータセンタリスト作成処理の流れの一例を示すフローチャートである。
【図８】図８は、実施例１に係るレプリカ作成要否判定処理の流れの一例を示すフローチャートである。
【図９】図９は、実施例１に係るレプリカ作成処理の流れの一例を示すフローチャートである。
【図１０】図１０は、実施例１に係るレプリカ先との接続処理の流れの一例を示すフローチャートである。
【図１１】図１１は、実施例１に係る終了処理の流れの一例を示すフローチャートである。
【図１２】図１２は、実施例２に係る情報処理システムのハードウェア構成を示す図である。
【図１３】図１３は、実施例２に係るクライアント装置の構成の一例を示す図である。
【図１４】図１４は、実施例２に係るサーバの構成の一例を示す図である。
【図１５】図１５は、実施例２に係るデータセンタリスト作成処理の流れの一例を示すシーケンスチャートである。
【図１６】図１６は、実施例２に係るレプリカ作成要否判定処理の流れの一例を示すシーケンスチャートである。
【図１７】図１７は、実施例２に係るレプリカ作成処理の流れの一例を示すシーケンスチャートである。
【図１８】図１８は、実施例２に係るレプリカ先との接続処理の流れの一例を示すシーケンスチャートである。
【図１９】図１９は、実施例２に係る終了処理の流れの一例を示すシーケンスチャートである。
【図２０】図２０は、実施例２の変形例１におけるデータセンタリスト作成配布処理の流れの一例を示すシーケンスチャートである。
【図２１】図２１は、実施例２の変形例２に係るレプリカ先変更処理の流れの一例を示すシーケンスチャートである。
【図２２】図２２は、実施例２の変形例３に係るレプリカ作成後の再接続処理の流れの一例を示すシーケンスチャートである。
【図２３】図２３は、情報処理プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【０００９】
以下に、本願の開示する情報処理装置、情報処理システム、情報処理方法及び情報処理プログラムの実施例を図面に基づいて詳細に説明する。本実施例では、仮想マシンを提供する複数のデータセンタを含むデータセンタシステムに適用するものとする。なお、本実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１０】
［実施例１に係る情報処理システムの構成］
図１は、実施例１に係る情報処理システムのハードウェア構成を示す図である。図１に示すように、情報処理システム１は、情報処理装置１０と、データセンタ２０Ａ，２０Ｂ，２０Ｃ，２０Ｄと、を備える。データセンタ２０Ａ〜２０Ｄは各々、仮想マシン（ＶＭ:  Virtual  Machine）が構築されるサーバ３０Ａ〜３０Ｄと、ストレージ４０Ａ〜４０Ｄと、を有する。データセンタ２０Ａ〜２０Ｄは、ネットワーク５０を介して情報処理装置１０に接続される。また、データセンタ２０Ａ〜２０Ｄは、ネットワーク５０を介して相互に接続される。サーバ３０Ａ〜３０Ｄにはそれぞれ、仮想マシンＶＭ１，２、ＶＭ３，４、ＶＭ５，６、ＶＭ７，８が作成されている。なお、図１には４つのデータセンタを図示したが、データセンタの数は２つ以上であれば任意の数とすることができる。また、各データセンタが備えるサーバおよびストレージの数も限定されず、任意の数のサーバおよびストレージを備えてよい。また、各サーバが備える仮想マシンの数も限定されない。なお、実施例１においては、情報処理装置１０が利用するデータは、データセンタ２０Ａに格納されているものとする。
【００１１】
［情報処理装置の構成］
次に、実施例１に係る情報処理装置１０の構成について説明する。図２は、実施例１に係る情報処理装置の構成の一例を示す図である。情報処理装置１０は、たとえば、パーソナルコンピュータ（ＰＣ）、タブレットＰＣ等である。
【００１２】
図２に示すように、情報処理装置１０は、入力部１１０と、出力部１２０と、送受信部１３０と、記憶部１４０と、制御部１５０と、を有する。
【００１３】
入力部１１０は、情報の入力を受け付ける。入力部１１０は、たとえば、キーボード、マウス、タッチパネル等およびそれらから送信される入力信号を受信処理する回路である。
【００１４】
出力部１２０は、情報を出力する。出力部１２０は、たとえば、ディスプレイスクリーン、スピーカ等およびそれらに出力する信号を処理する回路である。出力部１２０は、音声、画像その他の媒体により情報を出力し、情報を出力するための信号を生成する。
【００１５】
送受信部１３０は、情報処理装置１０が接続されるネットワーク５０を介して情報を送受信する。送受信部１３０は、たとえば、データセンタ２０Ａ〜２０Ｄから当該データセンタに記憶される情報を受信する。また、送受信部１３０は、たとえば、レイテンシチェックコマンド（後述）等の指示をデータセンタ２０Ａ〜２０Ｄに送信する。
【００１６】
記憶部１４０は、各種のデータを記憶する記憶デバイスである。記憶部１４０は、たとえば、ハードディスク、ＳＳＤ（Solid  State  Drive）、光ディスクなどの記憶装置である。なお、記憶部１４０は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）などのデータを書き換え可能な半導体メモリであってもよい。
【００１７】
記憶部１４０は、制御部１５０で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。記憶部１４０は、たとえば、後述するレプリカ作成要否判定処理を実行するプログラムを含む各種のプログラムを記憶する。さらに、記憶部１４０は、制御部１５０で実行されるプログラムで用いられる各種データを記憶する。記憶部１４０は、たとえば、レイテンシチェック結果記憶領域１４１と、データセンタリスト記憶領域１４２と、を有する。
【００１８】
レイテンシチェック結果記憶領域１４１は、情報処理装置１０がデータセンタ２０Ａ〜２０Ｄとの通信にかかる遅延をチェックした結果であるレイテンシチェック結果を記憶する。レイテンシチェックは、情報処理装置１０がデータセンタ２０Ａ〜２０Ｄ内のサーバ３０Ａ〜３０Ｄにレイテンシチェックコマンドを送信し、サーバ３０Ａ〜３０Ｄから応答を受信することで実行される。レイテンシチェック結果は、たとえば、情報処理装置１０がレイテンシチェックコマンドを送信した日時や、データセンタからの応答を受信した日時等の情報を含む。レイテンシチェック結果は、情報処理装置１０とデータセンタとの間のレイテンシを特定できる情報であれば、形式は特に限定されない。
【００１９】
図３は、実施例１に係るレイテンシチェック結果のデータ構成の一例を示す図である。図３の例では、レイテンシチェック結果は、「コマンド送信元」、「ＤＣ  ＩＤ」、「コマンド送信日時」、「応答受信日時」、「レイテンシ」を含む。「コマンド送信元」は、レイテンシチェックコマンドを送信した情報処理装置１０を特定する情報である。「コマンド送信元」は、たとえば、情報処理装置１０のユーザのユーザ識別情報等でもよい。「ＤＣ  ＩＤ」は、レイテンシチェックコマンドの送信先であるデータセンタを一意に特定する識別子（Identifier）である。「コマンド送信日時」は、レイテンシチェックコマンドが送信された日時を特定する情報である。「応答受信日時」は、レイテンシチェックコマンドに応じてデータセンタが送信した応答を、情報処理装置１０が受信した日時を特定する情報である。「レイテンシ」は、レイテンシチェックコマンドの送信および応答受信により算出される、データセンタとの通信にかかる遅延である。
【００２０】
たとえば、図３の例では、「コマンド送信元、Ｍ００１」で特定される情報処理装置１０から、ＤＣ  ＩＤ「ＤＣ００１」、「ＤＣ００２」、「ＤＣ０１６」で特定されるデータセンタにレイテンシチェックコマンドが送信されたことが示されている。また、「ＤＣ  ＩＤ，ＤＣ００１」で特定されるデータセンタへのレイテンシチェックコマンドは、２０１６年１２月２０日の１７：００：００に送信されている。また、「ＤＣ  ＩＤ，ＤＣ００１」で特定されるデータセンタからの応答は、２０１６年１２月２０日の１７：００：００．１２０に受信されている。そして、レイテンシチェックの結果、算出されたレイテンシは「１２０ｍｓ」であることが示されている。
【００２１】
データセンタリスト記憶領域１４２は、情報処理装置１０が利用可能なデータセンタの一覧であるデータセンタリストを記憶する。たとえば、情報処理装置１０は、データセンタ２０Ａからデータセンタリストを取得する。図４は、実施例１に係るデータセンタリストのデータ構成の一例を示す図である。図４の例では、データセンタリストは、「ＤＣ  ＩＤ」と、「ＩＰアドレス」と、「位置情報」と、「最終更新日時」と、「使用状況」と、「応答有無」と、を含む。「ＤＣ  ＩＤ」は図３のレイテンシチェック結果に含まれる「ＤＣ  ＩＤ」と同様である。「ＩＰアドレス」は、データセンタを一意に特定するＩＰアドレスである。「ＩＰアドレス」は、たとえば、データセンタの管理サーバのＩＰアドレスである。実施例１では、「ＩＰアドレス」はデータセンタ２０Ａ〜２０Ｄに配置されるサーバ３０Ａ〜３０ＤのＩＰアドレスとする。「位置情報」は、データセンタの位置を示す情報である。「位置情報」は、たとえば、データセンタがある地点の緯度および経度である。「最終更新日時」は、当該データセンタについての情報が最後に更新された日時である。データセンタリストに含まれる情報は各データセンタから収集される。そこで、各データセンタにおいて最後に情報を更新した日時を「最終更新日時」として示す。「使用状況」は各データセンタの使用状況を示す。「使用状況」は、たとえば、各データセンタがビジー状態となる時間帯や曜日を示す。「応答有無」は、当該データセンタに対して使用状況を示す情報の送信を要求するリクエストが送信された際に応答があったか否かを示す。また、データセンタリストは、当該データセンタリストの最新更新日時の情報を含む。たとえば、図４の例に示すデータセンタリストは、最下段に「リスト最終更新日時:  2015/2/23  11:00  (GMT)」という情報を含む。これは、当該データセンタリストが最後に更新されたのは、２０１５年２月２３日、１１：００（グリニッジ標準時）であることを示す。
【００２２】
各データセンタ２０Ａ〜２０Ｄのサーバ３０Ａ〜３０Ｄは、所定のタイミングで自装置が配置されるデータセンタ内のリソースの使用状況をチェックして記憶する。そして、各サーバ３０Ａ〜３０Ｄは、所定のタイミングで、他のデータセンタ内のサーバに対して使用状況に関する情報の送信を要求するリクエストを送信する。各サーバ３０Ａ〜３０Ｄは、リクエストに応答して他のサーバから取得した情報を統合してデータセンタリストを作成する。
【００２３】
図２に戻り、制御部１５０は、情報処理装置１０を制御するデバイスである。制御部１５０としては、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路を採用できる。制御部１５０は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部１５０は、各種のプログラムが動作することにより各種の処理部として機能する。制御部１５０は、たとえば、検出部１５１、選択部１５２および指示部１５３を有する。
【００２４】
情報処理装置１０は、データセンタ２０Ａにアクセスして情報を利用する場合に、利用可能な各データセンタ２０Ａ〜２０Ｄへの通信にかかるレイテンシをチェックする。そして、情報処理装置１０は、レイテンシのチェック結果に基づき、データセンタ間でデータのマイグレーションを行わせて、利用するデータのレプリカをレイテンシが最も低いデータセンタに作成させる。そして、情報処理装置１０はレプリカを利用して処理を実行する。
【００２５】
検出部１５１は、各データセンタ２０Ａ〜２０Ｄとの通信にかかるレイテンシを検出する。また、検出部１５１は、レイテンシを検出するための情報を取得する。検出部１５１は、たとえば、データセンタ２０Ａ〜２０Ｄ内のサーバ３０Ａ〜３０Ｄに対してレイテンシチェックコマンドを送信し、レイテンシチェックコマンドに対する応答を受信する。検出部１５１は、たとえば、各データセンタ内のサーバにレイテンシチェックコマンドを送信した日時と、応答を受信した日時に関する情報を取得する。検出部１５１が取得したレイテンシを検出するための情報は、レイテンシチェック結果記憶領域１４１に記憶される。
【００２６】
検出部１５１は、取得した情報に基づき、各データセンタとの通信にかかるレイテンシを検出する。検出部１５１が検出したレイテンシは、各データセンタに対応づけてレイテンシチェック結果記憶領域１４１に記憶される。
【００２７】
選択部１５２は、検出部１５１が検出したレイテンシを比較して、レイテンシが最も低いデータセンタを選択する。
【００２８】
指示部１５３は、情報処置装置１０が使用するデータを格納するデータセンタ２０Ａに、データのレプリカを選択したデータセンタに配置するための指示を送信する。
【００２９】
［サーバの構成の一例］
図５は、実施例１に係るサーバの構成の一例を示す図である。図５の例では、データセンタ２０Ａが備えるサーバ３０Ａを例として説明する。ただし、各データセンタ２０Ａ〜２０Ｄが備えるサーバ３０Ａ〜３０Ｄの構成は同様である。
【００３０】
図５に示すように、サーバ３０Ａは、入力部３１０Ａと、出力部３２０Ａと、送受信部３３０Ａと、記憶部３４０Ａと、制御部３５０Ａと、を有する。
【００３１】
入力部３１０Ａは、情報の入力を受け付ける。入力部３１０Ａは、たとえば、キーボード、マウス、タッチパネル等およびそれらから送信される入力信号を受信処理する回路である。
【００３２】
出力部３２０Ａは、情報を出力する。出力部３２０Ａは、たとえば、ディスプレイスクリーン、スピーカ等およびそれらに出力する信号を処理する回路である。出力部３２０Ａは、音声、画像その他の媒体により情報を出力し、情報を出力するための信号を生成する。
【００３３】
送受信部３３０Ａは、サーバ３０Ａが接続されるネットワークを介して情報を送受信する。送受信部３３０Ａは、たとえば、情報処理装置１０からレイテンシチェックコマンドを受信し、レイテンシチェックコマンドに対する応答を送信する。また、送受信部３３０Ａは、他のデータセンタ２０Ｂ〜２０Ｄのサーバ３０Ｂ〜３０Ｄに対して、データセンタの使用状況を示す情報の送信を要求するリクエストを送信する。送受信部３３０Ａは、他のデータセンタ２０Ｂ〜２０Ｄから、各データセンタの使用状況を示す情報を受信する。
【００３４】
記憶部３４０Ａは、各種のデータを記憶する記憶デバイスである。記憶部３４０Ａは、たとえば、ハードディスク、ＳＳＤ（Solid  State  Drive）、光ディスクなどの記憶装置である。なお、記憶部３４０Ａは、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）などのデータを書き換え可能な半導体メモリであってもよい。
【００３５】
記憶部３４０Ａは、制御部３５０Ａで実行されるＯＳ（Operating  System）や各種プログラムを記憶する。記憶部３４０Ａは、たとえば、後述するレプリカ作成処理や終了処理を実行するプログラムを含む各種のプログラムを記憶する。さらに、記憶部３４０Ａは、制御部３５０Ａで実行されるプログラムで用いられる各種データを記憶する。記憶部３４０Ａは、たとえば、レイテンシチェック結果記憶領域３４１Ａと、データセンタリスト記憶領域３４２Ａと、を有する。
【００３６】
レイテンシチェック結果記憶領域３４１Ａは、情報処理装置１０から受信したレイテンシチェック結果を記憶する。レイテンシチェック結果記憶領域３４１Ａに記憶される情報の構成は、図３に示したものと同様である。
【００３７】
データセンタリスト記憶領域３４２Ａは、各データセンタの使用状況に関する情報を記憶する。データセンタリスト記憶領域３４２Ａに記憶される情報の構成は、図４に示したものと同様である。
【００３８】
制御部３５０Ａは、サーバ２０Ａを制御するデバイスである。制御部３５０Ａとしては、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路を採用できる。制御部３５０Ａは、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部３５０Ａは、各種のプログラムが動作することにより各種の処理部として機能する。制御部３５０Ａは、たとえば、データセンタリスト作成部３５１Ａ、レプリカ作成部３５２Ａ、切替制御部３５３Ａ、終了処理部３５４Ａを有する。
【００３９】
なお、以下の説明において、サーバ３０Ｂ〜３０Ｄはそれぞれ、入力部３１０Ｂ〜Ｄ、
出力部３２０Ｂ〜Ｄ、送受信部３３０Ｂ〜Ｄ、記憶部３４０Ｂ〜Ｄ、制御部３５０Ｂ〜Ｄを有するものとする。各部の構成は、サーバ３０Ａが有する構成要素と同様である。また、サーバ３０Ｂ〜３０Ｄの記憶部３４０Ｂ〜Ｄはそれぞれ、レイテンシチェック結果記憶領域３４１Ｂ〜Ｄと、データセンタリスト記憶領域３４２Ｂ〜Ｄを有する。各部の構成は、サーバ３０Ａと同様である。また、サーバ３０Ｂ〜３０Ｄの制御部３４０Ｂ〜Ｄはそれぞれ、データセンタリスト作成部３５１Ｂ〜Ｄ、レプリカ作成部３５２Ｂ〜Ｄ、切替制御部３５３Ｂ〜Ｄ、終了処理部３５４Ｂ〜Ｄを有する。各部の構成および機能はサーバ３０Ａと同様である。
【００４０】
データセンタリスト作成部３５１Ａは、データセンタ２０Ａ〜２０Ｄの使用状況に関する情報を取得する。データセンタリスト作成部３５１Ａは、たとえば、所定のタイミングで、データセンタ２０Ｂ〜２０Ｄに使用状況に関する情報を送信させるためのリクエストを送信する。そして、データセンタリスト作成部３５１Ａは、リクエストに対する応答に基づき、データセンタリストを作成する。これによって、データセンタリスト作成部３５１Ａは、情報処理システム１に含まれるデータセンタ２０Ａ〜２０Ｄの使用状況を示すリストを作成する。データセンタリスト作成部３５１Ａにより作成されたデータセンタリストは、データセンタリスト記憶領域３４２Ａに記憶される。
【００４１】
レプリカ作成部３５２Ａは、情報処理装置１０から送信される指示に基づき、データセンタ２０Ａ内に格納されているデータのレプリカを作成する。レプリカの作成対象となるデータは、たとえば、サーバ３０Ａに格納されていてもストレージ４０Ａに格納されていてもよい。レプリカ作成部３５２Ａは、ストリーミングデータのようにレイテンシによる影響が少ない種類のデータは、レイテンシの影響が大きい種類のデータよりも、レプリカ作成の優先度を低く設定する。ストリーミングデータか否かは拡張子に基づいて判定すればよい。また、レプリカ作成部３５２Ａは、アクセス頻度の高いデータのレプリカ作成の優先度をアクセス頻度の低いデータよりも高く設定する。そして、レプリカ作成部３５２Ａは、設定した優先度に応じた順番でレプリカを作成する。
【００４２】
また、レプリカ作成部３５２Ａは、情報処理装置１０から送信される指示に基づき、レプリカ先となるデータセンタ２０Ｂのサーバ３０Ｂに仮想マシンの作成リクエストを送信する。そして、レプリカ作成部３５２Ａは、レプリカ先のサーバ３０Ｂ（レプリカ作成部３５２Ｂ）から仮想マシンの作成完了通知を受信すると、レプリカ元のデータの送信を開始する。レプリカ作成部３５２Ａは、ストリーミングデータのようにレイテンシによる影響が少ない種類のデータは、レイテンシの影響が大きい種類のデータよりも後から送信する。また、レプリカ作成部３５２Ａは、レプリカ元のデータのうち、アクセス頻度が高いファイルを先に送信し、アクセス頻度が低いファイルは後から送信する。
【００４３】
また、レプリカ作成部３５２Ａは、レプリカを配置するための仮想マシンの作成リクエストを他のデータセンタたとえばデータセンタ２０Ｂ（サーバ３０Ｂ）から受信する。そして、受信した作成リクエストに基づき、レプリカ作成部３５２Ａは、自センタ内に仮想マシンを作成し、作成が完了すると作成リクエストの送信元であるサーバ３０Ｂに作成完了通知を送信する。また、レプリカ作成部３５２Ａは、作成完了通知送信後、作成リクエストの送信元サーバ３０Ｂから送信されるレプリカ元のデータを順次受信して、自センタ内に格納する。そして、レプリカ作成部３５２Ａは、レプリカ元のデータの受信を開始すると、仮想マシンの作成リクエストの送信元であるサーバ３０Ｂに、レプリカ先に接続するための接続先の情報を送信する。レプリカ作成部３５２Ａは、その後もバックグラウンドでレプリカ元のデータの受信を継続する。また、レプリカ作成部３５２Ａは、接続先の情報を送信した旨を、切替制御部３５３Ａに通知する。
【００４４】
また、レプリカ作成部３５２Ａは、レプリカを配置するための仮想マシンの作成リクエストを送信した場合は、レプリカ先のサーバたとえばサーバ３０Ｂから受信したレプリカ先に接続するための接続先の情報を、情報処理装置１０に送信する。情報処理装置１０は、受信した接続先情報を用いて、レプリカ先にアクセスする。
【００４５】
切替制御部３５３Ａは、情報処理装置１０からレプリカへのアクセスを制御する。切替制御部３５３Ａは、たとえば、レプリカ先にすべてのレプリカデータがまだ格納されていない場合には、情報処理装置１０を、レプリカ先を経由してレプリカ元にアクセスさせる。
【００４６】
終了処理部３５４Ａは、データセンタ２０Ａに格納されたデータのレプリカを作成して他のデータセンタに移動させた後、レプリカを利用した通信処理を終了する終了処理を実行する。終了処理部３５４Ａは、たとえば、レプリカに所定時間以内にアクセスがあったか否かを判定する。所定時間以内にアクセスがあったと判定した場合、終了処理部３５４Ａは、終了処理を終了する。他方、所定時間以内にアクセスがなかったと判定した場合、終了処理部３５４Ａは、レプリカ元のデータセンタにレプリカ先とレプリカ元のデータとの差分を送信してレプリカ元のデータを更新させる。その後、レプリカ先として作成されていた仮想マシンおよびデータを削除する。削除が完了すると、終了処理部３５４Ａはレプリカ元のデータセンタにその旨を通知する。終了処理は、たとえば、予め定められた所定のタイミング、たとえば１日に１回所定の時刻に行う。
【００４７】
［実施例１に係る情報処理方法の流れの一例］
次に、実施例１に係る情報処理システム１における情報処理の流れについて説明する。図６は、実施例１に係る情報処理方法の流れの一例を示すフローチャートである。図６には、実施例１の情報処理システム１において実行される処理の流れを概括的に示す。
【００４８】
まず、データセンタ２０Ａのデータセンタリスト作成部３５１Ａは、各データセンタ２０Ａ〜２０Ｄの使用状況に関する情報を取得してデータセンタリストを作成する（ＤＣリスト作成処理、ステップＳ６０１）。情報処理装置１０は、レイテンシが低いデータセンタを利用するため、各データセンタのレイテンシをチェックするレイテンシチェックを実行する。そして、情報処理装置１０は、データセンタ２０Ａに格納されているデータのレプリカを他のデータセンタに配置するか否かの判定を実行する（レプリカ作成要否判定処理、ステップＳ６０２）。レプリカ作成要否判定処理の結果、レプリカを配置させない、と判定された場合（ステップＳ６０３、Ｎｏ）、情報処理装置１０は、元ＤＣすなわちデータセンタ２０Ａのサーバ３０Ａとの接続処理を実行する（ステップＳ６０４）。そして、処理が終了してサーバ３０Ａへのアクセスを終了すると判定すると（ステップＳ６０５、Ｙｅｓ）、情報処理装置１０は、サーバ３０Ａとの接続を切断する処理を実行して処理を終える（ステップＳ６０６）。他方、サーバ３０Ａへのアクセスを終了しないと判定した場合（ステップＳ６０５、Ｎｏ）は、情報処理装置１０は、サーバ３０Ａとの接続を維持して処理を継続する。
【００４９】
レプリカ作成要否判定処理の結果、レプリカを配置させる、と判定された場合（ステップＳ６０３、Ｙｅｓ）、情報処理装置１０は、データセンタ２０Ａにレプリカ作成リクエストを送信する。そして、データセンタ２０Ａとレプリカ先として選択されたデータセンタ間でレプリカ作成処理が実行される（レプリカ作成処理、ステップＳ６０７）。レプリカ先の接続先情報を受信すると、情報処理装置１０は、通知されたレプリカ先と接続して処理を実行する（ステップＳ６０８）。そして、レプリカ先において情報処理装置１０による処理を終了するか否かの判定が実行される（ステップＳ６０９）。処理を終了すると判定した場合（ステップＳ６０９、Ｙｅｓ）、レプリカ先と元ＤＣとの間でデータの齟齬が生じないよう、データ内容を更新した上で、レプリカ先のデータを削除する終了処理が実行される（ステップＳ６１０）。他方、処理を終了しないと判定した場合は（ステップＳ６０９、Ｎｏ）、そのままレプリカが維持され、ステップＳ６０９の判定が繰り返される。以上で、実施例１に係る情報処理方法による処理が終了する。
【００５０】
［データセンタリスト作成処理の流れの一例］
図６のステップＳ６０１に示したデータセンタリスト作成処理についてさらに説明する。図７は、実施例１に係るデータセンタリスト作成処理の流れの一例を示すフローチャートである。図７の例は、データセンタ２０Ａのサーバ３０Ａが処理を実行する場合を例として説明する。
【００５１】
まず、データセンタ２０Ａのサーバ３０Ａのデータセンタリスト作成部３５１Ａは、自センタ内のリソースの使用状況に関する情報を収集する。また、データセンタリスト作成部３５１Ａは、所定のタイミングになると、他のデータセンタ２０Ｂ〜２０Ｄに対して、使用状況に関する情報の送信を依頼するリクエストを送信する（ステップＳ７０１）。そして、データセンタリスト作成部３５１Ａは、各データセンタ２０Ｂ〜２０Ｄから使用状況に関する情報を受信する（ステップＳ７０２）。データセンタリスト作成部３５１Ａは、自センタの情報と、受信した情報とを基に、データセンタリスト記憶領域３４２Ａに記憶されるデータを更新する（ステップＳ７０３）。以上でデータセンタリスト作成処理は終了する。
【００５２】
［レプリカ作成要否判定処理の流れの一例］
図６のステップＳ６０２に示したレプリカ作成要否判定処理についてさらに説明する。図８は、実施例１に係るレプリカ作成要否判定処理の流れの一例を示すフローチャートである。
【００５３】
まず、情報処理装置１０は、情報処理システム１において利用している情報にアクセスする場合、データセンタリストの送信を要求するリクエストをデータセンタ２０Ａに送信する（ステップＳ８０１）。ここでは、リクエストの送信先は、情報処理システム１を利用する情報処理装置１０に対して予め設定されているものとする。たとえば、情報処理装置１０が利用する情報が格納されているデータセンタ２０Ａが、予めリクエストの送信先として設定されているものとする。
【００５４】
そして、情報処理装置１０は、データセンタ２０Ａからデータセンタリストを受信する（ステップＳ８０２）。受信したデータセンタリストは、データセンタリスト記憶領域１４２に記憶される。検出部１５１は、データセンタリストを参照して、レイテンシをチェックする対象とするデータセンタを決定する。つまり、検出部１５１は、レイテンシチェックコマンドの送信先を決定する（ステップＳ８０３）。検出部１５１は、レイテンシチェックコマンドの送信先を、たとえば、データセンタと情報処理装置１０の現在位置との距離に基づいて決定する。たとえば、検出部１５１は、情報処理装置１０の現在位置に近いデータセンタを所定数選択して送信先と決定する。たとえば、検出部１５１は、データセンタリストに含まれる「位置情報」と、情報処理装置１０の測位機能により測定される現在位置と、を比較して送信先を決定する。検出部１５１は、データセンタリストに含まれるすべてのデータセンタを送信先と決定してもよい。
【００５５】
そして、検出部１５１は、決定した送信先にレイテンシチェックコマンドを送信する（ステップＳ８０４）。レイテンシチェックコマンドを受信したデータセンタ側ではリクエストに対する応答を情報処理装置１０に送信する。検出部１５１は、応答を受信して（ステップＳ８０５）、レイテンシチェック結果記憶領域１４１に記憶されるレイテンシチェック結果を更新する。また、検出部１５１は、取得した情報に基づき、レイテンシを検出してレイテンシチェック結果を更新する。そして、選択部１５２は、レイテンシチェック結果に基づき、レイテンシが最も低いデータセンタを選択する（ステップＳ８０６）。選択部１５２は、たとえば、データセンタリストの使用状況を参照して、使用率が低いデータセンタの中からレイテンシが最も低いデータセンタを選択する。情報処理装置１０は、選択したデータセンタが実際に利用可能か否かをチェックするため、試験的にアクセスするアクセステストを行う（ステップＳ８０７）。選択部１５２がデータセンタを選択すると、たとえば、送受信部１３０から当該データセンタにコマンドを送信してアクセスを試みる。アクセステストが失敗した場合（ステップＳ８０７、Ｎｏ）、選択部１５２は、レイテンシチェック結果を参照して、次にレイテンシが低いデータセンタを選択し直す（ステップＳ８０８）。そして、選択部１５２の選択に応じて、送受信部１３０から再びコマンドを送信し、アクセステストを実行する（ステップＳ８０７）。アクセステストが成功した場合（ステップＳ８０７、Ｙｅｓ）、選択部１５２は、選択したデータセンタのレイテンシと、元ＤＣとの間でのレイテンシの平均値と、の差が所定値以上か否かを判定する（ステップＳ８０９）。この判定を実行するのは、レイテンシの差がさほどない場合、レプリカの作成による処理速度の向上よりもレプリカ作成等に要する手間の影響が大きくなる可能性があるためである。レイテンシの差が所定値以上であると判定した場合（ステップＳ８０９、Ｙｅｓ）、選択部１５２は、レプリカ作成処理を実行するよう、元ＤＣに指示を送信する。そして、サーバ３０Ａにおいて、レプリカ作成部３５２Ａがレプリカ作成処理を実行する（ステップＳ８１０）。他方、レイテンシの差が所定値未満であると判定した場合（ステップＳ８０９、Ｎｏ）、選択部１５２は、レプリカ作成処理は指示しない。選択部１５２は、データセンタを選択しない旨を送受信部１３０に通知し、送受信部１３０は、元ＤＣに対して通常の接続処理のための接続リクエストを送信し、通常の接続処理を開始する（ステップＳ８１１）。これで、レプリカ作成要否判定処理が終わる。
【００５６】
［レプリカ作成処理］
次に、図６のステップＳ６０７に示したレプリカ作成処理についてさらに説明する。図９は、実施例１に係るレプリカ作成処理の流れの一例を示すフローチャートである。まず、図９の左側に示すレプリカ元のサーバにおける処理を説明する。ここではレプリカ元のサーバをサーバ３０Ａとする。
【００５７】
まず、データセンタ２０Ａのレプリカ作成部３５２Ａは、情報処理装置１０からレプリカ作成リクエストを受信する。レプリカ作成リクエストは、レプリカを作成するレプリカ先となるデータセンタを特定する情報と、レイテンシチェック結果と、を含む。レプリカ作成リクエストは、情報処理装置１０の位置情報を含んでもよい。ここでは、データセンタ２０Ｂにレプリカを作成するものとする。レプリカ作成部３５２Ａは、レプリカ作成リクエストに基づき、レプリカ先データセンタ２０Ｂのサーバ３０Ｂに仮想マシンの作成指示を送信する（ステップＳ９０１）。作成指示を受信したサーバ３０Ｂのレプリカ作成部３５２Ｂでは、指示に基づき、仮想マシンを作成し、作成が完了するとデータセンタ２０Ａにその旨通知する。データセンタ２０Ａのレプリカ作成部３５２Ａは、作成完了通知を受信すると（ステップＳ９０２）、レプリカのコピーを開始する（ステップＳ９０３）。
【００５８】
レプリカ作成部３５２Ａは、コピー済みのデータ量が所定の閾値を超えたか否かを判定する（ステップＳ９０４）。所定の閾値以下と判定した場合、レプリカ作成部３５２Ａはそのままコピーを継続する。所定の閾値を超えたと判定した場合、レプリカ作成部３５２Ａは、レプリカの作成が完了したとして、レプリカ作成完了を知らせる通知をレプリカ先に送信する（ステップＳ９０５）。さらに、レプリカ作成部３５２Ａは、レプリカ先からレプリカ先へアクセスするための接続先情報を受信する（ステップＳ９０６）。そして、レプリカ作成部３５２Ａは、情報処理装置１０にレプリカ先の接続先情報を送信する（ステップＳ９０７）。以上で、レプリカ元におけるレプリカ作成処理は終了する。
【００５９】
なお、レプリカ作成部３５２Ａは、レプリカ作成完了通知後も、バックグラウンドでデータのコピーを継続する。しかし、所定の閾値を超える量のデータがレプリカ先に配置された時点で、情報処理装置１０からレプリカ先へのアクセスを可能にしてユーザ側からみた処理速度を向上させる。情報処理装置１０からのアクセスは、アクセス先データがレプリカ先にまだ配置されていない場合、元ＤＣ内のデータにリンクされる。
【００６０】
また、レプリカ作成部３５２Ａは、レプリカを作成するデータのうち、アクセス頻度が高いデータのレプリカを優先的に作成する。また、レプリカ作成部３５２Ａは、ストリーミングデータのレプリカ作成の優先度は低く設定する。
【００６１】
次に、図９の右側に示すレプリカ先のサーバでの処理を説明する。ここではレプリカ先のサーバをサーバ３０Ｂとする。
【００６２】
まず、レプリカ先のサーバ３０Ｂのレプリカ作成部３５２Ｂは、仮想マシンの作成指示を受信する（ステップＳ９１０）。そして、指示に基づき、レプリカ作成部３５２Ｂは仮想マシンを作成する（ステップＳ９１１）。仮想マシンの作成が完了すると、レプリカ作成部３５２Ｂは、レプリカ元に作成完了通知を送信する（ステップＳ９１２）。そして、レプリカ作成部３５２Ｂは、レプリカデータの受信を開始する（ステップＳ９１３）。さらに、レプリカ作成部３５２Ｂは、レプリカ作成完了通知を受信する（ステップＳ９１４）。レプリカ作成完了通知を受信すると、レプリカ作成部３５２Ｂは、レプリカ元に、レプリカにアクセスするための接続先情報を送信する。そして以後、切替制御部３５３Ｂがレプリカへのアクセスを制御する（ステップＳ９１５）。以後、レプリカ作成部３５２Ｂはすべてのレプリカデータを受信して格納するまでバックグラウンドでレプリカの受信を継続する（ステップＳ９１６）。そして、レプリカの受信が完了すると処理が終了する。
【００６３】
［レプリカ先との接続処理の流れの一例］
図６のステップＳ６０８に示したレプリカ先との接続処理についてさらに説明する。図１０は、実施例１に係るレプリカ先との接続処理の流れの一例を示すフローチャートである。ここでは、データセンタ２０Ｂがレプリカ先であるとする。
【００６４】
レプリカ先との接続処理は、レプリカ元のデータセンタ２０Ａにおいてレプリカ作成部３５２Ａが接続先情報を受信したのちに開始する。まず、レプリカ作成部３５２Ａが接続先情報を受信すると、情報処理装置１０にレプリカ先の接続先情報が送信される。接続先情報を受信（ステップＳ１００１）した情報処理装置１０は、接続先情報に基づき、レプリカ先のデータセンタ２０Ｂに接続要求を送信する（ステップＳ１００２）。レプリカ先のデータセンタ２０Ｂでは、情報処理装置１０の接続要求に応じて、仮想マシンが起動し、起動した旨を情報処理装置１０に通知する（ステップＳ１００３）。そして、情報処理装置１０は仮想マシンにアクセスして処理を実行する（ステップＳ１００４）。その後、処理が完了すれば（ステップＳ１００５、Ｙｅｓ）、接続が切断される（ステップＳ１００６）。処理が完了するまでは（ステップＳ１００５、Ｎｏ）、接続が維持される。
【００６５】
［終了処理の流れの一例］
図６のステップＳ６１０に示した終了処理についてさらに説明する。図１１は、実施例１に係る終了処理の流れの一例を示すフローチャートである。ここでは、レプリカ元データセンタをデータセンタ２０Ａ、レプリカ先データセンタをデータセンタ２０Ｂとする。
【００６６】
データセンタ２０Ｂにおいて、終了処理部３５４Ｂは、前回の終了処理から所定時間経過したか否かを判定する（ステップＳ１１０１）。所定時間経過していないと判定する（ステップＳ１１０１、Ｎｏ）と、終了処理部３５４Ｂは、ステップＳ１１０１の判定を繰り返す。他方、所定時間経過したと判定すると（ステップＳ１１０１、Ｙｅｓ）、終了処理部３５４Ｂは、データセンタ２０Ｂ内にレプリカが存在するか否かを判定する（ステップＳ１１０２）。レプリカなしと判定した場合（ステップＳ１１０２、Ｎｏ）、終了処理部３５４Ｂは、処理を終了する。他方、レプリカありと判定した場合（ステップＳ１１０２、Ｙｅｓ）、終了処理部３５４Ｂは、当該レプリカに所定時間以内にアクセスがあったか否かを判定する（ステップＳ１１０３）。所定時間以内にアクセスありと判定した場合（ステップＳ１１０３、Ｙｅｓ）、終了処理部３５４Ｂは、処理を終了する。他方、所定時間以内にアクセスなしと判定した場合（ステップＳ１１０３、Ｎｏ）、終了処理部３５４Ｂは、レプリカ先のデータに生じた差分が、レプリカ元に反映されているか否かをチェックする。そして、差分データが存在している場合には、終了処理部３５４Ｂは、レプリカ元に差分データを送信してデータを更新させる（ステップＳ１１０４）。そして、終了処理部３５４Ｂは、データセンタ２０Ｂ内にレプリカ用に作成された仮想マシンとデータとを削除する（ステップＳ１１０５）。削除が完了すると、終了処理部３５４Ｂは、その旨をレプリカ元のデータセンタ２０Ａに通知する（ステップＳ１１０６）。これで終了処理が完了する。
【００６７】
［変形例１−レイテンシチェック実行の制限］
上述の実施例において、レプリカ要否判定処理をどのような場面で実行するかは特に限定されない。情報処理装置１０は、起動時に常にレプリカ作成要否判定処理を実行するものとしてもよい。また、情報処理装置１０は、起動時に、データセンタ２０Ａとのレイテンシをチェックするように構成してもよい。そして、情報処理装置１０は、データセンタ２０Ａとのレイテンシが所定の閾値を超える場合にのみ、図８に示したレプリカ作成要否判定処理を実行するものとしてもよい。情報処理装置１０は、たとえば、データセンタ２０Ａにアクセスしてログイン画面の表示が所定時間を超えた場合、自動的に検出部１５１が図８に示すレプリカ作成要否判定処理を開始するよう構成してもよい。
【００６８】
［変形例２−データをロックするタイミング］
上述の実施例では、レプリカ先のデータは終了処理時に削除するものとした。これに限らず、レプリカ元のデータのロックを解除して差分を反映したのち、所定期間はレプリカ先をロックするように構成してもよい。そして、レプリカ元のデータとレプリカ先のデータとの間の整合性が確認された後に、レプリカ先のデータを削除するものとしてもよい。
【００６９】
［変形例３−情報処理装置の位置特定に基づく終了処理］
上述の実施例では、レプリカに所定時間にわたってアクセスがない場合に終了処理を実行するものとした。これに限らず、レプリカに遠隔地からのアクセスがあった場合に終了処理を実行するものとしてもよい。
【００７０】
たとえば、情報処理装置１０がデータセンタ２０Ａ〜２０Ｄにアクセスする場合は必ず、情報処理装置１０の位置情報を送信させるように構成する。情報処理装置１０がデータセンタ２０Ａにアクセスしたとき、サーバ３０Ａは、受信した位置情報に基づき、情報処理装置１０とデータセンタ２０Ａとの距離を算出する。データセンタ２０Ａでは、情報処理装置１０がアクセス先として指定している情報に対するレプリカが作成されているか否かを判定する。また、データセンタ２０Ａは、情報処理装置１０とレプリカのあるデータセンタとの距離が所定の閾値を超えているか否かを判定する。そして、データセンタ２０Ａは、距離が所定の閾値を超えていると判定した場合には、終了処理を開始する。
【００７１】
このように構成することで、情報処理装置１０のユーザが移動した場合に、適宜レプリカを移動させてレイテンシの増加を抑制して情報処理を実行することができる。
【００７２】
また、終了処理時には、レプリカ先のデータをロックした上で、差分データの反映を行うようにしてもよい。そして、レプリカ元のデータが更新されたことを確認した上で、レプリカ先のデータのロックを解除して削除するようにしてもよい。
【００７３】
［実施例１の効果］
上記のように構成した実施例１にかかる情報処理システムは、複数のデータセンタのうち１のデータセンタに配置され所定のデータを格納するサーバを備える。また、情報処理システムは、サーバとネットワークを介して通信可能に接続される情報処理装置を備える。情報処理装置は、選択部と、指示部とを備える。そして、選択部は、複数のデータセンタ各々に送信されたリクエストに対する応答から検出した、複数のデータセンタ各々との通信にかかるレイテンシに基づき、複数のデータセンタのうちデータセンタを１つ選択する。そして、指示部は、１のデータセンタに配置されるサーバに対して、選択したデータセンタ内に所定のデータのレプリカを作成させる指示を送信する。サーバは、指示部からの指示に応じて、レプリカを作成するレプリカ作成部を備える。また、レプリカ作成部は、作成したレプリカを、選択部が選択したデータセンタに送信する。このため、レイテンシの増加を抑制することができる。たとえば、ユーザが情報処理装置を用いてクラウドサーバに格納された情報にアクセスする場合に、アクセスする地点の変化による処理速度の低下を抑制することができる。また、レイテンシに基づいてデータの格納場所を調整し、ユーザから見た場合の処理速度を向上させることができる。したがって、ユーザが、レプリカ元のサーバから離れた場所にいても、距離の影響を感じることなく、迅速な処理を実現することができる。
【００７４】
また、実施例１にかかる情報処理システムにおいて、選択部は、レイテンシが最も低いデータセンタを選択する。このため、ユーザが情報処理装置を用いてクラウドサーバに格納された情報にアクセスする場合に、アクセスする地点の変化によるレイテンシの増加を抑制することができる。また、レイテンシに基づいてデータの格納場所を調整し、ユーザから見た場合の処理速度を向上させることができる。したがって、ユーザが、レプリカ元のサーバから離れた場所にいても、距離の影響を感じることなく、迅速な処理を実現することができる。
【００７５】
また、実施例１に係る情報処理システムにおいて、選択部は、複数のデータセンタ各々の使用状況に関する情報に基づき、使用率が低いデータセンタのうち、最もレイテンシが低いデータセンタを選択する。このため、データセンタの使用状況も加味してレイテンシが低いデータセンタを選択でき、ユーザから見た処理効率を向上させることができる。
【００７６】
また、実施例１に係る情報処理システムにおいて、選択部は、１のデータセンタのレイテンシと、所定のデータを格納するデータセンタのレイテンシと、の差が所定値以上である場合に、１のデータセンタを選択する。このため、データのレプリカを作成することによる処理効率の向上が期待できない場合を除外してレプリカを作成することができ、ユーザから見た処理効率を向上させることができる。  
【００７７】
また、実施例１に係る情報処理システムにおいて、サーバは、情報処理装置の指示部からの指示に応じて、レプリカを作成し、作成したレプリカを、選択部が選択したデータセンタに送信するレプリカ作成部を備える。また、実施例１に係る情報処理システムにおいて、サーバが備えるレプリカ作成部は、レプリカを、アクセス頻度の高いファイルから順に選択部が選択したデータセンタに送信する。このため、ユーザがアクセスする可能性が高いデータのレプリカを先に作成することができ、ユーザから見た処理効率を向上させることができる。
【００７８】
また、実施例１に係るレプリカ作成部は、レプリカの送信の完了前に、選択したデータセンタに作成されるレプリカへの接続のための情報を情報処理装置に送信する。また、レプリカ作成部は、情報処理装置がレプリカへの接続を開始したのちも、バックグラウンドでレプリカの送信を継続する。このため、レプリカを利用する情報処理装置のユーザは、レプリカが作成されることによる処理速度の遅れ等を感じることなく、スムーズに情報処理を実行することができる。
【００７９】
また、実施例１に係る情報処理システムにおいて、サーバは、複数のデータセンタのうち１のデータセンタ以外のデータセンタから、当該データセンタの使用状況に関する情報を取得してデータセンタリストを作成する作成部をさらに備える。また、情報処理装置が備える選択部は、サーバからデータセンタの使用状況に関する情報を取得して、当該情報とレイテンシに基づきデータセンタを１つ選択する。このため、情報処理装置は、データセンタの使用状況に関する情報を適宜取得した上で、使用状況に関する情報に基づきデータセンタを選択することができる。このため、状況の変化に適応したデータセンタの選択を実現できる。
【００８０】
また、実施例１に係る情報処理システムにおいて、サーバのレプリカ作成部は、情報処理装置から指示されたデータセンタにレプリカを作成できないと判定した場合、他のデータセンタをレプリカ先として選択する。レプリカ作成部は、たとえば、情報処理装置の選択部が選択したデータセンタ以外のデータセンタであって、データセンタリストに含まれるデータセンタの一つをレプリカ先として選択する。このため、情報処理装置がレプリカ先を選択した後に、なんらかの事情により選択されたレプリカ先を使用できなくなった場合でも、レプリカ先を迅速に選択し直して処理を継続することができる。
【００８１】
また、実施例１に係る情報処理システムにおいて、サーバは、レプリカの作成後所定期間にわたってレプリカにアクセスがない場合、当該レプリカを削除する終了処理部をさらに備える。このため、情報処理装置のユーザが移動することによって、いったん作成したレプリカが不要になった場合に、迅速にレプリカを削除してレプリカ元のデータ利用を再開することができる。
【実施例２】
【００８２】
［実施例２に係る情報処理システムの構成の一例］
実施例１として説明した情報処理システムは、種々のシステムに適用することができる。たとえば、業務データが所定のサーバに格納されており、通常は当該サーバの近傍からユーザが業務データにアクセスするが、出張等により遠隔地からユーザがアクセスすることがあるシステムであれば、上記実施例を任意のシステムに適用できる。上記実施例は、たとえば、リモートファイルシステムにアクセスする場合や、仮想デスクトップインフラストラクチャ（ＶＤＩ：Virtual  Desktop  Infrastructure）を利用する場合に適用できる。そこで、以下に実施例２として、ＶＤＩを利用する場合を説明する。
【００８３】
［実施例２の情報処理システムの構成の一例］
図１２は、実施例２に係る情報処理システムのハードウェア構成を示す図である。実施例２に係る情報処理システム２は、タブレットＰＣやノートＰＣ等のクライアント装置１２と、クライアント装置１２にネットワークを介して接続される複数のデータセンタ２０Ｅ，２０Ｆ，…２０ｎと、を備える。データセンタ２０Ｅは、サーバ３２Ｅ、接続ブローカサーバ３３Ｅ、仮想ホストサーバ３４Ｅと、ストレージ４１Ｅ，４２Ｅと、を有する。データセンタ２０Ｆは、サーバ３２Ｆと、接続ブローカサーバ３３Ｆと、仮想ホストサーバ３４Ｆと、ストレージ４１Ｆ，４２Ｆと、を有する。データセンタ２０ｎは、サーバ３２ｎと、接続ブローカサーバ３３ｎと、仮想ホストサーバ３４ｎと、ストレージ４１ｎ，４２ｎと、を有する。
【００８４】
実施例２に係る情報処理システム２においては、クライアント装置１２がデータセンタ２０Ｅ〜２０ｎを利用して仮想デスクトップを用いた処理を実行する。仮想デスクトップを実現するため、データセンタ２０Ｅ〜２０ｎのサーバ３２Ｅ〜３２ｎには、Ｗｅｂアクセス機能や、認証サーバ機能が実装される。また、データセンタ２０Ｅ〜２０ｎは、接続ブローカサーバ３３Ｅ〜３３ｎを備える。データセンタ２０Ｅ〜２０ｎのサーバ３２Ｅ〜３２ｎは、Ｗｅｂアクセス機能を用いて、クライアント装置１２を、仮想ホストサーバ３４Ｅ〜３４ｎ上で実行される仮想マシンにリモートデスクトップ接続させる。また、仮想ホストサーバ３４Ｅ〜３４ｎが使用するデータはストレージ４１Ｅ〜４１ｎに格納される。
【００８５】
［クライアント装置の構成の一例］
図１３は、実施例２に係るクライアント装置の構成の一例を示す図である。クライアント装置１２は、入力部２１０、出力部２２０、送受信部２３０を備える。また、クライアント装置１２は、記憶部４００と、制御部５００とを備える。入力部２１０、出力部２２０、送受信部２３０の構成及び機能は、実施例１の情報処理装置１０が備える入力部１１０、出力部１２０、送受信部１３０と同様である。
【００８６】
記憶部４００は、レイテンシチェック結果記憶領域４０１と、データセンタリスト記憶領域４０２と、を有する。記憶部４００、レイテンシチェック結果記憶領域４０１、データセンタリスト記憶領域４０２はそれぞれ、実施例１の記憶部１４０、レイテンシチェック結果記憶領域１４１、データセンタリスト記憶領域１４２と同様の構成および機能である。
【００８７】
制御部５００は、接続要求部５０１と、レイテンシチェック部５０２と、レプリカ選択部５０３と、レプリカ作成指示部５０４と、を備える。
【００８８】
接続要求部５０１は、情報処理システム２に含まれるデータセンタにアクセスして所定の処理を実行するための接続を要求する接続要求を送信する。
【００８９】
レイテンシチェック部５０２は、レイテンシチェック要求を受信したときに、レイテンシチェック処理を実行し、レイテンシを検出する検出部である。レイテンシチェック要求は、クライアント装置１２が利用可能なデータセンタの一覧であるデータセンタリストを含む。レイテンシチェック処理は、クライアント装置１２と各データセンタとの通信にかかるレイテンシをチェックするための処理である。
【００９０】
レイテンシチェック部５０２は、レイテンシチェック要求を受信すると、レイテンシチェック要求に含まれるデータセンタリストを参照し、レイテンシチェック対象とするデータセンタを選択する。レイテンシチェック部５０２は、データセンタリストに含まれるすべてのデータセンタをレイテンシチェック対象としてもよい。また、レイテンシチェック部５０２は、データセンタリストに含まれる情報に基づき、稼働中のデータセンタを選択してレイテンシチェック対象としてもよい。また、レイテンシチェック部５０２は、データセンタリストに含まれる情報に基づき、使用状況がビジーである時間帯に現在時刻が含まれないデータセンタリストを選択してもよい。
【００９１】
そして、レイテンシチェック部５０２は、選択したデータセンタに対して、レイテンシチェックコマンドを送信する。また、レイテンシチェック部５０２は、レイテンシチェックコマンドに対する応答を、各データセンタから受信する。レイテンシチェック部５０２は、レイテンシチェックコマンドとレイテンシチェックコマンドに対する応答に基づき、各データセンタとの通信にかかるレイテンシを算出する。算出したレイテンシは、レイテンシチェック結果記憶領域４０１に記憶する。
【００９２】
レプリカ選択部５０３は、レイテンシチェック部５０２が算出したレイテンシに基づき、レイテンシが最も低いデータセンタを、レプリカを作成するレプリカ先として選択する。レプリカ選択部５０３は、レプリカ先を選択すると、当該レプリカ先に対してアクセスチェックコマンドを送信する。レプリカ選択部５０３は、アクセスチェックコマンドに対する応答があったデータセンタをレプリカ先として選択する。レプリカ選択部５０３は、アクセスチェックコマンドに対する応答を所定時間内に受信しない場合は、次にレイテンシが低いデータセンタを選択する。そして、レプリカ選択部５０３は、アクセスチェックコマンドの送信処理を繰り返す。そして、レプリカ選択部５０３は、アクセスチェックコマンドに対する応答を所定時間内に受信したデータセンタを、レプリカ先として選択する。
【００９３】
次に、レプリカ選択部５０３は、クライアント装置１２がアクセスしようとしているデータを格納しているデータセンタたとえばデータセンタ２０Ｅのレイテンシと、選択したデータセンタのレイテンシとを比較する。レプリカ選択部５０３は、データセンタ２０Ｅのレイテンシと、選択したデータセンタのレイテンシとの差が所定値未満である場合、レプリカ作成処理を実行しないと判定する。そして、レプリカ選択部５０３は、レプリカ作成指示部５０４に、レプリカ作成指示をしない旨を通知する。他方、レプリカ選択部５０３は、データセンタ２０Ｅのレイテンシと、選択したデータセンタのレイテンシとの差が所定値以上である場合、レプリカ作成処理を実行すると判定する。そして、レプリカ選択部５０３は、レプリカ作成指示部５０４に、レプリカ作成指示をする旨を通知する。通知にはレプリカ先のデータセンタの情報が含まれる。
【００９４】
レプリカ作成指示部５０４は、レプリカ選択部５０３からの指示に基づき、サーバ３２Ｅに対して、レプリカ作成指示を送信する。また、レプリカ作成指示部５０４は、レプリカ選択部５０３からの指示に基づき、サーバ３２Ｅに対して、通常接続指示を送信する。レプリカ作成指示部５０４は、レプリカ選択部５０３からレプリカ作成指示をする旨の通知を受信した場合、サーバ３２Ｅに対して、レプリカ作成指示を送信する。レプリカ作成指示にはレプリカ先のデータセンタの情報が含まれる。レプリカ作成指示部５０４は、レプリカ選択部５０３からレプリカ作成指示をしない旨の通知を受信した場合、サーバ３２Ｅに対して、通常接続指示を送信する。
【００９５】
接続要求部５０１は、レプリカ作成指示部５０４がレプリカ作成指示をサーバ３２Ｅに送信したのち、サーバ３２Ｅから接続先情報を受信すると、当該接続先情報に基づいてレプリカ先に接続する。
【００９６】
［サーバの構成の一例］
図１４は、実施例２に係るサーバの構成の一例を示す図である。次に、サーバ３２Ｅの構成の一例について説明する。サーバ３２Ｅは、入力部８１０と、出力部８２０と、送受信部８３０と、記憶部６００と、制御部７００と、を有する。なお、サーバ３２Ｆ〜３２ｎは、サーバ３２Ｅと同様の構成および機能を有する。以下の説明では、サーバ３２Ｅを例として説明する。
【００９７】
入力部８１０、出力部８２０、送受信部８３０は、実施例１の入力部３１０Ａ、出力部３２０Ａ、送受信部３３０Ａと同様の構成および機能を有する。
【００９８】
記憶部６００は、レイテンシチェック結果記憶領域６０１とデータセンタリスト記憶領域６０２とを有する。記憶部６００、レイテンシチェック結果記憶領域６０１、データセンタリスト記憶領域６０２は各々、実施例１の記憶部３４０Ａ、レイテンシチェック結果記憶領域３４１Ａ、データセンタリスト記憶領域３４２Ａと同様の構成および機能を有する。
【００９９】
制御部７００は、データセンタリスト作成部７０１と、レイテンシチェック要求送信部７０２と、レプリカ作成指示部７０３と、レプリカ作成部７０４と、切替制御部７０５と、更新処理部７０６と、終了処理部７０７と、を有する。
【０１００】
データセンタリスト作成部７０１は、データセンタリストを作成する。データセンタリストとは、情報処理システム２が備えるデータセンタの一覧である。データセンタリスト作成部７０１は、所定のタイミングで、データセンタ２０Ｅ内のリソースの使用状況に関する情報を収集する。なお、データセンタ２０Ｅ内のリソースの使用状況に関する情報の収集手法については特に限定されない。
【０１０１】
また、データセンタリスト作成部７０１は、所定のタイミングで、情報処理システム２内の他のデータセンタに対してデータセンタリスト送信リクエストを送信する。データセンタリスト作成部７０１は、データセンタリスト送信リクエストに対する応答を受信する。そして、データセンタリスト作成部７０１は、受信した応答に基づき、データセンタリスト記憶領域６０２に記憶されるデータセンタリストを更新する。
【０１０２】
また、データセンタリスト作成部７０１は、他のデータセンタからデータセンタリスト送信リクエストを受信すると、データセンタ２０Ｅ内のリソースの使用状況に関する情報を応答として送信する。
【０１０３】
レイテンシチェック要求送信部７０２は、クライアント装置１２から接続要求が送信された場合に、接続ブローカサーバ３３Ｅから送信される接続先情報通知を受信する。レイテンシチェック要求送信部７０２は、たとえば、接続先情報通知をフックする。そして、レイテンシチェック要求送信部７０２は、接続先情報通知を保留して、レイテンシチェック要求をクライアント装置１２に送信する。レイテンシチェック要求は上述のように、クライアント装置１２が利用可能なデータセンタの一覧であるデータセンタリストを含む。レイテンシチェック要求送信部７０２は、データセンタリスト記憶領域６０２に記憶されるデータセンタリストを読み出して、レイテンシチェック要求に含めてクライアント装置１２に送信する。
【０１０４】
なお、レイテンシチェック要求送信部７０２は、接続先情報通知を受信したとき、データセンタリスト作成部７０１にデータセンタリスト更新の指示を送信し、データセンタリスト作成部７０１がデータセンタリストを更新するものとしてもよい。そして、レイテンシチェック要求送信部７０２は、更新後のデータセンタリストを送信するものとしてもよい。
【０１０５】
レプリカ作成指示部７０３は、クライアント装置１２からレプリカ作成指示を受信すると、レプリカ作成指示によって特定されるデータのレプリカを作成する。また、レプリカ作成指示部７０３は、作成したレプリカをレプリカ作成指示によって特定されるデータセンタにコピーするため、当該データセンタのサーバにレプリカ準備指示を送信する。
【０１０６】
レプリカ作成指示部７０３は、レプリカ準備指示の送信後、送信先のサーバから仮想マシンの作成完了通知を受信すると、作成したレプリカデータの送信を開始する。なお、レプリカデータの送信は、レプリカの作成が完了する前から開始する。たとえば、レプリカを作成する対象のデータにアクセス頻度が高いデータとアクセス頻度が低いデータが含まれる場合、レプリカ作成指示部７０３は、アクセス頻度が高いデータからレプリカ作成を開始する。そして、レプリカ作成指示部７０３は、作成したアクセス頻度が高いデータからレプリカデータの送信を開始する。また、レプリカ作成指示部７０３は、ストリーミングデータのレプリカ作成は、他のデータよりも後に実行する。これは、ストリーミングデータはレイテンシが遅くても、クライアント装置１２側での処理に大きな影響を与えないと考えられるためである。
【０１０７】
レプリカ作成指示部７０３は、レプリカデータの送信を開始すると、レプリカ先のサーバに対して、レプリカ作成完了通知を送信する。そして、レプリカ作成指示部７０３は、レプリカ先に接続するための接続先情報をクライアント装置１２に送信する。また、レプリカ作成指示部７０３は、レプリカ元のデータに対してアクセスできないよう、当該データをアクセス不可状態にする。すなわち、レプリカ作成指示部７０３は、当該データをロックする。
【０１０８】
レプリカ作成部７０４は、レプリカ準備指示を受信した場合に、自センタ内にレプリカ準備指示によって特定される容量の仮想マシンを作成する。また、レプリカ作成部７０４は、仮想マシンが作成されると、作成完了通知をレプリカ準備指示の送信元に送信する。レプリカ作成部７０４は、作成完了通知の送信後、レプリカ準備指示の送信元からレプリカデータを受信して、仮想マシンが使用するストレージに保存する。実施例２のサーバ３２Ｅが備えるレプリカ作成指示部７０３およびレプリカ作成部７０４は、実施例１のサーバ３０Ａが備えるレプリカ作成部３５２Ａに対応する。
【０１０９】
切替処理部７０５は、レプリカのレプリカ元からレプリカ先への送信が完了していない段階で、クライアント装置１２からのアクセスがあった場合、処理対象データの格納場所に応じて、クライアント装置１２をレプリカ元にリンクさせる。
【０１１０】
更新処理部７０６は、自センタ内にレプリカが作成されている場合、当該レプリカに発生する差分をレプリカ元のデータセンタに送信する。レプリカ元のデータはロックされた状態であるが、レプリカ先のサーバによる更新のためのアクセスは許容するものとする。また、更新処理部７０６は、自センタ内にレプリカ元のデータが格納されている場合、レプリカ先からの更新のためのアクセスに応じて、レプリカ元のデータを更新する。
【０１１１】
終了処理部７０７は、所定期間にわたってアクセスがないレプリカを削除する終了処理を実行する。終了処理部７０７は、自センタ内に作成されているレプリカに対して予め定めた期間にわたってアクセスがない場合、当該レプリカのレプリカ元であるデータを格納しているデータセンタに対して、データロック解除リクエストを送信する。レプリカ元のデータセンタのサーバは、データロック解除リクエストを受信すると、アクセス不可としていたレプリカ元のデータのロックを解除してアクセス可能な状態とする。そして、終了処理部７０７は、レプリカ先のデータとレプリカ元のデータとの差分をレプリカ元のデータセンタに送信する。なお、差分データについては、レプリカ先で処理が実行される都度、更新処理部７０６がレプリカ元のデータにレイジー更新するものとするが、終了処理の時点で、未更新のデータがあった場合に、終了処理部７０７が差分データを送信する。差分データの更新が完了すると、レプリカ元のデータセンタから終了処理部７０７に更新完了通知が送信される。更新完了通知を受信した終了処理部７０７では、自センタ内に作成した仮想マシンとレプリカデータを削除する。削除完了後、終了処理部７０７は、削除完了通知を、レプリカ元のデータセンタに送信する。
【０１１２】
なお、終了処理部７０７は、データロック解除リクエストを受信した場合、アクセス不可としていた自センタ内のレプリカ元のデータのロックを解除する。
【０１１３】
［実施例２の情報処理方法の流れの一例］
実施例２における情報処理方法の流れは、実施例１と同様である。まず、サーバにおいてデータセンタリスト作成処理が実行される。その後、クライアント装置側でレプリカ作成要否判定が実行される。レプリカを配置させる場合は、その後サーバにおいてレプリカ作成処理が実行される。そして、レプリカ先のデータセンタとの接続処理を経てクライアント装置の処理が実行される。処理が終了すると、レプリカ先およびレプリカ元のサーバにおいて終了処理が実行される。他方、レプリカを配置させない場合は、クライアント装置はレプリカを作成せずに、データが格納されているデータセンタと接続して処理を実行する。以下に、実施例２における各処理の流れを図面を参照して詳しく説明する。
【０１１４】
［データセンタリスト作成処理］
図１５は、実施例２に係るデータセンタリスト作成処理の流れの一例を説明するためのシーケンスチャートである。図１５に示すように、実施例２の情報処理システム２では、各データセンタ２０Ｅ〜２０ｎ（ｎは任意の自然数）においては、所定のタイミングになると、データセンタリスト作成部７０１がデータセンタリストを作成する。図１５の例では、データセンタ２０Ｅのデータセンタリスト作成部７０１がデータセンタリストを作成する場合を説明する。まず、データセンタリスト作成部７０１は、他のデータセンタのサーバに対して、データセンタ内のリソースの使用状況に関する情報を送信するよう要求するデータセンタリスト送信リクエストを送信する（図１５の（１））。各データセンタ内のサーバ（データセンタリスト作成部）は、リクエストに応答して、自センタ内のリソースの使用状況に関する情報であるデータセンタリストを送信する（図１５の（２））。データセンタリスト作成部７０１は、受信した情報を統合して、自装置のデータセンタリスト記憶領域６０２に記憶される情報を更新する（図１５の（３））。これで処理が終了する。
【０１１５】
［レプリカ作成要否判定処理］
図１６は、実施例２に係るレプリカ作成要否判定処理の流れの一例を説明するためのシーケンスチャートである。図１６の例では、クライアント装置１２が利用するデータは、データセンタ２０Ｅのサーバ３２Ｅに格納されている。したがって、クライアント装置１２の接続要求部５０１はまず、データセンタ２０Ｅに対して接続要求を送信する。これに対して、サーバ３２Ｅのレイテンシチェック要求送信部７０２は、クライアント装置１２にデータセンタリストとともにレイテンシチェック要求を送信する（図１６の（１））。
【０１１６】
レイテンシチェック要求を受信したクライアント装置１２のレイテンシチェック部５０２は、データセンタリストに基づき、レイテンシチェックコマンドを送信する対象データセンタを選択する（図１６の（２））。そして、レイテンシチェック部５０２は、選択したデータセンタに対して、レイテンシチェックコマンドを送信する（図１６の（３））。レイテンシチェック部５０２は、たとえば、pingを送信する。レイテンシチェック部５０２は、レイテンシチェックコマンドに対する応答を受信する（図１６の（４））。応答を受信すると、レイテンシチェック部５０２は、応答に基づき、各データセンタとの通信にかかるレイテンシを算出する。
【０１１７】
次にレプリカ選択部５０３は、レイテンシチェック部５０２が算出したレイテンシを比較して、レイテンシが最も低いデータセンタをレプリカ先として選択する（図１６の（５））。次に、レプリカ選択部５０３は、選択したデータセンタに対してアクセステストを実行する（図１６の（６））。アクセステストの結果、アクセスできないと判定された場合（図１６の（６）においてＮｏ）、レプリカ選択部５０３は、次にレイテンシが低いデータセンタを選択してアクセステストを繰り返す。他方、アクセス可能と判定された場合（図１６の（６）においてＹｅｓ）、レプリカ選択部５０３は、選択したデータセンタのレイテンシとデータセンタ２０Ｅのレイテンシとを比較する。そして、レプリカ選択部５０３は、レイテンシの差が所定値以上か否かを判定する（図１６の（７））。
【０１１８】
図１６の例では、（７）において、レプリカ選択部５０３は、レイテンシの差が１０ｍｓ以上か否かを判定するものとしている。これは、レイテンシの差が微差である場合は、レプリカの作成にかかる時間による処理遅延の影響がレイテンシの短縮化による影響より大きくなると考えられるためである。たとえば、レイテンシの差が同一桁であれば、レプリカを作成することによるコストの方が高くなると考えられる。たとえば、データセンタ２０Ｅのレイテンシが１３ｍｓ、選択したデータセンタのレイテンシが１１ｍｓで、差が２ｍｓとする。この場合、レプリカ作成によるコストの方がレプリカ作成による効果より大きくなると考えられる。このため、レイテンシの差が同一桁の場合は、レプリカ作成は実行せず、元のデータセンタを使用する。他方、レイテンシの差が桁上がりの場合は、レプリカ作成による効果の方がコストよりも大きくなると考えられる。たとえば、データセンタ２０Ｅのレイテンシが２３ｍｓ、選択したデータセンタのレイテンシが１１ｍｓで、差が１２ｍｓとする。この場合、レプリカ作成による効果の方がレプリカ作成によるコストより大きくなると考えられる。このため、レプリカ作成を実行する。
【０１１９】
レプリカ選択部５０３は、レイテンシの差が１０ｍｓ未満であると判定した場合（図１６の（７）においてＮｏ）、レプリカ作成は行わないと判定する。そして、レプリカ選択部５０３からの通知を受けたレプリカ作成指示部５０４は、通常接続指示をサーバ３２Ｅに送信して通常接続処理を実行する（図１６の（８））。他方、レプリカ選択部５０３は、レイテンシの差が１０ｍｓ以上であると判定した場合（図１６の（７）においてＹｅｓ）、レプリカ作成を実行すると判定する。そして、レプリカ選択部５０３は、選択したデータセンタにおいてレプリカを作成するよう、レプリカ作成指示部５０４に通知する。レプリカ作成指示部５０４は、データセンタ２０Ｅにレプリカ作成指示を送信する（図１６の（９））。レプリカ作成指示には、レプリカ選択部５０３が選択したレプリカ先データセンタの情報が含まれる。そして、レプリカ作成指示を受けて、サーバ３２Ｅにおいてレプリカ作成処理が開始する（図１６の（１０））。
【０１２０】
［レプリカ作成処理］
図１７は、実施例２に係るレプリカ作成処理の流れの一例を説明するためのシーケンスチャートである。図１６に示したレプリカ作成要否判定処理の後、レプリカ作成処理が開始する。
【０１２１】
まず、レプリカ作成要否判定処理の結果、クライアント装置１２からサーバ３２Ｅにレプリカ作成指示が送信される。サーバ３２Ｅのレプリカ作成指示部７０３は、レプリカ作成指示を受信すると、レプリカ作成指示に含まれる情報に基づき、レプリカ先データセンタに仮想マシンの作成を指示するレプリカ準備指示を送信する（図１７の（１））。ここでは、レプリカ先データセンタとして２０Ｆが選択されたものとする。
【０１２２】
レプリカ準備指示を受信したデータセンタ２０Ｆのサーバ３２Ｆのレプリカ作成部７０４は、自センタ内にレプリカ準備指示によって特定される容量の仮想マシンを作成する。レプリカ作成部７０４は、たとえば、データセンタ２０Ｆ内の仮想ホストサーバ３４Ｆに対してクライアント装置１２のユーザ用の仮想マシンを作成するよう指示する（図１７の（２））。仮想ホストサーバ３４Ｆは、ストレージ４１Ｆを使用して仮想マシンを作成し（図１７の（３））、作成完了通知を受信すると（図１７の（４））レプリカ作成部７０４に作成完了通知を送信する（図１７の（５））。ここでは、サーバ３２Ｆ、仮想ホストサーバ３４Ｆ、ストレージ４１Ｆをそれぞれ別のサーバに配置するものとして説明するが、サーバ３２Ｆ内に仮想ホストおよびストレージが配置されていてもよい。
【０１２３】
仮想マシンの作成完了通知を受信したレプリカ先のレプリカ作成部７０４は、レプリカ元であるサーバ３２Ｅのレプリカ作成指示部７０３に対してユーザ用の仮想マシン作成完了通知を送信する（図１７の（６））。レプリカ元のレプリカ作成指示部７０３は、次に、データセンタ２０Ｅ内のストレージ４１Ｅに対してレプリカの作成を指示する（図１７の（７））。そして、レプリカ元のレプリカ作成指示部７０３は、レプリカ元のデータに他の装置がアクセスして変更を加えることがないよう、レプリカ元のデータをアクセス不可状態にしてロックする（図１７の（８））。
【０１２４】
レプリカ元のレプリカ作成指示部７０３は、レプリカ作成の進行に伴い、順次レプリカデータをレプリカ先であるデータセンタ２０Ｆのストレージ４１Ｆに送信する（図１７の（９））。レプリカ元のレプリカ作成指示部７０３は、たとえば、まず、ユーザプロファイルディスクのリモートコピーを開始する。この時、レプリカ作成指示部７０３は、アクセス頻度の高いファイルから優先的にコピーを実行する。また、レプリカ作成指示部７０３は、ストリーミングデータは他のデータよりも後からコピーするようにデータの送信順序を調整する。
【０１２５】
レプリカ作成指示部７０３は、レプリカデータの送信を開始したのち、サーバ３２Ｆに対してレプリカ作成完了通知を送信する（図１７の（１０））。レプリカ作成完了通知は、レプリカデータの送信が完了する前に送信される。レプリカ作成完了通知を受信したレプリカ先ではこの後、接続処理が開始する（図１７の（１１））。なお、レプリカ作成完了通知の送信後も、レプリカ作成指示部７０３は、バックグラウンドでレプリカデータのコピーを継続する（図１７の（１２））。これでレプリカ作成処理は終了する。
【０１２６】
［接続処理］
図１８は、実施例２に係る接続処理の流れの一例を説明するためのシーケンスチャートである。レプリカ元のサーバ３２Ｅのレプリカ作成指示部７０３からレプリカ作成完了通知を受信したレプリカ先のサーバ３２Ｆのレプリカ作成部７０４は、レプリカ作成指示部７０３に接続先変更を通知する（図１８の（１））。レプリカ作成部７０４は、たとえば、ユーザ用に作成した仮想マシンの接続先情報を、レプリカ作成指示部７０３に送信する。サーバ２０Ｅのレプリカ作成指示部７０３は、受信した情報に基づき、接続先情報をクライアント装置１２に送信する（図１８の（２）（３））。図１８の例では、各データセンタはＷｅｂアクセスや認証サーバの機能を備えるため、接続先情報は、Ｗｅｂアクセス機能にいったん渡される。その後、Ｗｅｂアクセス機能からクライアント装置１２に接続先情報が送信される。
【０１２７】
クライアント装置１２の接続要求部５０１は、接続先情報を受信すると、接続先情報によって特定される接続先へアクセスする（図１８の（４））。実施例２においては、接続ブローカサーバがＶＤＩのためアクセスを経路づける。接続ブローカサーバ３３Ｆは、クライアント装置１２から送信される接続先情報に基づき、接続先である仮想マシンを起動するよう仮想ホストサーバ３４Ｆに要求する（図１８の（５））。仮想ホストサーバ３４Ｆは起動要求に応じて仮想マシンを起動し、接続ブローカサーバ３３Ｆに起動通知を送信する（図１８の（６））。接続ブローカサーバ３３Ｆは、起動通知に応じて、クライアント装置１２に起動先を通知する（図１８の（７））。クライアント装置１２は、起動先通知に従い、仮想ホストサーバ３４ＦとＶＤＩ接続を確立する（図１８の（８））。そして、クライアント装置１２は、仮想マシンを使用して情報処理を実行する。情報処理によってレプリカデータに生じた差分は、仮想ホストサーバ３４Ｆからサーバ３２Ｆに送信され、サーバ３２Ｆの更新処理部７０６によって生じた差分のログが蓄積される（図１８の（９））。更新処理部７０６は、生じた差分をレプリカ元のデータセンタ２０Ｅのストレージ４１Ｅに順次レイジー更新する（図１８の（１０））。これで、実施例２の接続処理が終了する。この後、レプリカを削除して、レプリカを用いた処理を終了する終了処理が実行される（図１８の（１１））。
【０１２８】
［終了処理］
図１９は、実施例２に係る終了処理の流れの一例を説明するためのシーケンスチャートである。クライアント装置１２のユーザは、レプリカを用いた処理が終了すると、クライアント装置１２からログオフし、クライアント装置１２をシャットダウンする（図１９の（１））。クライアント装置１２が処理を終了することで、仮想ホストサーバ３４Ｆに作成された仮想マシンも処理を終了する（図１９の（２））。レプリカ先のサーバ３２Ｆの終了処理部７０７は、所定時間ごとに、レプリカに対するアクセスの有無をチェックする（図１９の（３））。終了処理部７０７は、所定時間中にレプリカに対するアクセスがあった場合は（図１９の（４）においてＮｏ）、再び所定時間待機して処理を繰り返す。他方、終了処理部７０７は、所定時間中にレプリカに対するアクセスがなかったと判定した場合は（図１９の（４）においてＹｅｓ）、レプリカ元のサーバ３２Ｅにデータロック解除リクエストを送信する（図１９の（５））。サーバ３２Ｅの終了処理部７０７は、データロック解除リクエストを受信すると、レプリカ元のデータのロックを解除する（図１９の（６））。そして、サーバ３２Ｆの終了処理部７０７により差分データが送信され、レプリカ元のデータが更新される（図１９の（７））。
【０１２９】
レプリカ先の終了処理部７０７はさらに、レプリカ作成処理において作成された仮想マシンを削除するよう仮想ホストサーバ３４Ｆに指示する（図１９の（８））。仮想ホストサーバ３４Ｆは仮想マシンを削除して削除完了通知を終了処理部７０７に送信する（図１９の（９））。また、終了処理部７０７は、レプリカデータを格納したストレージ４１Ｆのレプリカデータの削除を指示する（図１９の（１０））。ストレージ４１Ｆは、レプリカデータを削除して、削除通知を終了処理部７０７に送信する（図１９の（１１））。これで実施例２に係る終了処理が終了する。
【０１３０】
［通常接続処理］
実施例２では、レプリカ作成指示部５０４は、レプリカ作成指示をしない場合、通常接続指示をサーバ３２Ｅに送信するものとした。この場合、サーバ３２Ｅにおいては、通常接続指示を受信したレイテンシチェック要求送信部７０２が、保留していた接続先情報をＷｅｂアクセス機能を介してクライアント装置１２に送信する。そして、クライアント装置１２は、接続先情報を用いてデータセンタ２０Ｅ内のアクセス先との間でＶＤＩ接続を実行することになる。
【０１３１】
［変形例１−データセンタリストの作成］
上記実施例２においては、各データセンタのサーバがデータセンタリストを作成するものとした。これに限らず、複数のデータセンタのうち１のデータセンタがデータセンタリストを作成し、他のデータセンタに配布するように構成してもよい。係る構成とした場合の処理の流れを図２０に示す。図２０は、実施例２の変形例１におけるデータセンタリスト作成配布処理の流れの一例を示すシーケンスチャートである。
【０１３２】
図２０に示すように、変形例１においては、データセンタ２０Ｅが、データセンタリストを作成するデータセンタとして予め設定される。データセンタ２０Ｅのサーバ３２Ｅは、所定のタイミングで、他のデータセンタ２０Ｆ〜２０ｎのサーバ３２Ｆ〜３２ｎに対してデータセンタリスト送信リクエストを送信する（図２０の（１））。サーバ３２Ｅは、たとえば、毎日所定の時間になるとデータセンタリスト送信リクエストを送信する。各データセンタ２０Ｆ〜２０ｎのサーバ３２Ｅ〜３２ｎは、リクエストに応答して、データセンタリストを送信する（図２０の（２））。データセンタ２０Ｅのサーバ３２Ｅのデータセンタリスト作成部７０１は、各データセンタ２０Ｆ〜２０ｎのサーバ３２Ｅ〜３２ｎから送信されるデータセンタリストを統合する（図２０の（３））。そして、データセンタ２０Ｅのサーバ３２Ｅのデータセンタリスト作成部７０１は、他のデータセンタに対して、統合した最新版のデータセンタリストを配布する（図２０の（４））。
【０１３３】
このように構成した場合、データセンタ２０Ｅ以外のデータセンタにおいては自センタ内の処理状況に関するデータのみを収集蓄積しておけばよい。また、データセンタ２０Ｅから定期的に更新されたデータセンタリストが配布されるため、データセンタ間で統一されたデータセンタリストを共有することができる。
【０１３４】
［変形例２−サーバ側でのレプリカ先選択］
上記実施例２においては、クライアント装置１２がレプリカ先のデータセンタを選択するものとした。これに限らず、データセンタ側で、レプリカ先のデータセンタを選択できるように構成してもよい。
【０１３５】
図２１は、変形例２に係るレプリカ先変更処理の流れの一例を説明するためのシーケンスチャートである。図２１に示す処理は、図１７に示すレプリカ作成処理に代えて実行することができる。
【０１３６】
図２１の処理の前提として、クライアント装置１２のレプリカ選択部５０３は、以下の処理を実行する。レプリカ選択部５０３は、レイテンシチェック結果記憶領域４０１に記憶される情報と、データセンタリスト記憶領域４０２に記憶される情報に基づき、各データセンタにレプリカ先としての優先順位をつける。まず、レプリカ選択部５０３は、レイテンシの長さの昇順にデータセンタをソートする。そして、レイテンシに基づく順位は高位であっても、現在時刻が「ビジー状況」として記憶されている日時に該当するデータセンタの順位を最下位に移動させる。また、データセンタリストに各データセンタのリソースの時間帯別の使用率の情報を含めておくこともできる。そして、現在時刻の「使用率」が低いデータセンタの順位を所定位分上げる。このように、レプリカ選択部５０３は、レイテンシに加えて、各データセンタの使用率やビジー状況に応じて、データセンタを選択する優先順位を決定し、決定した優先順位をデータセンタリスト記憶領域４０２に記憶する。
【０１３７】
クライアント装置１２のレプリカ作成指示部５０４は、レプリカ選択部５０３からレプリカ作成指示をする旨の通知を受信すると、データセンタリスト記憶領域４０２に記憶されるデータセンタリストを優先順位とともに読み出す。そして、レプリカ作成指示部５０４は、サーバ３２Ｅに対して、レプリカ作成指示を送信する際、優先順位を含むデータセンタリストを併せて送信する。
【０１３８】
上記の処理を前提として、図２１のレプリカ先変更処理は、レプリカ作成要否判定処理の結果、クライアント装置１２からサーバ３２Ｅにレプリカ作成指示が送信された後に実行される。
【０１３９】
まず、図１７に示すレプリカ作成処理の場合と同様に、サーバ３２Ｅのレプリカ作成指示部７０３が、レプリカ作成指示を受信して、レプリカ先データセンタにレプリカ準備指示を送信する（図２１の（１））。そして、レプリカ先のサーバ３２Ｆのレプリカ作成部７０４は、自センタ内に仮想マシンを作成するため、仮想ホストサーバ３４Ｆに作成指示を送信する（図２１の（２））。ここまでは、図１７の（１）（２）と同様である。次に、仮想ホストサーバ３４Ｆは、作成指示に応じて、ユーザにデスクトップの割当を行うことができるか否かを判定する。仮想ホストサーバ３４Ｆは、たとえば、ユーザにデスクトップの割当を行うために必要なリソースがあるか否かを判定する（図２１の（３））。そして、仮想ホストサーバ３４Ｆは、デスクトップの割当を行うために必要なリソースがないと判定すると（図２１の（３）においてＮｏ）、レプリカ作成不可の旨を、サーバ３２Ｆのレプリカ作成部７０４に通知する。レプリカ作成部７０４は、通知を受信すると、レプリカ元のレプリカ作成指示部７０３に、レプリカ作成不可を通知する。他方、リソースありと判定すると（図２１の（３）においてＹｅｓ）、仮想ホストサーバ３４Ｆは仮想マシンを作成する（図２１の（５））。図２１の（５）から（１４）の処理は、図１７の（３）から（１２）の処理と同様である。
【０１４０】
図２１の（３）においてリソースなしと判定され、通知を受信したレプリカ作成指示部７０３は、レプリカ作成指示とともに受信したデータセンタリストを参照し、優先順位がデータセンタ２０Ｆの次に高位のデータセンタを選択する（図２１の（４））。そして、レプリカ作成指示部７０３は再び、選択したデータセンタのサーバに対してレプリカ作成準備指示を送信して、処理を繰り返す。
【０１４１】
このように構成することで、クライアント装置１２側でレプリカ先のデータセンタを選択したものの後発的に不都合が生じた場合、データセンタ側で再度レプリカ先を選択して処理を継続することができる。
【０１４２】
［変形例３−レプリカ作成後の再接続処理］
実施例２においては、レプリカ作成後、クライアント装置１２がシャットダウンして所定時間にわたってアクセスがなければ、レプリカを削除する終了処理を実行するものとした。これに加え、レプリカ作成後、いったん処理を終了してシャットダウンしたクライアント装置１２が再びレプリカにアクセスすることができるように構成してもよい。図２２は、実施例２の変形例３に係るレプリカ作成後の再接続処理の流れの一例を説明するためのシーケンスチャートである。
【０１４３】
図２２の処理の前提として、変形例３のサーバは、自センタ内のデータのレプリカの作成有無と当該データおよびレプリカを利用するユーザ情報とを対応づけて記憶しているものとする。
【０１４４】
まず、クライアント装置１２の接続要求部５０１は、情報処理システム２内に格納されるデータを利用するため、レプリカ元のデータセンタ２０Ｅに接続要求を送信する（図２２の（１））。データセンタ２０Ｅにおいては、接続要求はまず、データセンタ２０Ｅ内のＷｅｂアクセス機能によって受信され、認証サーバ機能によってユーザ認証が実行される（図２２の（２））。ユーザ認証に成功すると、認証サーバ機能からＷｅｂアクセス機能に対して認証応答が送信される（図２２の（３））。Ｗｅｂアクセス機能は、次に、クライアント装置１２に接続先を通知するため、接続ブローカサーバ３３Ｅに対して接続先情報を要求する（図２２の（４））。接続ブローカサーバ３３Ｅは、要求に応じて接続先情報を送信する。サーバ３２Ｅのレイテンシチェック要求送信部７０２は、送信される接続先情報をＷｅｂアクセス機能に渡さずに保留する（図２２の（５）、「接続先情報通知をフック」）。そして、レイテンシチェック要求送信部７０２は、記憶されている情報を参照し、接続先情報に対応するアクセス先のデータに対してレプリカが作成済みか否か判定する（図２２の（６））。レイテンシチェック要求送信部７０２は、作成済みのレプリカが存在しないと判定した場合（図２２の（６）においてＮｏ）、レイテンシチェック要求をクライアント装置１２に送信する（図２２の（７））。他方、レイテンシチェック要求送信部７０２は、作成済みのレプリカが存在すると判定した場合（図２２の（６）においてＹｅｓ）、レイテンシチェック要求は送信せず、レプリカの接続先情報をクライアント装置１２に送信する（図２２の（８）、（９））。図２２の（８）から（１４）の処理は、図１８の（２）から（８）の処理と同様である。
【０１４５】
このように構成することで、いったんレプリカを作成したのち、再びレプリカを利用する場合に、円滑にレプリカへの接続を実現することができる。
【０１４６】
［実施例２の効果］
上記のように構成した実施例２に係る情報処理システムにおいては、情報処理装置（クライアント装置）は、選択部と、指示部とを備える。そして、選択部は、複数のデータセンタ各々との通信にかかるレイテンシに基づき複数のデータセンタのうち１のデータセンタを選択する。そして、指示部は、複数のデータセンタのうち所定のデータを格納するデータセンタに対して、選択した１のデータセンタ内に当該所定のデータのレプリカを作成させる指示を送信する。このため、レイテンシの増加を抑制することができる。たとえば、ユーザが情報処理装置を用いてクラウドサーバに格納された情報にアクセスする場合に、アクセスする地点の変化によるレイテンシの増加を抑制することができる。また、レイテンシに基づいてデータの格納場所を調整し、ユーザから見た場合の処理速度を向上させることができる。したがって、ユーザがＶＤＩを利用する場合等に、レプリカ元のサーバから離れた場所にいても、距離の影響を感じることなく、迅速な処理を実現することができる。このほか、実施例２に係る情報処理システムは、実施例１に係る情報処理システムと同様の効果を奏する。
【０１４７】
また、実施例２に係る情報処理システムはＶＤＩを用いた処理に適用される。ＶＤＩを利用する場合、基本的な仮想マシンの情報はデータセンタ各々が保持している。このため、クライアント装置独自の差分情報のレプリカをコピーすれば処理上問題がない。差分情報としては、ユーザ情報、レジストリ設定、マイドキュメント等のデータである。したがって、実施例２のようにレプリカを作成して他のサーバにコピーする処理にかかる時間は処理全体に大きな影響を与えないと考えられる。
【０１４８】
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、クライアント装置１２が備えるレイテンシチェック部５０２、レプリカ選択部５０３およびレプリカ作成指示部５０４の各処理部が適宜統合されてもよい。また、各処理部の処理が適宜複数の処理部の処理に分離されてもよい。さらに、各処理部にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１４９】
［情報処理プログラム］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図２３は、情報処理プログラムを実行するコンピュータを示す図である。
【０１５０】
図２３に示すように、コンピュータ１０００は、ＣＰＵ（Central  Processing  Unit）１０１０、ＨＤＤ（Hard  Disk  Drive）１０２０、ＲＡＭ（Random  Access  Memory）１０４０を有する。これらＣＰＵ１０１０、ＨＤＤ１０２０、ＲＡＭ１０４０の各部は、バス１１００を介して接続される。
【０１５１】
ＨＤＤ１０２０には上記のクライアント装置１２が備える各処理部またはサーバ３２Ｅが備える各処理部と同様の機能を発揮する情報処理プログラム１０２０ａが予め記憶される。なお、情報処理プログラム１０２０ａについては、適宜分離しても良い。
【０１５２】
また、ＨＤＤ１０２０は、各種情報を記憶する。例えば、ＨＤＤ１０２０は、ＯＳや生産計画に用いる各種データを記憶する。
【０１５３】
そして、ＣＰＵ１０１０が、情報処理プログラム１０２０ａをＨＤＤ１０２０から読み出して実行することで、実施例の各処理部と同様の動作を実行する。
【０１５４】
なお、上記した情報処理プログラム１０２０ａについては、必ずしも最初からＨＤＤ１０２０に記憶させることを要しない。
【０１５５】
例えば、コンピュータ１０００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ１０００がこれらからプログラムを読み出して実行するようにしてもよい。
【０１５６】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１０００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ１０００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【０１５７】
１，２  情報処理システム
１０  情報処理装置
１２  クライアント装置
２０Ａ〜２０Ｄ，２０Ｅ〜２０ｎ  データセンタ
３０Ａ〜３０Ｄ，３２Ｅ〜３２ｎ  サーバ
４０Ａ〜４０Ｄ，４１Ｅ〜４１ｎ，４２Ｅ〜４２ｎ  ストレージ
１１０  入力部
１２０  出力部
１３０  送受信部
１４０  記憶部
１４１  レイテンシチェック結果記憶領域
１４２  データセンタリスト記憶領域
１５０  制御部
１５１  検出部
１５２  選択部
１５３  指示部
３１０Ａ〜３１０Ｄ  入力部
３２０Ａ〜３２０Ｄ  出力部
３３０Ａ〜３３０Ｄ  送受信部
３４０Ａ〜３４０Ｄ  記憶部
３４１Ａ〜３４１Ｄ  レイテンシチェック結果記憶領域
３４２Ａ〜３４２Ｄ  データセンタリスト記憶領域
３５０Ａ〜３５０Ｄ  制御部
３５１Ａ〜３５１Ｄ  データセンタリスト作成部
３５２Ａ〜３５２Ｄ  レプリカ作成部
３５３Ａ〜３５３Ｄ  切替制御部
３５４Ａ〜３５４Ｄ  終了処理部
【図１】
0006627323.tif 000002
【図２】
0006627323.tif 000003
【図３】
0006627323.tif 000004
【図４】
0006627323.tif 000005
【図５】
0006627323.tif 000006
【図６】
0006627323.tif 000007
【図７】
0006627323.tif 000008
【図８】
0006627323.tif 000009
【図９】
0006627323.tif 000010
【図１０】
0006627323.tif 000011
【図１１】
0006627323.tif 000012
【図１２】
0006627323.tif 000013
【図１３】
0006627323.tif 000014
【図１４】
0006627323.tif 000015
【図１５】
0006627323.tif 000016
【図１６】
0006627323.tif 000017
【図１７】
0006627323.tif 000018
【図１８】
0006627323.tif 000019
【図１９】
0006627323.tif 000020
【図２０】
0006627323.tif 000021
【図２１】
0006627323.tif 000022
【図２２】
0006627323.tif 000023
【図２３】
0006627323.tif 000024