(57)【要約】【課題】ストレージに特殊な機能を持たすことなく、ファイルの格納ストレージを特定せずにファイルにアクセスすることが可能な分散ストレージを提供する。【解決手段】ホストとネットワークを介して接続された複数のストレージを備える分散ストレージにおいて、ホストからのマルチキャストが到着するストレージにファイルの配置をする。ファイルの配置されたストレージが、当該ファイルのファイル名を保持する。ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する。【選択図】図１
2009129164.tif 000002
【特許請求の範囲】
【請求項１】
ホストとネットワークを介して接続された複数のストレージを備える分散ストレージであって、
前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置手段と、
ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持手段と、
前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答手段と、
を備えることを特徴とした分散ストレージ。
【請求項２】
ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージであって、
ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、
各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置手段を備えることを特徴とした分散ストレージ。
【請求項３】
請求項１又は２に記載の分散ストレージであって、
ストレージにファイルを書き込む際に、各マルチキャストが到達するストレージ群の任意のストレージにファイルを書き込む書き込み手段を更に備えることを特徴とした分散ストレージ。
【請求項４】
請求項１乃至３の何れか１項に記載の分散ストレージであって、
各マルチキャストが到達するストレージ群の任意のストレージにファイルの複製を作成する複製作成手段を更に備えることを特徴とした分散ストレージ。
【請求項５】
請求項１又は２に記載の分散ストレージであって、
ストレージにファイルを書き込む際に、当該ファイルを使用するホストの使用するマルチキャストが到達するストレージ群の中の任意のストレージにファイルを書き込む書き込み手段を更に備えることを特徴とした分散ストレージ。
【請求項６】
請求項１又は５に記載の分散ストレージであって、
ファイルを使用するホストの使用するマルチキャストが到達するストレージ群内の任意のストレージにファイルの複製を作成する複製作成手段を更に備えることを特徴とした分散ストレージ。
【請求項７】
請求項４に記載の分散ストレージであって、ストレージが使用できなくなった際にファイルの複製の作成をすることを特徴とした分散ストレージ。
【請求項８】
請求項４に記載の分散ストレージであって、ストレージが使用できなくなった際に、当該ストレージに到達するマルチキャストの到達するストレージ群内のストレージが格納していたファイルの複製を作成することを特徴とした分散ストレージ。
【請求項９】
請求項１乃至８の何れか１項に記載の分散ストレージであって、使用できなくなったストレージが発生した際に、ホストの使用するマルチキャストを、使用できなくなったストレージを含まないマルチキャストに切り替える切り替え手段を更に備えることを特徴とした分散ストレージ。
【請求項１０】
ホストとネットワークを介して接続された複数のストレージを備える分散ストレージの管理方法であって、
前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置ステップと、
ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持ステップと、
前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答ステップと、
を備えることを特徴とした分散ストレージの管理方法。
【請求項１１】
ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージの管理方法であって、
ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、
各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置ステップを備えることを特徴とした分散ストレージの管理方法。
【請求項１２】
請求項１０又は１１に記載の分散ストレージの管理方法であって、
ストレージにファイルを書き込む際に、各マルチキャストが到達するストレージ群の任意のストレージにファイルを書き込む書き込みステップを更に備えることを特徴とした分散ストレージの管理方法。
【請求項１３】
請求項１０乃至１２の何れか１項に記載の分散ストレージの管理方法であって、
各マルチキャストが到達するストレージ群の任意のストレージにファイルの複製を作成する複製作成ステップを更に備えることを特徴とした分散ストレージの管理方法。
【請求項１４】
請求項１０又は１１に記載の分散ストレージの管理方法であって、
ストレージにファイルを書き込む際に、当該ファイルを使用するホストの使用するマルチキャストが到達するストレージ群の中の任意のストレージにファイルを書き込む書き込みステップを更に備えることを特徴とした分散ストレージの管理方法。
【請求項１５】
請求項１０又は１４に記載の分散ストレージの管理方法であって、
ファイルを使用するホストの使用するマルチキャストが到達するストレージ群内の任意のストレージにファイルの複製を作成する複製作成ステップを更に備えることを特徴とした分散ストレージの管理方法。
【請求項１６】
請求項１３に記載の分散ストレージの管理方法であって、ストレージが使用できなくなった際にファイルの複製の作成をすることを特徴とした分散ストレージの管理方法。
【請求項１７】
請求項１３に記載の分散ストレージの管理方法であって、ストレージが使用できなくなった際に、当該ストレージに到達するマルチキャストの到達するストレージ群内のストレージが格納していたファイルの複製を作成することを特徴とした分散ストレージの管理方法。
【請求項１８】
請求項１０乃至１７の何れか１項に記載の分散ストレージの管理方法であって、使用できなくなったストレージが発生した際に、ホストの使用するマルチキャストを、使用できなくなったストレージを含まないマルチキャストに切り替える切り替えステップを更に備えることを特徴とした分散ストレージの管理方法。
【請求項１９】
ホストとネットワークを介して接続された複数のストレージを備える分散ストレージの管理プログラムであって、
前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置機能と、
ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持機能と、
前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答機能と、
をコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２０】
ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージの管理プログラムであって、
ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、
各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置機能をコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２１】
請求項１９又は２０に記載の分散ストレージの管理プログラムであって、
ストレージにファイルを書き込む際に、各マルチキャストが到達するストレージ群の任意のストレージにファイルを書き込む書き込み機能を更にコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２２】
請求項１９乃至２１の何れか１項に記載の分散ストレージの管理プログラムであって、
各マルチキャストが到達するストレージ群の任意のストレージにファイルの複製を作成する複製作成機能を更にコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２３】
請求項１９又は２０に記載の分散ストレージの管理プログラムであって、
ストレージにファイルを書き込む際に、当該ファイルを使用するホストの使用するマルチキャストが到達するストレージ群の中の任意のストレージにファイルを書き込む書き込み機能を更にコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２４】
請求項１９又は２３に記載の分散ストレージの管理プログラムであって、
ファイルを使用するホストの使用するマルチキャストが到達するストレージ群内の任意のストレージにファイルの複製を作成する複製作成機能を更にコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【請求項２５】
請求項２２に記載の分散ストレージの管理プログラムであって、ストレージが使用できなくなった際にファイルの複製の作成をすることを特徴とした分散ストレージの管理プログラム。
【請求項２６】
請求項２２に記載の分散ストレージの管理プログラムであって、ストレージが使用できなくなった際に、当該ストレージに到達するマルチキャストの到達するストレージ群内のストレージが格納していたファイルの複製を作成することを特徴とした分散ストレージの管理プログラム。
【請求項２７】
請求項１９乃至２６の何れか１項に記載の分散ストレージの管理プログラムであって、使用できなくなったストレージが発生した際に、ホストの使用するマルチキャストを、使用できなくなったストレージを含まないマルチキャストに切り替える切り替え機能を更にコンピュータに実現させることを特徴とした分散ストレージの管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムにおける分散ストレージのファイルアクセス方法に関する。
【背景技術】
【０００２】
本願に関連した分散ファイルシステムでは、図２で示す構成を採用している。そして、ホストからファイルにアクセスする場合は図３に示すように、まずメタサーバ５（ファイル配置管理サーバ）でパス名解決を行った後に、ストレージ２（ファイルサーバ）中のファイルアクセスを行っていた。
【０００３】
なお、メタサーバ５（ファイル配置管理サーバ）に該当する機能がストレージ２の一部として実装されている場合もある。
【０００４】
また、非特許文献１に記載されている分散ファイルシステムでは、図４に示すように、メタサーバ５がパス名解決、データブロックの配置解決を行った後に、ストレージ２でのデータアクセスを行っていた。
【０００５】
この点、特許文献１、特許文献２に記載の技術のように、マルチキャストを用いることにより、メタサーバでのパス名解決を行うという手順を省略する技術も存在する。
【０００６】
特許文献１に記載の技術では、ルーターが該当データを格納したＲＡＩＤ（Redundant Arrays of Inexpensive Disks）モジュールに対してアクセスを誘導するという機能を持つ。また、特許文献２に記載の技術では各ストレージが仮想化ストレージ中のどのファイルを格納しているかを把握するという機能を持つ。
【０００７】
つまり特許文献１及び特許文献２に記載の技術では、ルーターあるいはストレージがマルチキャストでホストからアクセス要求をするための機能を備えるという構成である。そして、負荷分散を行うためにはストレージやルーターが処理を行う必要があった。
【特許文献１】特開２００７−６５７５１号公報
【特許文献２】特開２００１−５１８９０号公報
【非特許文献１】情報処理学会第５７回（平成１０年後期）全国大会講演論文集（１）  発行年月日平成１０年１０月５日  ９９ページ〜１０２ページ
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した本願に関連する技術には以下の２つの問題点があった。
【０００９】
第１の問題点は、分散ストレージでのデータアクセスに必要な手順が多く応答性が悪いことである。その理由は、アクセスの前にデータが格納されたストレージを割り出すという手順を踏む必要があるためである。
【００１０】
第２の問題点は、第１の問題点を解決すべくデータの格納ストレージを割り出さないこととした場合であっても、そのためにネットワークあるいはストレージに専用の機能を持たせる必要が生じることである。その理由は、データの配置をストレージあるいはルーターで管理するためである。
【００１１】
そこで本発明は、ストレージに特殊な機能を持たせずに分散ストレージのアクセス手順を簡略化することが可能な分散ストレージでのファイル配置およびアクセス方法、その装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明によれば、第１の装置としてホストとネットワークを介して接続された複数のストレージを備える分散ストレージであって、前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置手段と、ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持手段と、前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答手段と、を備えることを特徴とした分散ストレージクレーム１が提供される。
【００１３】
更に、第２の装置として、ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージであって、ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置手段を備えることを特徴とした分散ストレージが提供される。
【００１４】
更に、第１の方法として、ホストとネットワークを介して接続された複数のストレージを備える分散ストレージの管理方法であって、前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置ステップと、ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持ステップと、前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答ステップと、を備えることを特徴とした分散ストレージの管理方法が提供される。
【００１５】
更に、第２の方法として、ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージの管理方法であって、ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置ステップを備えることを特徴とした分散ストレージの管理方法が提供される。
【００１６】
更に、第１のプログラムとして、ホストとネットワークを介して接続された複数のストレージを備える分散ストレージの管理プログラムであって、前記ホストからのマルチキャストが到着するストレージにファイルの配置をする配置機能と、ファイルの配置されたストレージが、当該ファイルのファイル名を保持する保持機能と、前記ホストからのファイル名を指定したマルチキャストでのアクセス要求に対して、指定されたファイルを保持するストレージがアクセス対象として応答する応答機能と、をコンピュータに実現させることを特徴とした分散ストレージの管理プログラムが提供される。
【００１７】
更に、第２のプログラムとして、ホストとネットワークを介して接続された複数のストレージを備え、ファイルの格納ストレージを特定せずにマルチキャストによりアクセスを行う分散ストレージの管理プログラムであって、ストレージは要求が届く範囲を限定する複数のマルチキャストのいずれかひとつあるいは複数に属し、各ファイルの複製を、各マルチキャストが到達するストレージに配置する配置機能をコンピュータに実現させることを特徴とした分散ストレージの管理プログラムが提供される。
【発明の効果】
【００１８】
本発明によれば、マルチキャストの到達する範囲のストレージにファイルを配置し、アクセス要求にファイルを特定する情報を付加し、マルチキャストでアクセス要求を送ることから、分散ストレージにおいて、ストレージに特別な機能を持たせずにファイルを格納するストレージを特定することなくファイルにアクセスを行うことが可能となる。
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００２０】
図１を参照すると、本発明の実施の形態はホスト群１と、ストレージ群２と、ストレージ群２中のデータの配置を制御するファイル配置管理サーバ３と、ホスト群１とストレージ群２を接続するネットワーク４を備える。
【００２１】
ホスト群１は、ユーザプログラムが動作するホスト１ａ〜１ｍの群である。また、ストレージ群２はユーザプログラムが使用するデータを格納するストレージ２ａ〜２ｎの群である。
【００２２】
また、ファイル配置管理サーバ３は、ファイルのストレージ群２への配置を決定するファイル配置計画部１２と、ストレージ群２中のファイル配置を制御するファイル配置部１１を備える。
【００２３】
ネットワーク４は、ネットワーク構成管理部１０によりマルチキャストの到達範囲が制御されるネットワークである。
【００２４】
［構成の説明］
ホスト群１は、ユーザプログラムが動作する計算機である。
【００２５】
ストレージ群２は、ユーザデータを格納する記憶装置であり、ホスト群１がユーザデータにアクセス可能な記憶装置である。
【００２６】
ストレージ群２は、磁気記憶装置や光磁気記憶装置といった記憶装置及びそれらのアレイ装置であり、ネットワーク４を介してホスト群１からのアクセス要求を受ける。例としては、ＮＡＳ（Network Attached Storage）等の装置である。また、ストレージ群２は、格納したファイルのファイル名（パス名）をローカルに管理する。
【００２７】
ネットワーク４は、Ｅｔｈｅｒｎｅｔ（登録商標）のようなネットワークであり、ＩＰマルチキャストやＶＬＡＮ等により複数のノード（ストレージ）に同じデータを送ることができる。なお、マルチキャストは、ＶＬＡＮとブロードキャストの技術を用いることにより実現してもよい。また、ネットワーク４の機能ではなく、ホスト群１がほぼ同時に複数のストレージに同じ内容のデータを送信することで実現してもよい。
【００２８】
ネットワーク構成管理部１０は、ネットワーク４のマルチキャストの範囲の設定および記憶を行う。なお、ネットワーク構成管理部１０はネットワーク４の一部であってもよいし、ネットワーク４とは別個の装置であってもよい。
【００２９】
ファイル配置管理サーバ３は、ファイルのストレージ群２への配置を管理する計算機である。
【００３０】
ファイル配置計画部１２は、ファイルのストレージ群２への配置を決定する部分である。
【００３１】
ファイル配置部１１は、ファイル配置計画部１２と協調し、ファイルを複製・削除することで、ストレージ群２中のファイルの配置を制御する部分である。
【００３２】
なお、図１ではファイル配置管理サーバ３を、独立した装置として図示しているが、ファイル配置管理サーバ３はストレージ群２の一部であってもよい。
【００３３】
次に、本実施形態におけるマルチキャストの範囲の決定方法について説明する。
【００３４】
各マルチキャストの到達範囲は、到達するストレージ（ノード）数が均等になるように決定する。すなわち、あるマルチキャストがＮ個のストレージ（ノード）に到達すると定めたのであれば、どのマルチキャストに関してもＮ個のストレージ（ノード）に到達するように到達範囲を定める。また、どのマルチキャストがどのストレージに到達するように設定するかは、巡回的に割り当ててもよいし、乱数で決定してもよいが、異なるマルチキャストで到達するストレージ群は完全に一致してないように決定する。また、各ストレージに複数のマルチキャストが到達してもよい。
【００３５】
なお、各マルチキャストが到達するストレージの総容量は、到達する全データの総容量を超えるように構成する。
【００３６】
また、上述と異なるマルチキャストの範囲の決定方法として、マルチキャストが到達するストレージ群２を、そのマルチキャストを使用するホスト群のストレージアクセスの負荷を超えるスループットを出せるように構成する方法もある。この際、各マルチキャストが到達するストレージ数は同一になる必要はない。そして、このようにすることで、ホストが求めるアクセス性能をストレージが出せることを保証することができる。
また、全てのマルチキャストが到達するストレージが発生しないようにマルチキャストグループを構成することも考えられる。この構成を取ることにより、一台のストレージが使用できなくなった際に、マルチキャストが到達するストレージに欠落が発生しないマルチキャストを作ることができる。
【００３７】
また、異なるマルチキャストの範囲の決定方法として、マルチキャストが到達するストレージ数を、マルチキャストを使用するホスト数に合わせた比率で決定してもよい。
【００３８】
更に、マルチキャストが到達するストレージ数を、マルチキャストグループを使用するホスト群のストレージアクセスの負荷に比例させて決定してもよい。
【００３９】
［動作の説明］
次に、本実施形態の動作について図を用いて説明する。まず本システムでのホスト群１がストレージ群２からデータを読み出す際の動作を図５を用いて説明する。
【００４０】
ホスト群１は読み出し対象のファイルのパス名と、読み出し開始位置のファイル内オフセットアドレスおよび読み出しサイズを指定し、ストレージ群２に対してマルチキャストで読み出し要求を送信する（ステップＳ３００）。次いで、応答到着まで待ち（ステップＳ３０１）、ホスト群１の動作は終了する。なお、本実施形態では、ファイルのパス名と、読み出し開始位置のファイル内オフセットアドレスおよび読み出しサイズを用いてアクセス要求を行うことからファイル全体アクセスだけでなく、部分アクセスを行うことができる。
【００４１】
次に、ホスト群１からの読み出し要求が到着した際のストレージ群２の動作を図６を用いて説明する。
【００４２】
ホスト群１から読み出し要求が到着すると、ストレージ群２の各ストレージは、読み出し要求で指定されたファイルがストレージ内にあるかを検索する（ステップＳ４００）。そして、指定されたファイルがある場合にはステップＳ４０２に移行し、ファイルがない場合には動作を終了する（ステップＳ４０１）。
【００４３】
ステップＳ４０２では、ステップＳ４００で検索したファイルを読み出し要求で指定されたオフセットアドレスから指定されたサイズ分読み出す（ステップＳ４０２）。そして、読み出したデータを応答としてホスト群１に送信し（ステップＳ４０３）動作を終了する。
【００４４】
次に、ファイルの実体のストレージ群２への割り当ての決定方法について説明する。
【００４５】
ファイルの割り当てはファイル配置計画部１２で決定される。ファイル配置計画部１２が割り当ての決定を要求された際の動作を図７を用いて説明する。
【００４６】
まず、ファイル配置が未決定のマルチキャストを選択する（ステップＳ５００）。ここで、未決定のものがない場合にはステップＳ５０４に移行し、未決定のものがある場合にはステップＳ５０２に移行する（ステップＳ５０１）。
【００４７】
ステップＳ５０２では、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ５００で選択したマルチキャストが到達するストレージ群を、リストアップする（ステップＳ５０２）。
【００４８】
なお、ステップＳ５０２でのマルチキャストが到達するストレージのリストアップのために、ネットワーク構成管理部１０は、マルチキャストが到達するストレージ（ノード）を把握し、問い合わせを受けた場合にリストを返却する機能を備える。また、マルチキャストでメッセージが到着するストレージを、ネットワーク構成管理部１０が管理するのではなくファイル配置管理サーバ中のデータベース等で管理するようにしてもよい。
【００４９】
次いで、ステップＳ５０２でリストアップしたストレージの中からからファイルを割り当てるストレージを乱数を用いて決定し（ステップＳ５０３）、再度ステップＳ５００に移行する。
【００５０】
ステップＳ５０４で、ネットワーク構成管理部１０に、割り当て先として決定したストレージを返却し動作を終了する（ステップＳ５０４）。
【００５１】
次に、本システムでのホストからストレージへファイルを書き込む際の動作を図８を用いて説明する。
【００５２】
ホスト群１は、ファイル配置管理サーバ３にファイルを書き込むべきストレージを決定する要求を送出する（ステップＳ６００）。
【００５３】
次いで、応答を待ち（ステップＳ６０１）、ファイル配置管理サーバ３に指定されたストレージに書き込みを行う（ステップＳ６０２）。
【００５４】
ファイル配置管理サーバ３がホスト群１から書き込むべきストレージの決定を要求された際には、上述したファイルの実体のストレージ群２への割り当ての決定方法を用いて決定し、応答をホスト群１に返却する。
【００５５】
なお、この際、一部のマルチキャストが到達するストレージへのみ割り当て、後でファイル複製の再配置によりファイルの複製を作るようにしてもよい。ステップＳ６０２をストレージ単位に逐次的に行う場合には、このようにすることで書き込み処理の応答時間を短縮することができる。また、２台以上のストレージに書き込みを行えば、ストレージの障害発生時にデータを失う可能性を低くすることもできる。
【００５６】
ファイル配置管理サーバ３でのファイルの複製の再配置の方法について図９を用いて説明する。
【００５７】
まず、ファイル配置計画部１２が、未処理のマルチキャストを選択し（ステップＳ７００）、未処理があった場合はステップＳ７０２へ、ない場合はステップＳ７０６へ移行する（ステップＳ７０１）。
【００５８】
ステップＳ７０２では、ファイル配置計画部１２が、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ７００で選択したマルチキャストが到達するストレージをリストアップする（ステップＳ７０２）。
【００５９】
なお、ステップＳ７０２でのマルチキャストが到達するストレージのリストアップのために、ネットワーク構成管理部１０は、マルチキャストが到達するストレージ（ノード）を把握し、問い合わせを受けた場合にリストを返却する機能を備える。また、マルチキャストでメッセージが到着するストレージをネットワーク構成管理部１０ではなくファイル配置管理サーバ中のデータベース等で管理するようにしてもよい。
【００６０】
次いで、ステップＳ７０２でリストアップしたストレージに該当ファイルが格納されているかを検索し（ステップＳ７０３）、格納されていた場合にはステップＳ７００へ、ない場合にはステップＳ７０５へ移行する（ステップＳ７０４）。
【００６１】
なお、ステップＳ７０４でストレージに該当ファイルが格納されているかを確認できるように、ファイル配置管理サーバ３は、各ストレージへのファイルの割り当てを管理する機能を備える。
【００６２】
また、ファイル配置管理サーバ３が管理するのではなく該当ストレージに対し該当ファイルを格納しているかを問い合わせて確認するようにしてもよい。この方法では、ファイル配置管理サーバ３がストレージにどのファイルを格納しているかを把握している必要がない。すなわち、システム全体のファイルの配置を永続的に把握する主体を設ける必要がないという利点がある。
【００６３】
ステップＳ７０５では、ステップＳ７０２でリストアップしたストレージの中からファイルを割り当てるストレージを乱数を用いて決定し、ステップＳ７００に移行する。
【００６４】
ステップＳ７０６では、割り当てられたストレージがある場合ステップＳ７０７へ移行し、なければ動作を終了する。
【００６５】
ステップＳ７０７では、ファイル配置計画部１２が、ファイル配置部１１に指示しステップＳ７０５で決定したストレージに該当ファイルをコピーする。そして、コピーが完了したら動作を終了する。
【００６６】
次に、本システムで、ストレージ群２に障害等が発生しストレージ群２の中の一部のストレージが使用できなくなった場合の動作について説明する。
【００６７】
ネットワーク構成管理部１０は、使用できなくなったストレージに到達するマルチキャストの通信範囲を使用できなくなったストレージに到達しない別のマルチキャストの通信範囲になるようにネットワークの構成を変更する。これにより使用できないストレージが発生した場合でもデータへのアクセスを保障することができる。 
【００６８】
あるいは、使用できなくなったストレージに到達するマルチキャストを使用しているホストが、使用するマルチキャストを使用できなくなったストレージに到達しない別のマルチキャストに変更する。この方法でも使用できないストレージが発生した場合でもデータへのアクセスを保障することができる。 
【００６９】
更に、障害により使用できないストレージが発生した場合、全ファイルについて、ファイル配置管理サーバ３でのファイルの複製の再配置を行い、全てのマルチキャストの通信範囲に全ファイルがアクセス可能になるようにする。そして、再配置完了後ホストの使用するマルチキャストの通信範囲あるいは使用するマルチキャストを元に戻す。このようにすることで、使用できなくなったストレージに到達するマルチキャストについても全ファイルがアクセス可能となる。これにより使用できなくなったストレージが発生した際に使用するマルチキャストを変更することで発生したストレージへの負荷不均衡を改善することができる。
【００７０】
また、ストレージ群２に障害等が発生した場合の対応方法として、ファイル配置決定部１１でファイルの複製を配置するストレージを決定する際に、マルチキャストが到達するストレージ中の２つ以上のストレージに同一のファイルを割り当てるという方法も考えられる。このようにすることで、使用できないストレージが発生した場合にも、マルチキャストを変更することなく全ファイルにアクセスできることが保障される。
【００７１】
［発明の他の実施の形態］
ファイル配置決定部１１のファイル配置先ストレージの決定方法について上述の方法とは異なる方法を説明する。
ファイルの配置先ストレージの割り当てはファイル配置計画部１２で決定される。
【００７２】
ファイル配置計画部１２の動作を図１０を用いて説明する。
【００７３】
まず、ファイルを使用するホストのリストを入手する（ステップＳ８００）。なお、本例では、ファイルを使用するホストが事前にシステムに設定されている。そして、ステップＳ８００においてファイルを使用するホストを把握するために、ファイル配置管理サーバ３等でファイルを使用するホストのリストをデータベースとして予め保持しておく。
【００７４】
次に、未処理のマルチキャストを選択する（ステップＳ８０１）未処理のものがない場合にはステップＳ８０７に移行し、ある場合にはステップＳ８０３に移行する（ステップＳ８０２）。
【００７５】
ステップＳ８０３では、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ８０１で選択したマルチキャストを使用するホストをリストアップする（ステップＳ８０３）。なお、ステップＳ８０３においてマルチキャストを使用するホストを把握するために、ネットワーク構成管理部１０あるいは、ファイル配置管理サーバ３等で、各マルチキャストを使用するホストのリストをデータベースとして保持する。
【００７６】
次いで、ステップＳ８０３でリストアップしたホスト群にステップＳ８００でリストアップしたホスト群が含まれる場合にはステップＳ８０５へ、含まれない場合はステップＳ８０１へ移行する（ステップＳ８０４）。
【００７７】
ステップＳ８０５では、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ８０１で選択したマルチキャストが到達するストレージをリストアップする（ステップＳ８０５）。なお、ステップＳ８０５でのマルチキャストが到達するストレージ群２のリストアップのために、ネットワーク構成管理部１０は、マルチキャストが到達するストレージ（ノード）を把握し、問い合わされた場合にはリストを返却できるようにしている。
【００７８】
また、マルチキャストでメッセージが到着するストレージをネットワーク構成管理部１０ではなくファイル配置管理サーバ３中のデータベース等で管理するようにしていてもよい。
【００７９】
次いで、ステップＳ８０５でリストアップしたストレージからファイルを割り当てるストレージを乱数を用いて決定し（ステップＳ８０６）、ステップＳ８０１に移行する。
【００８０】
ステップＳ８０７では、決定したストレージを返却し終了する。
【００８１】
このようにすることで、ファイルを使用するホストが使用するマルチキャストの到達するストレージにのみ、ファイルの複製を配置することができる。すなわち、ストレージ全体での容量効率が向上する。
【００８２】
次に、ファイルを使用するホストが追加された場合や、ストレージに障害が発生した場合等にファイルの複製を再配置する際の動作について図１１を用いて説明する。
【００８３】
まず、ファイルを使用するホストのリストを入手する（ステップＳ９００）。
【００８４】
次に、ファイル配置計画部１２が、未処理のマルチキャストを選択し（ステップＳ９０１）、未処理があった場合はステップＳ９０３へ、ない場合はステップＳ９０９へ移行する（ステップＳ９０２）。
【００８５】
ステップＳ９０３では、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ９０１で選択したマルチキャストを使用するホストをリストアップする。
【００８６】
次いで、ステップＳ９０３でリストアップしたホストにステップＳ９００でリストアップしたホストが含まれる場合にはステップＳ９０５へ、含まれない場合はステップＳ９０１へ移行する（ステップＳ９０４）。
【００８７】
ステップＳ９０５では、ネットワーク構成管理部１０から入手したマルチキャストの構成情報を元にステップＳ９０１で選択したマルチキャストが到達するストレージをリストアップする。
【００８８】
次いで、ステップＳ９０５でリストアップしたストレージに該当ファイルが格納されているかを検索し（ステップＳ９０６）、格納されていた場合にはステップＳ９０１へ、ない場合にはステップＳ９０８へ移行する（ステップＳ９０７）。
【００８９】
ステップＳ９０８では、ステップＳ９０５でリストアップしたストレージからファイルを割り当てるストレージを乱数を用いて決定し、ステップＳ９０１に移行する。
【００９０】
ステップＳ９０９では、割り当てら得たストレージがある場合ステップＳ９１０へ移行し、なければ動作を終了する。
【００９１】
ステップＳ９１０では、ファイル配置部１１に指示しステップＳ９０８で決定したストレージに該当ファイルをコピーし、コピーが完了したら終了する（ステップＳ９１０）。
【００９２】
このようにすることで、ファイルを使用するホストが使用するマルチキャストの到達するストレージにのみ、ファイルの複製を配置することができる。すなわち、ストレージ全体での容量効率が向上する。
【００９３】
なお上述したステップＳ９００乃至Ｓ９１０を行うために、本実施形態では下述する構成を備える。
【００９４】
ステップＳ９００のファイルを使用するホスト群を把握するために、ファイル配置管理サーバ３等でファイルを使用するホストのリストをデータベースとして保持する。
【００９５】
ステップＳ９０３でのマルチキャストを使用するホストを把握するために、ネットワーク構成管理部１０あるいは、ファイル配置管理サーバ３等で、マルチキャストを使用するホストのリストをデータベースとして保持する。
【００９６】
ステップＳ９０５でのマルチキャストが到達するストレージ群２のリストアップのために、ネットワーク構成管理部１０は、マルチキャストが到達するストレージ（ノード）を把握し、問い合わされた場合にはリストを返却できるようにしている。また、マルチキャストでメッセージが到着するストレージをファイル配置管理サーバ中のデータベース等で管理していてもよい。
【００９７】
ステップＳ９０６でストレージに該当ファイルが格納されているかを確認できるように、ファイル配置管理サーバ３は、各ストレージへのファイルの割り当てを管理する。
【００９８】
また、該当ストレージ群２に対し該当ファイルを格納しているかを問い合わせて確認してもよい。この方法では、ファイル配置管理サーバがストレージにどのファイルを格納しているかを把握している必要がない。すなわち、システム全体のファイルの配置を永続的に把握する主体が必要ない。
【００９９】
次に、ファイルの実体のストレージ群２への割り当ての決定方法および、ファイル配置管理サーバ３でのファイルの複製の再配置の方法でのファイルを割り当てるストレージの決定方法の別の例を説明する。本例ではストレージの負荷状態を考慮する。
【０１００】
図７のステップＳ５０３、図９のステップＳ７０５、図１０のステップＳ８０６、図１１のステップＳ９０８でのストレージ群２から割り当てるストレージを、ストレージ群２の負荷履歴から最も負荷が低いストレージにしてもよい。
【０１０１】
このようにすることで、マルチキャストが到達するストレージ間の負荷バランスを取ることが可能となる。
【０１０２】
また、図７のステップＳ５０３、図９のステップＳ７０５、図１０のステップＳ８０６、図１１のステップＳ９０８でのストレージ群２の中から割り当てるストレージを、ストレージの空き容量が最も大きいストレージにしてもよい。
【０１０３】
このようにすることで、マルチキャストが到達するストレージ間の使用容量バランスを取ることが可能となる。
【０１０４】
更に、図７のステップＳ５０３、図９のステップＳ７０５、図１０のステップＳ８０６、図１１のステップＳ９０８でストレージを決定する際、複数のマルチキャストが到達するストレージに優先的に割り当てを行ってもよい。
【０１０５】
このようにすることでストレージ群２全体の使用容量を削減することが可能となる。
【０１０６】
以上詳細に説明した本発明の実施形態は、以下の効果を奏する。
【０１０７】
第１の効果は、分散ストレージにおいて、ストレージに特殊な機能を持たせずにファイルを格納するストレージを特定せずファイルにアクセスできることである。
【０１０８】
その理由は、マルチキャストの到達する範囲のストレージにファイルを配置し、アクセス要求にファイルを特定する情報を付加し、マルチキャストでアクセス要求を送るためである。
【０１０９】
第２の効果は、ストレージに他のストレージの状況を把握する機能を持たすことなく、ストレージ間の負荷分散をすることが可能となることである。
【０１１０】
その理由は、各ホストからマルチキャストを用いてストレージにアクセス要求を送るシステムにおいて、到達するストレージが異なる複数のマルチキャストを設定し、各ホストが使用するマルチキャストを選択することで負荷分散が実現されるためである。
【０１１１】
第３の効果は、複数のマルチキャストにより、アクセスするストレージの範囲を変えながら、ファイルへのアクセスを保障することが可能となることである。その理由は、各マルチキャストが到着するストレージ群２の１台以上に各ファイルの複製を配置するためである。
【０１１２】
なお、分散ストレージでのファイル配置装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。
【図面の簡単な説明】
【０１１３】
【図１】本発明の実施形態の基本的構成を表す図である。
【図２】従来のストレージの構成を示したブロック図である。
【図３】従来のストレージでのデータアクセスの手順を示したフローチャートである。
【図４】従来のストレージでのデータアクセスの別の手順を示したフローチャートである。
【図５】本発明でのホストからの読み出し要求の手順を示したフローチャートである。
【図６】本発明でのストレージの読み出し要求の処理手順を示したフローチャートである。
【図７】本発明でのファイルの格納先ストレージの決定手順を示したフローチャートである。
【図８】本発明でのホストからの書き込み要求の手順を示したフローチャートである。
【図９】本発明でのファイルの格納先ストレージの再配置先の決定手順を示したフローチャートである。
【図１０】本発明でのファイルの格納先ストレージの別の決定手順を示したフローチャートである。
【図１１】本発明でのファイルの格納先ストレージの再配置先の別の決定手順を示したフローチャートである。
【符号の説明】
【０１１４】
１  ホスト群
１ａ、１ｂ、１ｍ  ホスト
２  ストレージ群
２ａ、２ｂ、２ｎ  ストレージ
３  ファイル配置管理サーバ
４  ネットワーク
５  メタサーバ
１０  ネットワーク構成管理部
１１  ファイル配置部
１２  ファイル配置計画部
【図１】
2009129164.tif 000003
【図２】
2009129164.tif 000004
【図３】
2009129164.tif 000005
【図４】
2009129164.tif 000006
【図５】
2009129164.tif 000007
【図６】
2009129164.tif 000008
【図７】
2009129164.tif 000009
【図８】
2009129164.tif 000010
【図９】
2009129164.tif 000011
【図１０】
2009129164.tif 000012
【図１１】
2009129164.tif 000013