(57)【要約】【課題】複数のファイルサーバを広域な範囲に分散配置させて形成される広域分散ファイルシステムにおいて、災害が発生した地域に存在していたデータの損失の回避に適したデータのファイル分散配置方法を得る。【解決手段】複数のファイルサーバ（記録部）３を広域範囲に設置してファイルを分散して記録する方法であって、予め設定した複数の地域内に存在する前記各記録部に記録された総ファイル数又は総ファイルサイズを算出し、新しいファイルを記録する場合に、前記総ファイル数又は総ファイルサイズの少ない記録部に記録することでファイルの分散配置を行って、記録されるデータ量を地域単位で均等化させる。【選択図】図１
2011060008.tif 000002
【特許請求の範囲】
【請求項１】
複数の記録部を広域範囲に設置してファイルを分散して記録する方法であって、
予め設定した複数の地域内に存在する前記各記録部に記録された総ファイル数又は総ファイルサイズを算出し、
新しいファイルを記録する場合に、前記総ファイル数又は総ファイルサイズの少ない記録部に記録することでファイルの分散配置を行う
ことを特徴とするファイル分散配置方法。
【請求項２】
ファイルを記録するための記録部を有する複数のファイルサーバと、前記各ファイルサーバの中からファイルを記録するファイルサーバを選択する運用システムサーバとを備えたファイル分散配置装置であって、
前記運用システムサーバは、
分散配置された複数の地域を設定し各地域の地理情報を記憶するとともに前記各ファイルサーバのリソース情報を受信して記憶する地域情報収集部と、
前記各ファイルサーバの設置場所情報を受信し記憶する地理情報受信部と、
前記地理情報受信部で受信した前記各ファイルサーバの設置場所情報と前記地域情報収集部で記憶された各地域の地理情報から前記各ファイルサーバの属する各地域を選定しファイルサーバの地域情報とする地理情報解析部と、
前記地域情報収集部に記憶された各ファイルサーバのリソース情報から、前記地理情報解析部で選定された地域毎にリソース情報を算出し管理する地域情報解析部と、
前記地理情報解析部のファイルサーバの地域情報と前記地域情報解析部で管理された地域毎のリソース情報とによりファイルの記録先となるファイルサーバを決定する記録先決定部と
を具備することを特徴とするファイル分散配置装置。
【請求項３】
前記各ファイルサーバはＧＰＳを備え、前記地理情報受信部において前記ＧＰＳで得た情報により前記各ファイルサーバの設置場所を管理する請求項２に記載のファイル分散配置装置。
【請求項４】
前記地理情報解析部で選定される各地域は、複数の広い地域内にそれぞれ複数の狭い地域を設定し、前記記録先決定部でのファイルの記録先となるファイルサーバを決定するに際して、広い地域で総ファイル数又は総ファイルサイズの均等化を行い、続いて狭い地域での均等化を行う請求項２に記載のファイル分散配置装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のユーザによるファイル書込及びファイル読込要求が行われるサーバが接続されたネットワークにおいて、データを保存するに際して、記録部（ストレージ）を有する複数のファイルサーバを広域な範囲に分散配置させて形成される広域分散ファイルシステムに関し、特に、災害が発生した地域に存在していたデータの損失を回避することを目的としたデータのファイル分散配置方法及びファイル分散配置装置に関する。
【背景技術】
【０００２】
この種の技術としては、非特許文献１や非特許文献２で示されるように、複数のマシンのディスクを組み合わせて１つのファイルシステムとして機能する分散プラットフォームが提案されている。
非特許文献１に示されたGfarmは、広域ネットワーク上で、大容量、大規模データ処理の要求に応えるスケーラブルな分散ファイルシステムプラットフォームであり、広域なネットワーク上での効率的なファイル共有に適した分散プラットフォームである。
一方、非特許文献２に示されたHadoopは、１つのディスクで保存できない大量のデータを並列化することで高速かつ効率良く処理できるものであり、比較的大きなサイズかつ基本的に更新されることのないファイルのI/Oに適した分散プラットフォームである。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】URL：http://datafarm.apgrid.org/index.ja.html
【非特許文献２】URL：http://hadoop.apache.org/
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したGfarmやHadoopの分散プラットフォームによれば、データの可用性を高めるために、複数のファイルサーバ（実際の保存先ストレージを持つサーバ）に、ファイルの複製あるいはファイルを分割したデータブロックの複製を作成するように設計されている。また、複製保存先ファイルサーバの選択方法に関しては、ファイルサーバのディスク空き容量、CPU負荷、サーバ単位／ラック単位としての位置、が考慮されている。
【０００５】
しかしながら、複数のファイルサーバを広域な範囲に配置し、ファイルシステム全体を地域という範囲に分けて観察した場合、この複製先選択方法では、地域を考慮してデータが分散されていないため、ある地域にデータが集中してしまう可能性があり、その地域が災害に遭遇し、その地域のデータ（ファイル）を復旧（他の地域からコピー）しようとした場合、復旧すべくデータ（ファイル）の数が多いため、復旧作業にもより多くの工数を要するという可能性がある。
また、この複製先選択方法では、複製データを作成するに際して、オリジナルデータと複製データが同じ地域に存在する場合も考えられ、その地域が災害に遭遇した場合に、データが損失する（復旧できない）可能性がある。
【０００６】
一般に、既存の分散ファイルシステムプラットフォームでは、ファイルあるいはファイルを分割したデータブロックの複製をとることができるが、複製保存先のファイルサーバをどれにするかは、運用者がマニュアルにより指定するか、局舎程度の範囲内（ラック単位）でのファイルサーバ間の距離をシステムで判断して自動で決定している。
例えば世界中に点在するストレージを統合し、クラウドサービスとして巨大ストレージを提供する場合、増加するユーザからの書き込み要求の度に運用者が複製先を判断・指定することは現実的ではなく、また、従来の複製保存先判断技術に任せるだけではデータが一局所に集中し可用性を損なう場合も考えられる。
【０００７】
本発明は上記事情に鑑みて提案されたもので、複数のファイルサーバを広域な範囲に分散配置させて形成される広域分散ファイルシステムにおいて、災害が発生した地域に存在していたデータの損失の回避に適したデータのファイル分散配置方法及びファイル分散配置装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため本発明は、先ず、ファイルサーバを配置すべく地域について、広域な範囲から細分化し、各地域に散在する各ファイルサーバを、地理情報（郵便番号、電話番号、MA番号、GPS情報等）を用いて運用システム側で管理することにより、各ファイルサーバが前記したどの地域に属しているかを運用システム側で把握する。
ファイルを記録する場合の記録先となるファイルサーバの選択処理においては、ファイルを保存すべく十分な空き容量を持つ地域が複数存在した場合、その中から、総ファイル数又は総ファイルサイズの少ない地域のファイルサーバにファイルを保存することにより、全体的に、地域単位でのデータ量を均等化させる。
記録するファイルは、オリジナルデータの他、複製を作成し登録することが好ましい。この場合、オリジナルデータと複製データとは、別々の地域に配置されたファイルサーバに記録するようにする。
【０００９】
すなわち、請求項１のファイル分散配置方法は、複数の記録部を広域範囲に設置してファイルを分散して記録する方法であって、
予め設定した複数の地域内に存在する前記各記録部に記録された総ファイル数又は総ファイルサイズを算出し、
新しいファイルを記録する場合に、前記総ファイル数又は総ファイルサイズの少ない記録部に記録することでファイルの分散配置を行うことを特徴としている。
【００１０】
請求項２は、ファイルを記録するための記録部を有する複数のファイルサーバと、前記各ファイルサーバの中からファイルを記録するファイルサーバを選択する運用システムサーバとを備えたファイル分散配置装置であって、前記運用システムサーバが次の構成を含むことを特徴としている。
分散配置された複数の地域を設定し各地域の地理情報を記憶するとともに前記各ファイルサーバのリソース情報を受信して記憶する地域情報収集部。
前記各ファイルサーバの設置場所情報を受信し記憶する地理情報受信部。
前記地理情報受信部で受信した前記各ファイルサーバの設置場所情報と前記地域情報収集部で記憶された各地域の地理情報から前記各ファイルサーバの属する各地域を選定しファイルサーバの地域情報とする地理情報解析部。
前記地域情報収集部に記憶された各ファイルサーバのリソース情報から、前記地理情報解析部で選定された地域毎にリソース情報を算出し管理する地域情報解析部。
前記地理情報解析部のファイルサーバの地域情報と前記地域情報解析部で管理された地域毎のリソース情報とによりファイルの記録先となるファイルサーバを決定する記録先決定部。
【００１１】
請求項３は、請求項２のファイル分散配置装置において、前記各ファイルサーバはＧＰＳを備え、前記地理情報受信部において前記ＧＰＳで得た情報により前記各ファイルサーバの設置場所を管理することを特徴としている。
【００１２】
請求項４は、請求項２のファイル分散配置装置において、前記地理情報解析部で選定される各地域は、複数の広い地域内にそれぞれ複数の狭い地域を設定し、前記記録先決定部でのファイルの記録先となるファイルサーバを決定するに際して、広い地域で総ファイル数又は総ファイルサイズの均等化を行い、続いて狭い地域での均等化を行うことを特徴としている。
【発明の効果】
【００１３】
本発明によれば、ファイル（オリジナルデータ又は複製データ）をファイルサーバに保存するに際して、地域単位でのデータ量を均等化させるようにするため、ある地域にデータが集中することを避けることができ、地域災害が発生した場合に、特定の地域に限って膨大な復旧工数を要するといったリスクを回避できる。
また、災害が発生した地域とは別の地域に複製データが必ず存在するため、データの損失（復旧できない）というリスクが回避できる。
【図面の簡単な説明】
【００１４】
【図１】本発明のファイル分散配置装置のネットワーク構成を示すモデル図である。
【図２】本発明のファイル分散配置装置の機能を説明するためのブロック図である。
【図３】ファイルサーバの存在地域の判定方法を説明するためのモデル図である。
【図４】（ａ）は各地域に配置されるファイルサーバの状況を説明するためのモデル図であり、（ｂ）はそれに対応するサーバ情報管理テーブルの例である。
【図５】複製先地域の選択方法を説明するためのモデル図である。
【図６】総ファイル数の少ない地域Ｄ，Ｅ,Ｐが選択された場合の各地域に存在するファイルサーバの状況を示すモデル図である。
【図７】災害対象地域にデータを自動的に復旧させる場合の手順を示す処理フローチャート図である。
【図８】地域を段階的に設定した場合のモデル図である。
【発明を実施するための形態】
【００１５】
本発明のファイル分散配置方法の各工程が実行されるファイル分散配置装置の実施の形態の一例について、図１〜図７を参照しながら説明する。
ファイル分散配置装置は、図１に示すように、運用システムサーバ１に対して、ユーザ側で操作する複数の端末（パーソナルコンピュータ等）２と、複数のファイルサーバ３とがそれぞれ接続されることでネットワークが構築されている。
運用システムサーバ１は、端末２からファイルの書込要求があった場合にファイルサーバ３を選択して書き込み、端末２から書込を行ったファイルの読込要求があった場合にファイルが書き込まれたファイルサーバ３からファイルを読み込む処理が行われる。ファイルの書込に際してどのファイルサーバ３が選択されたかについての情報は、運用システムサーバ１との間でデータの送受信を行うメタデータサーバ４に書込毎にデータベース化されたメタ情報として保管され、このメタ情報は端末２側からのファイルの読込要求があった場合に参照される。
【００１６】
各ファイルサーバ３は、端末２側からファイルの書込要求があった場合にファイルを記録する記録部を有し、複数の地域という範囲に細分化した領域に散在させる。すなわち、各地域は、地球上の土地の複数の領域に該当し、各地域にはそれぞれ複数のファイルサーバ３が散在されている。また、各ファイルサーバ３には、自分の位置情報を取得できるＧＰＳが搭載されている。
【００１７】
運用システムサーバ１は、所望のプログラムがインストールされることで、端末２とファイルサーバ３との間でファイルの書込／読込処理が行われるが、その機能について図２を参照しながら説明する。
運用システムサーバ１は、ファイルサーバ３のＧＰＳから所在地情報を受信する地理情報受信部１１と、各ファイルサーバ３のリソース情報を受信する地域情報収集部１２と、各ファイルサーバ３がどの地域に存在するのかを解析する地理情報解析部１３と、各ファイルサーバ３のリソース情報から各地域でのリソース情報を算出する地域情報解析部１４と、端末２からファイルの書込要求があった場合に記録先となるファイルサーバ３を選択する記録先決定部１５と、を備えて構成されている。
【００１８】
地域情報収集部１１は、細分化した領域である各地域（Ａ，Ｂ，…）の地理情報（緯度経度情報）が記録された地域情報設定ファイル１０から地域情報が読み込まれるようになっている。領域として設定された各地域（Ａ，Ｂ，…）は、例えば円で囲まれた地域であり、地域情報設定ファイル１０には円の中心の緯度・経度と、円の半径が地理情報として記録されることで、所望の面積（半径に依存）を有する地域の範囲が特定されている。各地域は、世界中又は日本国内において分散した領域で設定され、郵便番号、電話番号、MA番号、GPS情報等から派生する地域ＩＤ（Ａ，Ｂ，…）により区別されるようになっている。
地域情報収集部１１において、地域情報設定ファイル１０から読み込まれた各地域の地理情報は、各地域ＩＤに対して、表１に示した地域情報管理テーブルの「緯度」「経度」「半径」に格納する。
【００１９】
【表１】
2011060008.tif 000003
【００２０】
また、地域情報収集部１１は、各地域の各ファイルサーバ３からリソース情報（空き容量、保存ファイル数等）を受信し、各地域ＩＤに対して、表２に示したサーバ情報管理テーブルの「空き容量」「総ファイル数」「総ファイルサイズ」に格納する。
【００２１】
【表２】
2011060008.tif 000004
【００２２】
地理情報受信部１２は、各地域に散在する各ファイルサーバ３が搭載するＧＰＳから、ファイルサーバ３の地理情報をそれぞれ一定間隔毎に受信し、習得した情報を表２のサーバ情報管理テーブルに格納する。
【００２３】
地理情報解析部１３は、各ファイルサーバ３がどの地域に存在するのかを解析する。具体的には、表２のサーバ情報管理テーブルに格納される各ファイルサーバの地理情報と、表１の地域情報管理テーブルに格納される各地域の地理情報を照らし合わせ、当てはまる地域ＩＤを表２のサーバ情報管理テーブルの「地域ＩＤ」に格納する。
【００２４】
すなわち、任意のファイルサーバの存在する地域を判定する場合、図３に示すように、先ず、任意のファイルサーバについて、地域Ａの中心からの東西方向（距離Ｂ）と南北方向（距離Ａ）の緯度差、経度差を算出する。
算出結果を距離に変換して、三平方の定理で山エリアの中心からの直線距離（距離Ｃ）を算出する。
算出した直線距離（距離Ｃ）が地域Ａの半径より大きいので、このファイルサーバは地域Ａには存在しないと判断する。
同様に、地域Ｂの中心からの東西方向（距離Ｅ）と南北方向（距離Ｄ）の緯度差、経度差を算出する。
算出結果を距離に変換して、地域Ｂの中心からの直線距離（距離Ｆ）を算出する。
算出した直線距離（距離Ｆ）が地域Ｂの半径より小さいので、このファイルサーバは地域Ｂに存在すると判断する。
【００２５】
ファイルサーバが地域Ｂに存在しない場合は、地域Ｃ，Ｄ，…と同様の処理が行われることで、ファイルサーバの所属する地域を特定することができる。
【００２６】
上述の処理が実行されることで、各ファイルサーバ３の地理情報やリソース情報は、表２に示すようなサーバ情報管理テーブルで管理される。表２における各サーバの地域ＩＤは、地理情報受信部１２が受信した各ファイルサーバ３の現在位置（地理情報）を、地理情報解析部１３が表１の地域情報と照らし合わせて導き出す。この例では、システムが自動でファイルサーバの存在地域を計算するようにしたが、運用者が静的にファイルサーバの地域情報を設定してもよい。空き容量の値は、地域情報収集部１１が定期的にファイルサーバのリソース情報を収集することにより得た値である。
【００２７】
地域情報解析部１４は、地域単位で各ファイルサーバ３のリソース情報を管理するものであり、表２のサーバ情報管理テーブルに格納される各ファイルサーバ３のリソース情報から、各地域Ａ，Ｂ，…としてのリソース情報を導き出し、表１の地域情報管理テーブルの「総ファイル数」「総ファイルサイズ」に格納する。
【００２８】
記録先決定部１５は、地理情報解析部１３及び地域情報解析部１４からの地域情報及びファイルサーバ情報から、総ファイル数又は総ファイルサイズの小さい地域に存在するファイルサーバ３をファイルの記録先に決定する。
この時、オリジナルのファイルとは別に、複製（例えば２個）を作成する。複製を作成する際には、オリジナルが保管されている地域以外の地域において、総ファイル数又は総ファイルサイズの小さい地域に存在するファイルサーバ３に複製を保管する。
【００２９】
次に、ファイルの記録先であるファイルサーバを選択する手順について説明する。
まず、前記した表１の地域情報管理テーブルから、空き容量平均値＞複製ファイルサイズの地域を全て選択し、その中から、総ファイル数もしくは総ファイルサイズの少ないエリアN個（N：複製数）を抜粋する。
【００３０】
図４（ａ）（ｂ）に示すように、２０台のファイルサーバ３が世界中の１１の領域（地域Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｐ，Ｖ，Ｘ，Ｙ．Ｚ）に分散配置されているとする。各ファイルサーバ３の空き容量と総ファイル数は、図４（ｂ）のサーバ情報管理テーブルに示した状況となっているとする。
ファイルのファイルサーバへの書込に際して、オリジナルの他に複製を２つ作成する場合、オリジナルのファイルサーバへの書込を含めて、書き込み対象とする地域を３つ選択する必要がある。
【００３１】
具体例について図５を参照しながら説明すると、書込要求があったファイルのサイズが６０Ｇバイトの場合、空き容量平均値＞複製ファイルサイズ」である地域を全て選択する。この結果、地域Ａ，Ｃ，Ｄ，Ｅ，Ｐ，Ｖ，Ｘ，Ｙがピックアップされる。
続いて、総ファイル数又は総ファイルサイズ（この例では、総ファイル数）の少ない地域を３つ抜粋すると、太線枠で囲んだ地域Ｄ，Ｅ,Ｐが選択される。
【００３２】
次に、選んだ地域（地域Ｄ，Ｅ,Ｐ）に存在するファイルサーバを、サーバ情報管理テーブルから検索する。
そして、検索結果から、空き容量＞複製ファイルサイズを満たすファイルサーバを抽出する。一地域内で抽出したファイルサーバが複数存在する場合は、書き込みファイル数の少ないファイルサーバを複製先とする。
例えば、地域Ｄ，Ｅ,Ｐで選択されたファイルサーバが図６に示すような状況であった場合、地域Ｄ，Ｅについては一つしか抽出できないため、サーバＩＤ４とサーバＩＤ７が、地域ＰではサーバＩＤ１０、サーバＩＤ１４，サーバＩＤ１８のうち、総ファイル数の少ないサーバＩＤ１４が選択される。
【００３３】
書込要求のあったファイルの記録先を上述したような手順で決定することにより、地域Ｄ、地域Ｅ、地域Ｐいずれかで災害が発生した場合は、災害対象以外の地域からデータ（ファイル）をコピーすることにより災害対象地域にデータを復旧させることができる。
例えば、地域Ｅで災害が発生した場合は、地域Ｄあるいは地域Ｐから対象データ（ファイル）をコピーすることによりデータを復旧させる。復旧作業は、運用者がマニュアルにて指示する場合と、システムが自動で実行する場合がある。
【００３４】
災害発生後に災害対象地域にデータを自動的に復旧させる場合の手順について、図７の処理フローチャートを参照しながら説明する。本処理は、タイマを使用し定期的に起動するものである。
上述したファイル分散配置装置において、障害検出及び復旧処理を行う場合、先ず、チェック対象となるファイルサーバ１台を選出する（ステップ１０１）。
全てのファイルサーバのチェックが完了したかどうかを判断し（ステップ１０２）、選出したファイルサーバの状況（障害）をチェックする（ステップ１０３）。
このチェックは、pingの応答が有るかどうか、必要なプロセスが動作しているかどうかで判断する。
【００３５】
ファイルサーバに障害があった場合（ステップ１０４）、障害と判断されたファイルサーバに、どのようなファイルが保管されていたのか、メタデータサーバ４にアクセスしてメタ情報を得る（ステップ１０５）。
失われたファイルの複製がどこのファイルサーバに存在するのかの情報（ファイルの複製先情報）を検出する（ステップ１０６）。複製が無いファイルはパスする。
【００３６】
災害対象地域にスタンバイしているファイルサーバ（ストレージ）が存在するかチェックする（ステップ１０７）。尚、スタンバイ機とは、予めファイルサーバとして環境構築済みで電源OFFの状態で待機しているサーバ機のことを指す。
【００３７】
災害対象地域にスタンバイしているファイルサーバ（ストレージ）が無い場合は、別の地域に複製先を探す（ステップ１０８）。
スタンバイ機がある場合は、ファイルサーバの遠隔起動を行う（ステップ１０９）。
【００３８】
失われたファイルの複製が存在するファイルサーバ（複製先）から、新しく起動したファイルサーバ（復旧先）にファイルをコピー（復旧）する（ステップ１１０）。
復旧したファイルの保存先情報をメタデータサーバ４に記録（メタ情報の更新）する（ステップ１１１）。
【００３９】
上述したファイル分散配置装置によれば、地域ごとの保管されている総ファイル数／総ファイルサイズを運用システムサーバで管理し、複製を作成する際には、オリジナルが保管されている地域以外の総ファイル数／総ファイルサイズの小さい地域に複製を保管する。
これにより、ある地域が災害に遭遇してもその地域に保管されていたデータは別の地域に複製が存在するためサービスは継続でき、保管される総ファイル数／総ファイルサイズは地域ごとに均等化されるため、復旧作業工数の偏りを無くすことができる。
【００４０】
上述したファイル分散配置装置によれば、各ファイルサーバ３がＧＰＳを搭載することでファイルサーバの現在位置を把握できるので、携帯タイプのサーバをファイルサーバとして使用することができる。
【００４１】
また、図８に示したように、上述したファイル分散配置装置において、地域情報（表１の地域情報管理テーブル及び表２のサーバ情報管理テーブルに格納される地域情報）を２種類設け（広い範囲での地域と狭い範囲での地域の２段階を運用者が定義する）、広い範囲の地域で、さらに狭い範囲の地域といった段階的な範囲を設定し管理するようにしてもよい。
データ量均等化の処理としては、最初に広い範囲（地域）での総ファイル数あるいは総ファイルサイズでの均等化を行い、次にその中での狭い範囲（地域）での均等化を行う。
【００４２】
すなわち、ファイル分散配置装置において、広域領域を地域という範囲に細分化する際、広い地域（エリア）の中での狭い地域（エリア）といった段階的なエリアを設けることにより、災害の影響範囲に応じた効率的な復旧対応が可能となる。例えば、自然災害やテロ災害など、広範囲に影響を及ぼす災害に対応する場合と、一方、停電、局舎災害、設備室災害等の狭範囲での影響に対応する場合など、影響範囲に応じた効率的なファイルの復旧対応が可能となる。
【符号の説明】
【００４３】
１…運用システムサーバ、  ２…端末（パーソナルコンピュータ等）、  ３…ファイルサーバ（記録部）、  ４…メタデータサーバ、  １０…地域情報設定ファイル、  １１…地域情報収集部、  １２…地域情報収集部、  １３…地理情報解析部、  １４…地域情報解析部、  １５…記録先決定部。
【図１】
2011060008.tif 000005
【図２】
2011060008.tif 000006
【図３】
2011060008.tif 000007
【図５】
2011060008.tif 000008
【図６】
2011060008.tif 000009
【図７】
2011060008.tif 000010
【図８】
2011060008.tif 000011
【図４】
2011060008.tif 000012