(57)【要約】【課題】チャンクに分割されたファイルを効率良く読み出すことを可能にする。【解決手段】ストレージノードは、前記データ塊の再配置の依頼を受けたときに、インデックス情報が、どのストレージノードに格納されているのかをメタサーバ装置に問い合わせるデータ再配置処理依頼受付部を有し、メタサーバ装置はマッピング情報を格納するメタデータ格納部と、マッピング情報に基づきインデックス情報を格納するストレージノードをデータ再配置処理依頼受付部に通知するメタデータ管理部とを有し、ストレージノードはインデックス情報を格納するストレージノードからインデックス情報を取得するコンテンツインデックス送受信部と、インデックス情報に基づきデータ塊の配置位置の計算するデータ塊配置位置計算部と、計算された配置位置に基づき、他のストレージノードとデータ塊の交換により再配置を行うデータ塊送受信部も有する。【選択図】図７
2010238038.tif 000002
【特許請求の範囲】
【請求項１】
メタサーバ装置と複数のストレージノードが接続されており、複数のデータ塊により構成されるチャンクを格納する分散ファイルシステムであって、
前記複数のストレージノードそれぞれは、前記データ塊の再配置の依頼を受けたときに、前記データ塊が、どのようなデータであり、どの前記ストレージノードに格納されているかが記述されたインデックス情報が、どの前記ストレージノードに格納されているのかを前記メタサーバ装置に問い合わせるデータ再配置処理依頼受付部を有し、
前記メタサーバ装置は、前記インデックス情報を格納している前記ストレージノードを記述したマッピング情報を格納するメタデータ格納部と、
前記データ再配置処理依頼受付部により前記インデックス情報がどの前記ストレージノードに格納されているのかを問い合わされたときに、前記メタデータ格納部に格納された前記マッピング情報に基づき、前記インデックス情報を格納している前記ストレージノードを前記データ再配置処理依頼受付部に通知するメタデータ管理部と、を有し、
前記複数のストレージノードそれぞれは、前記データ再配置処理依頼受付部が前記メタデータ管理部により前記インデックス情報を格納している前記ストレージノードを通知されたとき、前記データ再配置処理依頼受付部からの依頼により、前記インデックス情報が格納されている前記ストレージノードから前記インデックス情報を取得するコンテンツインデックス送受信部と、
前記コンテンツインデックス送受信部により前記インデックス情報を取得したときに、前記データ再配置処理依頼受付部からの依頼により、前記インデックス情報に基づき、前記データ塊の配置位置の計算を行うデータ塊配置位置計算部と、
前記データ塊配置位置計算部により前記データ塊の配置位置の計算されたときに、前記データ塊配置位置からの依頼により、前記データ塊配置位置計算部により計算された前記データ塊の配置位置に基づき、他の前記ストレージノードと前記データ塊の交換をし、前記データ塊の再配置を行うデータ塊送受信部も有することを特徴とする分散ファイルシステム。
【請求項２】
前記ストレージノードそれぞれの前記データ再配置処理依頼受付部は、前記データ塊送受信部による前記データ塊の再配置が完了した通知を前記データ塊配置位置計算部から受けたときに、前記メタサーバ装置の前記メタデータ管理部に前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を依頼し、
前記メタサーバ装置のメタデータ部は、前記データ再配置処理依頼受付部に依頼により、前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を行うことを特徴とする請求項１に記載の分散ファイルシステム。
【請求項３】
データ再配置処理装置も接続されており、
前記データ再配置処理装置は、前記データ塊の再配置が行われていないファイルについての情報を格納する未処理コンテンツ管理情報格納部と、
前記未処理コンテンツ管理情報格納部から、前記データ塊の再配置のおこなわれていない前記ファイルの情報を取得したときに、前記データ塊の再配置のおこなわれていない前記ファイルに対する前記データ塊の再配置を前記ストレージノードそれぞれの前記データ再配置処理依頼受付部に依頼するデータ再配置処理依頼部と、を有し、
前記ストレージノードそれぞれの前記データ再配置処理依頼受付部は、前記データ塊送受信部による前記データ塊の再配置が完了した通知を前記データ塊配置位置計算部から受けたときに、前記データ配置処理装置の前記データ配置処理依頼部に前記データ塊の再配置が完了の通知し、
前記データ再配置処理装置の前記データ再配置依頼部は、前記データ再配置処理依頼受付部から前記データ塊の再配置の完了の通知を受けたときに、前記未処理コンテンツ管理情報格納部から前記データ塊の再配置の完了した前記ファイルについての情報を削除することを特徴とする請求項１または２に記載の分散ファイルシステム。
【請求項４】
クライアント装置も接続されており、
前記マップング情報は、前記ファイルを構成する前記チャンクの識別情報と、前記各チャンクが、どの前記ストレージノードに格納されているのか、どれくらいのサイズであるのかも記述されており、
前記クライアント装置は、前記ファイルの書き込みの依頼を受けるファイルアクセス部と、
前記ファイルアクセス部が前記ファイルの書き込みの依頼を受けたときに、前記ファイルアクセス部からの依頼により、前記メタサーバ装置の前記メタデータ部に前記マッピングデータ情報を問い合わせるメタデータアクセス部と、を有し、
前記メタサーバ装置の前記メタデータ管理部は、前記メタデータアクセス部により前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納部に格納された前記マッピング情報を前記クライアント装置に通知し、
前記クライアント装置は、前記メタデータ管理部により前記マッピング情報が通知されたときに、前記ファイルアクセス部からの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの書き込みを依頼するチャンクアクセス部も有し、
前記ストレージノードそれぞれは、前記チャンクの格納されたチャンク格納部と、
前記チャンクアクセス部から前記チャンクの書き込みの依頼を受けたときに、前記チャンクを前記格納部に格納するチャンク管理部も有し、
前記ストレージノードそれぞれの前記チャンク管理部は、前記チャンクの書き込みを完了したときに、前記クライアント装置の前記ファイルアクセス部に前記チャンクの書き込みの完了を通知し、
前記クライアント装置の前記ファイルアクセス部は、前記チャンク管理部から前記チャンクの書き込みの完了の通知を受けたときに、前記メタデータアクセス部に前記チャンクの書き込みの完了を通知し、
前記クライアント装置の前記メタデータアクセス部は、前記ファイルアクセス部から前記チャンクの書き込みの完了の通知を受けたときに、前記メタサーバ装置の前記メタデータ部に前記チャンクの書き込みの完了を通知し、
前記メタサーバ装置の前記メタデータ部は、前記メタデータアクセス部から前記チャンクの書き込みの完了の通知を受けたときに、前記チャンクの書き込みの完了した前記ファイルを前記データ塊の再配置の完了していないファイルとして前記未処理コンテンツ管理情報格納部に登録することを特徴とする請求項１から３のいずれか１項に記載の分散ファイルシステム。
【請求項５】
前記クライアント装置の前記ファイルアクセス部は、前記ファイルの読み出しの依頼も受け、
前記クライアント装置の前記メタデータアクセス部は、前記ファイルの読み出しの依頼を受けたときに、前記ファイルアクセス部からの依頼により、前記メタサーバ装置の前記メタデータ部に前記マッピングデータ情報を問い合わせ、
前記メタサーバ装置の前記メタデータ管理部は、前記メタデータアクセス部により前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納部に格納された前記マッピング情報を前記クライアント装置に通知し、
前記クライアント装置の前記チャンクアクセス部は、前記メタデータ管理部により前記マッピング情報が通知されたときに、前記ファイルアクセス部からの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの読み出しを依頼し、
前記ストレージノードそれぞれの前記チャンク管理部は、前記チャンクアクセス部から前記チャンクの読み出しの依頼を受けたときに、前記チャンクを前記格納部から読み出すことを特徴とする請求項１から４のいずれか１項に記載の分散ファイルシステム。
【請求項６】
複数のストレージノードそれぞれによる、前記データ塊の再配置の依頼を受けたときに、前記データ塊が、どのようなデータであり、どの前記ストレージノードに格納されているかが記述されたインデックス情報が、どの前記ストレージノードに格納されているのかを前記メタサーバ装置に問い合わせるデータ再配置処理依頼受付ステップを有し、
メタサーバ装置による、前記インデックス情報を格納している前記ストレージノードを記述したマッピング情報を格納するメタデータ格納ステップと、
前記データ再配置処理依頼受付ステップにより前記インデックス情報がどの前記ストレージノードに格納されているのかを問い合わされたときに、前記メタデータ格納ステップに格納された前記マッピング情報に基づき、前記インデックス情報を格納している前記ストレージノードを前記データ再配置処理依頼受付ステップに通知するメタデータ管理ステップと、を有し、
前記複数のストレージノードそれぞれよる、前記データ再配置処理依頼受付ステップが前記メタデータ管理ステップにより前記インデックス情報を格納している前記ストレージノードを通知されたとき、前記データ再配置処理依頼受付ステップからの依頼により、前記インデックス情報が格納されている前記ストレージノードから前記インデックス情報を取得するコンテンツインデックス送受信ステップと、
前記コンテンツインデックス送受信ステップにより前記インデックス情報を取得したときに、前記データ再配置処理依頼受付ステップからの依頼により、前記インデックス情報に基づき、前記データ塊の配置位置の計算を行うデータ塊配置位置計算ステップと、
前記データ塊配置位置計算ステップにより前記データ塊の配置位置の計算されたときに、前記データ塊配置位置からの依頼により、前記データ塊配置位置計算ステップにより計算された前記データ塊の配置位置に基づき、他の前記ストレージノードと前記データ塊の交換をし、前記データ塊の再配置を行うデータ塊送受信ステップも有することを特徴とする分散ファイル格納方法。
【請求項７】
前記ストレージノードそれぞれによる前記データ再配置処理依頼受付ステップにより、前記データ塊送受信ステップによる前記データ塊の再配置が完了した通知を前記データ塊配置位置計算ステップから受けたときに、前記メタサーバ装置の前記メタデータ管理ステップに前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を依頼し、
前記メタサーバ装置によるメタデータステップは、前記データ再配置処理依頼受付ステップに依頼により、前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を行うことを特徴とする請求項６に記載の分散ファイル格納方法。
【請求項８】
データ再配置処理装置による、前記データ塊の再配置が行われていないファイルについての情報を格納する未処理コンテンツ管理情報格納ステップと、
前記未処理コンテンツ管理情報格納ステップから、前記データ塊の再配置のおこなわれていない前記ファイルの情報を取得したときに、前記データ塊の再配置のおこなわれていない前記ファイルに対する前記データ塊の再配置を前記ストレージノードそれぞれの前記データ再配置処理依頼受付ステップに依頼するデータ再配置処理依頼ステップと、を有し、
前記ストレージノードそれぞれによる前記データ再配置処理依頼受付ステップにより、前記データ塊送受信ステップによる前記データ塊の再配置が完了した通知を前記データ塊配置位置計算ステップから受けたときに、前記データ配置処理装置の前記データ配置処理依頼ステップに前記データ塊の再配置が完了の通知し、
前記データ再配置処理装置による前記データ再配置依頼ステップにより、前記データ再配置処理依頼受付ステップから前記データ塊の再配置の完了の通知を受けたときに、前記未処理コンテンツ管理情報格納ステップから前記データ塊の再配置の完了した前記ファイルについての情報を削除することを特徴とする請求項６または７に記載の分散ファイル格納方法。
【請求項９】
前記マップング情報は、前記ファイルを構成する前記チャンクの識別情報と、前記各チャンクが、どの前記ストレージノードに格納されているのか、どれくらいのサイズであるのかも記述されており、
クライアント装置による、前記ファイルの書き込みの依頼を受けるファイルアクセスステップと、
前記ファイルアクセスステップが前記ファイルの書き込みの依頼を受けたときに、前記ファイルアクセスステップからの依頼により、前記メタサーバ装置による前記メタデータステップに前記マッピングデータ情報を問い合わせるメタデータアクセスステップと、を有し、
前記メタサーバ装置による前記メタデータ管理ステップにより、前記メタデータアクセスステップにより前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納ステップに格納された前記マッピング情報を前記クライアント装置に通知し、
前記クライアント装置による、前記メタデータ管理ステップにより前記マッピング情報が通知されたときに、前記ファイルアクセスステップからの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの書き込みを依頼するチャンクアクセスステップも有し、
前記ストレージノードそれぞれによる、前記チャンクの格納されたチャンク格納ステップと、
前記チャンクアクセスステップから前記チャンクの書き込みの依頼を受けたときに、前記チャンクを前記格納ステップに格納するチャンク管理ステップも有し、
前記ストレージノードそれぞれによる前記チャンク管理ステップにより、前記チャンクの書き込みを完了したときに、前記クライアント装置による前記ファイルアクセスステップに前記チャンクの書き込みの完了を通知し、
前記クライアント装置による前記ファイルアクセスステップにより、前記チャンク管理ステップから前記チャンクの書き込みの完了の通知を受けたときに、前記メタデータアクセスステップに前記チャンクの書き込みの完了を通知し、
前記クライアント装置による前記メタデータアクセスステップにより、前記ファイルアクセスステップから前記チャンクの書き込みの完了の通知を受けたときに、前記メタサーバ装置による前記メタデータステップに前記チャンクの書き込みの完了を通知し、
前記メタサーバ装置による前記メタデータステップは、前記メタデータアクセスステップから前記チャンクの書き込みの完了の通知を受けたときに、前記チャンクの書き込みの完了した前記ファイルを前記データ塊の再配置の完了していないファイルとして前記未処理コンテンツ管理情報格納ステップに登録することを特徴とする請求項６から８のいずれか１項に記載の分散ファイル格納方法。
【請求項１０】
前記クライアント装置による前記ファイルアクセスステップにより、前記ファイルの読み出しの依頼も受け、
前記クライアント装置による前記メタデータアクセスステップは、前記ファイルの読み出しの依頼を受けたときに、前記ファイルアクセスステップからの依頼により、前記メタサーバ装置による前記メタデータステップに前記マッピングデータ情報を問い合わせ、
前記メタサーバ装置による前記メタデータ管理ステップは、前記メタデータアクセスステップにより前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納ステップに格納された前記マッピング情報を前記クライアント装置に通知し、
前記クライアント装置の前記チャンクアクセスステップは、前記メタデータ管理ステップにより前記マッピング情報が通知されたときに、前記ファイルアクセスステップからの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの読み出しを依頼し、
前記ストレージノードそれぞれによる前記チャンク管理ステップは、前記チャンクアクセスステップから前記チャンクの読み出しの依頼を受けたときに、前記チャンクを前記格納ステップから読み出すことを特徴とする請求項６から９のいずれか１項に記載の分散ファイル格納方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルをチャンクに分割し、分散して格納する分散ファイルシステム及び分散ファイル格納に方法に関する。
【背景技術】
【０００２】
ファイルをチャンクに分割して格納する方法を用いる分散ファイルシステムがある。チャンクとはファイルを任意のサイズで分割した際の断片のことを指す。このような分散ファイルシステムをチャンク分割型分散ファイルシステムと呼ぶことにする。例えば、非特許文献１、２、３には、このチャンク分割型分散ファイルシステムの一例が記載されている。図１に示すように、このチャンク分割型分散ファイルシステムは、クライアント装置と、メタサーバ装置とストレージ装置とから構成されている。
【０００３】
チャンクのサイズの決め方としてはいろいろ考えられる。例えば、固定長である場合や、ファイルごとに指定される場合、または、何らかのルールに基づき計算される場合などが考えられる。以下では、ファイルが分割されなかった場合も、1チャンクに分割されたと表現することにする。
【０００４】
図１に示した構成を有するチャンク分割型分散ファイルシステムは、例えば、次のように動作する。クライアント装置がファイルの書き込みを行う場合、まず、クライアント装置は、メタサーバ装置を用いてファイルを開き、次に、開かれたファイルの識別子と、必要に応じて、書き込みを開始する位置（例えば、ＵＮＩＸ（登録商標）での書き込み、pwrite）と書き込まれるファイルのサイズをメタサーバ装置に通知する。
【０００５】
メタサーバ装置は、書き込まれるファイルを格納する領域がストレージ装置中にまだ確保済みでない場合には、システムに特有のルールなどに基づき、書き込まれるデータを複数のチャンクに分割し、それぞれに識別子を割り当てる。メタサーバ装置は、このチャンクそれぞれを格納するストレージ装置を決定し、ストレージ装置上の領域を確保し、このチャンクそれぞれのチャンクサイズとチャンク識別子と格納されるストレージノードのＩＤ、それぞれのストレージノードのＩＤが記述されたリストをクライアント装置に返す。このチャンクそれぞれのチャンクサイズとチャンク識別子と格納されるストレージノードのＩＤ、それぞれのストレージノードのＩＤが記述されたリストをマッピング情報と呼ぶことにする。マッピング情報は、メタサーバ装置上のメタデータとして記録される。メタサーバ装置は、書き込まれるファイルを格納する領域が確保済みである場合は、この格納先についての情報をクライアント装置に返す。
【０００６】
クライアント装置は、メタサーバ装置から返されたマッピング情報に基づき、ファイルをチャンクに分割し、これらのチャンクを格納すべきストレージノードに直接格納することでファイルの書き込みを完了する。
【０００７】
クライアントがファイルの読み出しを行う場合、まず、クライアント装置は、メタサーバ装置を用いてファイルを開き、次に開かれたファイルの識別子と、必要に応じて、読み出しを開始する位置（例えば、ＵＮＩＸでの読み込み、pread）と読み出されるファイルのサイズをメタサーバ装置に通知する。メタサーバ装置は、メタデータを検索し、検索されたメタデータに基づき、読み出されるファイルに対応するチャンクを特定し、このチャンクにアクセスするのに必要なマッピング情報をクライアント装置に返す。クライアントはメタサーバから返されたマッピング情報を基づき、ストレージノードに対して直接チャンクの取得を行い、ファイルの読み出しを完了する。
【０００８】
このようなチャンク分割型分散ファイルシステムでは、チャンクのサイズはファイルの論理的な構成を考慮に入れずに決定されているため、以下の例のように、ファイルのアクセスが特徴的なパターンを持つような場合、特に、読み出しアクセスの際に非効率となる場合がある。以下に読み出しアクセスが非効率となってしまう例を示す。
【０００９】
ビデオを符号化する方式には、性能の異なるデバイスに対応するためや、多視点映像を実現するために、複数の解像度それぞれに対応するデータや、複数のストリームを合わせて、一つのファイルに格納するようなものがある。例えば、現在規格化が進められているH.264/MVC (Multi-view Video Coding)などがある。図２は、このような多視点映像のビデオのファイルフォーマット例と、このファイルのチャンク分割型分散ファイルシステムへの格納例を示した図である。
【００１０】
画面イメージは、複数のカメラで撮影された複数の視点からなる映像であり、ここでは視点が視点１から視点９まであるとする。この例では複数のカメラをグリッド上に並べて結果的に連続的な高解像度の画像を構成しているが、視点間は連続している必要はないし、視点の数にも前提は置かない。
【００１１】
各視点の映像は、例えば、ファイルに一定時間分のデータごとに視点順に並べられ、格納される。時間t=0における視点１〜視点９の映像が格納され、その後ろに、時間t=1における各視点の映像が格納され、その後ろに・・・、という具合である。ここで、ある時間tにおける視点vの映像に対応するデータを「データ塊（t、v）」と表現することにする。また、ファイル中の適切な場所に、例えば、最後の部分にデータ塊(t、v)に対するインデックス情報が格納されているとする。インデックス情報には、例えば、表１に示すように、各時刻での各視点データのサイズや、書き込まれている位置を示すオフセットなどが記述されている。
【００１２】
【表１】
2010238038.tif 000003
【００１３】
ユーザは、映像を視聴する際、視聴したい領域を指定することで多視点映像のうちの任意の視聴領域の映像を視聴する。ユーザが指定する視聴領域は一般的に複数の視点にまたがる。例えば、図２に示すように、視点１、２、４、５にまたがる視聴領域をユーザが指定したとする。この視聴領域の再生には、視点１、２、４、５に対するデータが必要となる。したがって、再生の際には、図３に示すように、視点１、２、４、５を不連続にアクセスすることになる。
【００１４】
次に、このようなファイルをチャンク分割型分散ファイルシステムに格納する方法の一例を説明する。チャンク分割型分散ファイルシステムは、クライアント装置３００、メタサーバ装置４００、ストレージノード群５００により構成される。ストレージノード群５００は、例えば、Ｎ台のストレージノード５１０、５２０、・・・、５Ｎ０ストレージノードに含まれるＭ台のストレージ装置５１１、５１２、・・・、５ＮＭにより構成されている。コンテンツファイル１００は一定サイズのチャンク１０１、１０２、・・・に分割され、ストレージ装置５１１、５１２、・・・、５ＮＭに格納される。このとき、チャンク分割型分散ファイルシステムはコンテンツファイルの論理的な構成に関して関知せずにチャンク分割を行うため、例えば、図４に示すように、データ塊がチャンクに分断される可能性がある。
【００１５】
そこで、効率良く読み出しを行うためには、ファイルの論理的な構成に適合したチャンクになるように、データ塊の再配置を行うと良い。
【００１６】
例えば、特許文献１には、複数のディスクストレージに格納されたデータを、予定されている処理に適したデータ配置になるように、事前にデータの再配置を行う方法が開示されている。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００８−２２５６８６号公報
【非特許文献】
【００１８】
【非特許文献１】Sanjay Ghemawat, Howard Gobioff, Shun-Tak Leung, “The Google File System”, Proceedings of the 19th ACM Symposium on Operating Systems Principles, 2003, pp. 29-43.
【非特許文献２】Peter J. Braam et al., “Lustre Technical Project Summary”, Cluster File Systems, Inc. July 2001.
【非特許文献３】D. Nagle, et al. “The Panasas ActiveScale Storage Cluster: Delivering Scalable High Bandwidth Storage”, In Proceedings of SC2004, November 2004, Pittsburgh, Pennsylvania.
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、特許文献１に開示された方法では、チャンクについては考慮がされていない。そのため、データ塊の分断も、データ塊の再配置についても考慮がされていない。
【００２０】
そこで本発明は、上記問題点に鑑みてなされたもので、チャンクに分割されたファイルを効率良く読み出すことが可能な分散ファイルシステム及び分散ファイル格納方法を提供することを目的とする。
【課題を解決するための手段】
【００２１】
上記課題を解決するため、本発明における分散ファイルシステムは、メタサーバ装置と複数のストレージノードが接続されており、複数のデータ塊により構成されるチャンクを格納する分散ファイルシステムであって、前記複数のストレージノードそれぞれは、前記データ塊の再配置の依頼を受けたときに、前記データ塊が、どのようなデータであり、どの前記ストレージノードに格納されているかが記述されたインデックス情報が、どの前記ストレージノードに格納されているのかを前記メタサーバ装置に問い合わせるデータ再配置処理依頼受付部を有し、前記メタサーバ装置は、前記インデックス情報を格納している前記ストレージノードを記述したマッピング情報を格納するメタデータ格納部と、前記データ再配置処理依頼受付部により前記インデックス情報がどの前記ストレージノードに格納されているのかを問い合わされたときに、前記メタデータ格納部に格納された前記マッピング情報に基づき、前記インデックス情報を格納している前記ストレージノードを前記データ再配置処理依頼受付部に通知するメタデータ管理部と、を有し、前記複数のストレージノードそれぞれは、前記データ再配置処理依頼受付部が前記メタデータ管理部により前記インデックス情報を格納している前記ストレージノードを通知されたとき、前記データ再配置処理依頼受付部からの依頼により、前記インデックス情報が格納されている前記ストレージノードから前記インデックス情報を取得するコンテンツインデックス送受信部と、前記コンテンツインデックス送受信部により前記インデックス情報を取得したときに、前記データ再配置処理依頼受付部からの依頼により、前記インデックス情報に基づき、前記データ塊の配置位置の計算を行うデータ塊配置位置計算部と、前記データ塊配置位置計算部により前記データ塊の配置位置の計算されたときに、前記データ塊配置位置からの依頼により、前記データ塊配置位置計算部により計算された前記データ塊の配置位置に基づき、他の前記ストレージノードとの前記データ塊の交換をし、前記データ塊の再配置を行うデータ塊送受信部も有することを特徴とする。
【００２２】
また、本発明における分散ファイル格納方法は、複数のストレージノードそれぞれによる、前記データ塊の再配置の依頼を受けたときに、前記データ塊が、どのようなデータであり、どの前記ストレージノードに格納されているかが記述されたインデックス情報が、どの前記ストレージノードに格納されているのかを前記メタサーバに問い合わせるデータ再配置処理依頼受付ステップを有し、メタサーバ装置による、前記インデックス情報を格納している前記ストレージノードを記述したマッピング情報を格納するメタデータ格納ステップと、前記データ再配置処理依頼受付ステップにより前記インデックス情報がどの前記ストレージノードに格納されているのかを問い合わされたときに、前記メタデータ格納ステップに格納された前記マッピング情報に基づき、前記インデックス情報を格納している前記ストレージノードを前記データ再配置処理依頼受付ステップに通知するメタデータ管理ステップと、を有し、前記複数のストレージノードそれぞれよる、前記データ再配置処理依頼受付ステップが前記メタデータ管理ステップにより前記インデックス情報を格納している前記ストレージノードを通知されたとき、前記データ再配置処理依頼受付ステップからの依頼により、前記インデックス情報が格納されている前記ストレージノードから前記インデックス情報を取得するコンテンツインデックス送受信ステップと、前記コンテンツインデックス送受信ステップにより前記インデックス情報を取得したときに、前記データ再配置処理依頼受付ステップからの依頼により、前記インデックス情報に基づき、前記データ塊の配置位置の計算を行うデータ塊配置位置計算ステップと、前記データ塊配置位置計算ステップにより前記データ塊の配置位置の計算されたときに、前記データ塊配置位置からの依頼により、前記データ塊配置位置計算ステップにより計算された前記データ塊の配置位置に基づき、他の前記ストレージノードとの前記データ塊の交換をし、前記データ塊の再配置を行うデータ塊送受信ステップも有することを特徴とする。
【発明の効果】
【００２３】
本発明により、チャンクに分割されたファイルを効率良く読み出すことが可能になる。
【図面の簡単な説明】
【００２４】
【図１】チャンク分割型分散ファイルシステムの構成の一例を示す図である。
【図２】多視点映像を含んだファイルの一例を示す図である。
【図３】多視点映像を含んだファイルに対するアクセスの方法の一例を示す図である。
【図４】多視点映像を含んだファイルに対するチャンク分割の方法の一例を示す図である。
【図５】本発明の実施形態に係る分散ファイルシステムの構成の一例を示す図である。
【図６】本発明の実施形態に係る分散ファイルシステムにおける処理動作の一例を示す図である。
【図７】本発明の実施形態に係る分散ファイルシステムにおける処理動作の一例を示す図である。
【図８】本発明の実施形態に係る分散ファイルシステムにおける処理動作の一例を示す図である。
【図９】本発明の実施形態に係る分散ファイルシステムにおける再配置の方法の一例を示す図である。
【発明を実施するための形態】
【００２５】
次に、本発明を実施するための形態について図面を参照して詳細に説明する。
【００２６】
図５は、本発明の実施形態に係る分散ファイルシステムの構成の一例を示す図である。データの再配置を行うデータ再配置処理装置１００と、ファイルを構成するチャンクを格納する複数のストレージノード２００と、ファイルアクセスを行う複数のクライアント装置３００と、ファイルの配置情報などのメタデータを保持するメタサーバ装置４００とから構成される。
【００２７】
データ再配置処理装置１００は、データ再配置処理依頼部１０２、未処理コンテンツ管理情報格納部１０１により構成される。未処理コンテンツ管理情報格納部１０１は。図３に示すように、情報１０３を保持する。
【００２８】
ストレージノード２００は、データ再配置処理依頼受付部２０１、データ塊配置位置計算部２０２、データ塊送受信部２０３、チャンク管理部２０４、コンテンツインデックス送受信部２０５、チャンク格納部２０６により構成される。
【００２９】
クライアント装置３００は、ファイルアクセス部３０１、メタデータアクセス部３０２、チャンクアクセス部３０２により構成される。メタサーバ装置４００は、メタデータ管理部４０１、メタデータ格納部４０２により構成される。
【００３０】
ファイルの書き込みの際に、本発明の実施形態に係る分散ファイルシステムを構成する各装置において行われる処理動作の一例を、図５を参照しながら説明する。クライアント装置３００のファイルアクセス部３０１は、ユーザプログラムなどからファイルの書き込みの要求を受け取る。クライアント装置３００は、メタデータアクセス部３０２を用いて、メタサーバ装置４００からファイルを格納するストレージノードのＩＤやチャンク識別子などからなるマッピング情報を取得し、そのマッピング情報に基づき、チャンクアクセス部３０３を通じてファイルをチャンクに分割し、ストレージノード２００に格納することでファイルの書き込みを行う。クライアント装置３００は、ファイルの書き込み完了後、メタサーバに書き込みが完了したことを通知する。
【００３１】
このとき、メタサーバ装置４００のメタデータ管理部４０１は、クライアント３００からのファイルの書き込み要求を受け取る。メタサーバ装置４００は、書き込まれるファイルを格納する領域が確保済みの場合は、メタデータ管理部４０１により、書き込まれるファイルのオフセット、サイズなどに基づき、メタデータ格納部４０２から、このファイルを構成するチャンクの識別子やこのチャンクを保持しているストレージノードのＩＤなどのマッピング情報を取得し、クライアント装置３００に送信する。メタサーバ装置４００は、書き込まれるファイルを格納する領域が確保済みでない場合は、つまり、書き込みが既存データ領域の上書きではなく、新規ファイルや追記の場合は、所定のルールに基づき、ファイルを分割し格納するための格納領域を各ストレージノードに確保し、それぞれの格納領域に保持される予定のチャンクに識別子を割り当てる。そして、これらのチャンクの識別子と格納されるストレージノードのＩＤなどからなるマッピング情報をクライアント装置３００に送信する。
【００３２】
メタサーバ装置４００は、クライアント装置３００からファイルの書き込みの完了の通知を受けると、メタデータ管理部４０１によりマッピング情報をメタデータ格納部４０２に記録されるとともに、データ再配置処理装置１００の未処理コンテンツ管理情報格納部１０１にこのファイルのＩＤと、このファイルのインデックス情報２００の格納位置を記録する。ここで、インデックス情報の位置の取得方法はいろいろ考えられる。例えば、（１）ユーザが何らかのインターフェースを通じてインデックスの位置を明示的に指定する方法や、（２）分散ストレージシステムが格納されるコンテンツのフォーマット情報に関する知識をあらかじめ保持しており、この知識に基づき、インデックスの位置を判断する方法や、（３）読み出しアクセス時のアクセスパターンからインデックス情報の位置を推論する方法などが考えられる。
【００３３】
ストレージノード２００のチャンク管理部２０４は、クライアント装置３００から送信されてくるチャンクをチャンク格納部２０６に格納し、格納の完了メッセージをクライアント３００に送信する。
【００３４】
データ再配置の際に、本発明の実施形態に係る分散ファイルシステムを構成する各装置において行われる処理動作の一例を、図５を参照しながら説明する。データ再配置処理装置１００は、データ再配置処理依頼部１０２により、定期的に未処理コンテンツ管理情報格納部からデータの再配置が完了していないファイルを取得し、ストレージノード２００に対してデータの再配置を指示する。この際、データ再配置処理装置１００は、再配置対象のファイルのＩＤと、このファイルのインデックス情報の位置をパラメータとして、ストレージノード２００に送信する。ストレージノード２００からデータの再配置の完了の通知を受け取ると、このファイルに関する情報を未処理コンテンツ管理情報格納部から取り除く。
【００３５】
ストレージノード２００のデータ再配置処理依頼受付部２０１は、データ再配置処理装置１００から取得したデータの再配置の対象であるファイルのＩＤとインデックス情報の位置情報に基づき、メタサーバ装置４００を利用し、インデックス情報を保持するストレージノード２００を検索する。各ストレージノード２００のデータ再配置処理依頼受付部２０１は、コンテンツインデックス送受信部２０５を用いて、インデックス情報を保持しているストレージノード２００から、このインデックス情報を取得する。次に、データ再配置処理依頼受付部２０１は、取得したインデックス情報に基づき、データ塊配置位置計算部２０２を用いて、データ塊の配置位置を計算する。その結果に基づき、データ再配置処理依頼受付部２０１は、データ塊送受信部２０４を用いて、データ塊の再配置を行う。再配置の完了後、データ再配置処理依頼受付部２０１は、メタサーバ装置４００に新たなマッピング情報を送信し、データ再配置処理装置１００に対してデータの再配置の完了の通知を送信する。
【００３６】
メタサーバ装置４００のメタデータ管理部４０１は、ストレージノード２００から送信されたマッピング情報をメタデータ格納４０２に格納する。
【００３７】
ファイルの読み出しの際に、本発明の実施形態に係る分散ファイルシステムを構成する各装置における処理動作の一例を、図５を参照しながら説明する。クライアント装置３００のファイルアクセス部３０１はユーザプログラムなどからファイルの読み出しの要求を受け取り、メタデータアクセス部３０２を用いて、メタサーバ装置４００より、このファイルを構成するチャンクの識別子やこのチャンクの格納されたストレージノードのＩＤなどのマッピング情報を取得し、このマッピング情報に基づき、チャンクアクセス部３０３を通じて、ストレージノード２００からファイルを構成するチャンクを取得することでファイルの読み出しを行う。
【００３８】
メタサーバ４００のメタデータ管理部４０１は、クライアント３００からのファイルの読み出し要求を受け取り、読み出されるファイルのオフセット、サイズなどに基づき、メタデータ格納部４０２からファイルを構成するチャンクの識別子やこのチャンクを保持するストレージノードのＩＤなどからなるマップング情報を取得し、このマッピング情報をクライアント装置３００に送信する。
【００３９】
ストレージノード２００のチャンク管理部２０４は、クライアント装置３００からのチャンクの要求に対し、チャンク格納部２０６から要求されたチャンクを取得し、クライアント装置３００に送信する。
【００４０】
図６は、ファイルの書き込みの際に、本発明の実施形態に係る分散ファイルシステムにおいて行われる処理動作の一例を示す図である。まず、ファイルシステムインターフェースなどを通して、ユーザプログラムなどからファイルの書き込みの要求をクライアント装置３００のファイルアクセス部３０１が受ける（Ｓ１０１）。ファイルアクセス部３０１は、メタデータアクセス部３０２に対し、このファイルのマッピング情報の問い合わせを依頼する（Ｓ１０２）。次に、メタデータアクセス部４０１は、メタサーバ装置４００のメタデータ管理部４０１にマッピング情報の問い合わせを行う（Ｓ１０３）。次に、メタデータ管理部４０１は問い合わせを受けたマッピング情報をメタデータ格納部４０２より検索する（Ｓ１０４）。問い合わせを受けたマッピング情報が見つかった場合、メタデータ管理部４０１は、クライアント装置３００のメタデータアクセス部３０１に対し、マッピング情報を応答する（Ｓ１０５）。新規のファイル作成、追記アクセスなどの場合は、書き込まれるファイルに対するマッピング情報はまだメタデータ格納部４０２には存在しない。このとき、所定のルールに基づき、ファイルを分割し格納するための格納領域を各ストレージノード２００に確保し、それぞれの格納領域に保持される予定のチャンクに識別子を割り当てる。そして、これらのチャンクの識別子と格納されるストレージノード２００のＩＤなどからなるマッピング情報をクライアントメタデータアクセス部３０２に対し応答する（Ｓ１０５）。マッピング情報は、ファイルの書き込み完了の通知を受け取った（Ｓ１０４）ときに、メタデータ格納部４０２に格納される。
【００４１】
ファイルアクセス部３０１は、ファイルのマッピング情報を取得（Ｓ１０６）し、チャンクアクセス部３０２にファイルの書き込みの依頼を行う（Ｓ１０７）。チャンクアクセス部３０１は、取得したマッピング情報に基づき、ファイルをチャンクに分割し（Ｓ１０８）、ストレージノード２００のチャンク管理部２０４に対し、書き込み対象のファイル範囲を構成するチャンクをすべて格納するまでチャンクの書き込みを繰り返す（Ｓ１０９、Ｓ１１０、Ｓ１１１）。
【００４２】
ファイルアクセス部３０１は、ファイルの書き込み完了を通知されると（Ｓ１１２）、メタデータアクセス部３０２を通して、メタサーバ装置４００のメタデータ管理部４０１にファイルの書き込み完了の通知を行う（Ｓ１１３、Ｓ１１４）。次に、メタデータ管理部４０１は、ステップＳ１０５において、チャンクなどの新規割り当てを行っている場合には、マッピング情報をメタデータ格納部４０２に記録するとともに、データ配置処理装置１００の未処理コンテンツ管理情報格納部１０１に、この書き込まれたファイルのＩＤと、このファイルのインデックス情報の格納位置を記録する（Ｓ１１５、Ｓ１１７、Ｓ１１８）。最後に、ファイルアクセス部３０１は。ユーザプログラムなどにファイルの書き込み結果を通知する（Ｓ１１９）。
【００４３】
このようにすることにより、書き込みの際に、書き込み効率が悪くなるようなことがない。
【００４４】
図７は、データの再配置の際に、本発明の実施形態に係る分散ファイルシステムにおいて行われる処理動作の一例を示す図である。データ再配置処理装置１００は、データ再配置が未完了であるファイルを取得すると（Ｓ２０１）、ストレージノード２００のデータ再配置処理依頼受付部２０１に対し、データの再配置を指示する（Ｓ２０２）。次に、データ再配置処理依頼受付部２０１は、メタサーバ装置４００のメタデータ管理部４０１に、再配置対象ファイルのインデックス情報を保持するストレージノード２００を問い合わせる（Ｓ２０３）。メタデータ管理部４０１は、メタデータ格納部４０２から、問い合わされたインデックス情報を持つストレージノードを検索し（Ｓ２０４）、データ再配置処理依頼受付部２０１に応答する（Ｓ２０５）。インデックス情報を保持するストレージノードの情報を得たデータ再配置処理依頼受付部２０１は、コンテンツインデックス送受信部２０５に、このインデックス情報の取得を依頼する（Ｓ２０６）。コンテンツインデックス送受信部２０５は、このインデックス情報を保持しているストレージノードのコンテンツインデックス送受信部２０５からインデックス情報を取得する（Ｓ２０７、Ｓ２０８）。例えば、図５の点線が示すように、インデックス情報を保持しているストレージノードのコンテンツインデックス送受信部から、他のストレージノードのコンテンツインデックス送受信部に、インデックス情報が送信される。
【００４５】
次に、インデックス情報を取得したデータ再配置処理依頼受付部２０１は、データ塊配置位置計算部２０２にデータの再配置の依頼を行う（Ｓ２０９）。データ塊配置位置計算部２０９は、インデックス情報に基づき、データ塊の配置位置の計算を行い（Ｓ１１０）、データ塊送受信部２０３を利用し、他のストレージノードとデータ塊の交換を行う（Ｓ２１１、Ｓ２１２、Ｓ２１３）。例えば、図５の鎖線が示すように、各ストレージノードのデータ塊送受信部の間でデータ塊を送受信することにより、データ塊の交換を行う。
【００４６】
データ再配置処理依頼受付部２０１は、データの再配置の完了（Ｓ１１４）後、メタサーバ装置４００のメタデータ管理部４０１を用いて、再配置の結果に基づき、マッピング情報の更新を行う（Ｓ１１５、Ｓ１１６、Ｓ１１７、（Ｓ１１８））。最後に、データ再配置処理装置１００は、この再配置が行われたファイルに関する情報を未処理コンテンツ管理情報格納部から取り除く（Ｓ１１９）。この再配置の処理動作は、ファイルの書き込みの後に、適当なタイミングで行われるようにすると良い。
【００４７】
図８は、ファイルの読み出しの際に、本発明の実施形態に係る分散ファイルシステムにおいて行われる処理動作の一例を示す図である。まず、ファイルシステムインターフェースなどを通して、ユーザプログラムなどからファイルの読み出しの要求をファイルアクセス部３０１が受ける（Ｓ３０１）。ファイルアクセス部３０１は、メタデータアクセス部３０２に対し、読み出し要求を受けたファイルのマッピング情報の問い合わせを依頼する（Ｓ３０２）。次に、メタデータアクセス部３０２は、メタサーバ装置４００のメタデータ管理部４０１にマッピング情報の問い合わせを行う（Ｓ３０３）。次に、メタデータ管理部４０１は、問い合わせを受けたマッピング情報をメタデータ格納部４０１より検索し（Ｓ３０４）、問い合わせを受けたマッピング情報が見つかった際に、メタデータアクセス部３０２に対しマッピング情報を応答する（Ｓ３０５）。
【００４８】
ファイルアクセス部３０１は、読み出し要求を受けたファイルのマッピング情報を取得し（Ｓ３０６）、チャンクアクセス部３０３にファイルの読み出しの依頼を行う（Ｓ３０７）。チャンクアクセス部３０３は、取得したマッピング情報に基づき、ファイルをチャンクに分割し（Ｓ３０８）、ストレージノード２００のチャンク管理部２０４に対して、読み出し対象のファイル範囲を構成するチャンクをすべて取得するまでストレージノード２００からのチャンクの読み出しを繰り返す（Ｓ３０９、Ｓ３１０、Ｓ３１１、（Ｓ３１２））。最後に、ファイルアクセス部３０１は、ユーザプログラムなどにファイルの読み出し結果を通知する（Ｓ３１３）。
【００４９】
図９は、本発明の実施形態に係る分散ファイルシステムにおいて使用されるデータ塊配置位置計算の方針の一例を示す図である。例えば、図２に示した多視点映像コンテンツの場合、図７に示すように、コンテンツのインデックス情報に基づき、視点ごとのデータ塊がインターリーブする形でチャンク内に格納されている。これを、視点ごとにチャンク内にまとめる。また、さらに、同時にアクセスされる可能性のあるチャンク（時刻の同じもの）が同一ストレージノードに格納されないように配置計算を行う。こうすることでさらにアクセス速度が上がる。具体的な計算方法に関しては、ターゲットアプリケーションやファイルやコンテンツごとに別途定める必要があり、いろいろと方法は考えられる。このようにすることにより、ファイルの論理的な構成に基づいて、再配置することができる。そして、このように再配置することにより、ファイルの読み出しの際に、シーケンシャルなアクセスにより読み出しを行うことができるようになる。
【００５０】
また、このようにすることにより、ファイルの読み出しの際に、不連続なアクセスが減り、ファイルの先読み機能を効率的に機能させることができるようになる。また、バッファリングの機能を利用することができるようになる。
【００５１】
また、このように再配置しておくことで、不要なストレージノードへのアクセスを抑制することができ、システム全体でのレスポンスを上げることができる。
【００５２】
また、チャンクに分割するときに、データ塊が分断されることがなくなるように、再配置を行えば、データ塊の分断を防げる。
【００５３】
また、ファイルのデータ塊群のうち、同時にアクセスする可能性のあるもの（例えば、上述した、視聴領域に含まれる複数の視点映像）を別々のストレージノードに配置することで、ファイルの読み出しの効率を上げることができる。
【００５４】
本発明は、複数のクライアント装置、複数のストレージノードから構成される分散ファイルシステムにおいて、ファイルの構成を考慮にいれたデータ配置をする用途に適用できる。
【００５５】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範囲な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更が可能である。
【００５６】
また、本発明における分散ファイルシステムは、前記ストレージノードそれぞれの前記データ再配置処理依頼受付部は、前記データ塊送受信部による前記データ塊の再配置が完了した通知を前記データ塊配置位置計算部から受けたときに、前記メタサーバ装置の前記メタデータ管理部に前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を依頼し、前記メタサーバ装置のメタデータ部は、前記データ再配置処理依頼受付部に依頼により、前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を行うようにしても良い。
【００５７】
また、本発明における分散ファイルシステムは、データ再配置処理装置も接続されており、前記データ再配置処理装置は、前記データ塊の再配置が行われていないファイルについての情報を格納する未処理コンテンツ管理情報格納部と、前記未処理コンテンツ管理情報格納部から、前記データ塊の再配置のおこなわれていない前記ファイルの情報を取得したときに、前記データ塊の再配置のおこなわれていない前記ファイルに対する前記データ塊の再配置を前記ストレージノードそれぞれの前記データ再配置処理依頼受付部に依頼するデータ再配置処理依頼部と、を有し、前記ストレージノードそれぞれの前記データ再配置処理依頼受付部は、前記データ塊送受信部による前記データ塊の再配置が完了した通知を前記データ塊配置位置計算部から受けたときに、前記データ配置処理装置の前記データ配置処理依頼部に前記データ塊の再配置が完了の通知し、前記データ再配置処理装置の前記データ再配置依頼部は、前記データ再配置処理依頼受付部から前記データ塊の再配置の完了の通知を受けたときに、前記未処理コンテンツ管理情報格納部から前記データ塊の再配置の完了した前記ファイルについての情報を削除するようにしても良い。
【００５８】
また、本発明における分散ファイルシステムは、クライアント装置も接続されており、前記マップング情報は、前記ファイルを構成する前記チャンクの識別情報と、前記各チャンクが、どの前記ストレージノードに格納されているのか、どれくらいのサイズであるのかも記述されており、前記クライアント装置は、前記ファイルの書き込みの依頼を受けるファイルアクセス部と  前記ファイルアクセス部が前記ファイルの書き込みの依頼を受けたときに、前記ファイルアクセス部からの依頼により、前記メタサーバ装置の前記メタデータ部に前記マッピングデータ情報を問い合わせるメタデータアクセス部と、を有し、前記メタサーバ装置の前記メタデータ管理部は、前記メタデータアクセス部により前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納部に格納された前記マッピング情報を前記クライアント装置に通知し、前記クライアント装置は、前記メタデータ管理部により前記マッピング情報が通知されたときに、前記ファイルアクセス部からの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの書き込みを依頼するチャンクアクセス部も有し、前記ストレージノードそれぞれは、前記チャンクの格納されたチャンク格納部と、前記チャンクアクセス部から前記チャンクの書き込みの依頼を受けたときに、前記チャンクを前記格納部に格納するチャンク管理部も有し、前記ストレージノードそれぞれの前記チャンク管理部は、前記チャンクの書き込みを完了したときに、前記クライアント装置の前記ファイルアクセス部に前記チャンクの書き込みの完了を通知し、前記クライアント装置の前記ファイルアクセス部は、前記チャンク管理部から前記チャンクの書き込みの完了の通知を受けたときに、前記メタデータアクセス部に前記チャンクの書き込みの完了を通知し、前記クライアント装置の前記メタデータアクセス部は、前記ファイルアクセス部から前記チャンクの書き込みの完了の通知を受けたときに、前記メタサーバ装置の前記メタデータ部に前記チャンクの書き込みの完了を通知し、前記メタサーバ装置の前記メタデータ部は、前記メタデータアクセス部から前記チャンクの書き込みの完了の通知を受けたときに、前記チャンクの書き込みの完了した前記ファイルを前記データ塊の再配置の完了していないファイルとして前記未処理コンテンツ管理情報格納部に登録するようにしても良い。
【００５９】
また、本発明における分散ファイルシステムは、前記クライアント装置の前記ファイルアクセス部は、前記ファイルの読み出しの依頼も受け、前記クライアント装置の前記メタデータアクセス部は、前記ファイルの読み出しの依頼を受けたときに、前記ファイルアクセス部からの依頼により、前記メタサーバ装置の前記メタデータ部に前記マッピングデータ情報を問い合わせ、前記メタサーバ装置の前記メタデータ管理部は、前記メタデータアクセス部により前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納部に格納された前記マッピング情報を前記クライアント装置に通知し、前記クライアント装置の前記チャンクアクセス部は、前記メタデータ管理部により前記マッピング情報が通知されたときに、前記ファイルアクセス部からの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの読み出しを依頼し、前記ストレージノードそれぞれの前記チャンク管理部は、前記チャンクアクセス部から前記チャンクの読み出しの依頼を受けたときに、前記チャンクを前記格納部から読み出すようにしても良い。
【００６０】
また、本発明における分散ファイル格納方法は、前記ストレージノードそれぞれによる前記データ再配置処理依頼受付ステップにより、前記データ塊送受信ステップによる前記データ塊の再配置が完了した通知を前記データ塊配置位置計算ステップから受けたときに、前記メタサーバ装置の前記メタデータ管理ステップに前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を依頼し、前記メタサーバ装置によるメタデータステップは、前記データ再配置処理依頼受付ステップに依頼により、前記データ塊の再配置の結果に基づき、前記マッピング情報の更新を行うようにしても良い。
【００６１】
また、本発明における分散ファイル格納方法は、データ再配置処理装置による、前記データ塊の再配置が行われていないファイルについての情報を格納する未処理コンテンツ管理情報格納ステップと、前記未処理コンテンツ管理情報格納ステップから、前記データ塊の再配置のおこなわれていない前記ファイルの情報を取得したときに、前記データ塊の再配置のおこなわれていない前記ファイルに対する前記データ塊の再配置を前記ストレージノードそれぞれの前記データ再配置処理依頼受付ステップに依頼するデータ再配置処理依頼ステップと、を有し、前記ストレージノードそれぞれによる前記データ再配置処理依頼受付ステップにより、前記データ塊送受信ステップによる前記データ塊の再配置が完了した通知を前記データ塊配置位置計算ステップから受けたときに、前記データ配置処理装置の前記データ配置処理依頼ステップに前記データ塊の再配置が完了の通知し、前記データ再配置処理装置による前記データ再配置依頼ステップにより、前記データ再配置処理依頼受付ステップから前記データ塊の再配置の完了の通知を受けたときに、前記未処理コンテンツ管理情報格納ステップから前記データ塊の再配置の完了した前記ファイルについての情報を削除するようにしても良い。
【００６２】
また、本発明における分散ファイル格納方法は、前記マップング情報は、前記ファイルを構成する前記チャンクの識別情報と、前記各チャンクが、どの前記ストレージノードに格納されているのか、どれくらいのサイズであるのかも記述されており、クライアント装置による、前記ファイルの書き込みの依頼を受けるファイルアクセスステップと、前記ファイルアクセスステップが前記ファイルの書き込みの依頼を受けたときに、前記ファイルアクセスステップからの依頼により、前記メタサーバ装置による前記メタデータステップに前記マッピングデータ情報を問い合わせるメタデータアクセスステップと、を有し、前記メタサーバ装置による前記メタデータ管理ステップにより、前記メタデータアクセスステップにより前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納ステップに格納された前記マッピング情報を前記クライアント装置に通知し、前記クライアント装置による、前記メタデータ管理ステップにより前記マッピング情報が通知されたときに、前記ファイルアクセスステップからの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの書き込みを依頼するチャンクアクセスステップも有し、前記ストレージノードそれぞれによる、前記チャンクの格納されたチャンク格納ステップと、前記チャンクアクセスステップから前記チャンクの書き込みの依頼を受けたときに、前記チャンクを前記格納ステップに格納するチャンク管理ステップも有し、前記ストレージノードそれぞれによる前記チャンク管理ステップにより、前記チャンクの書き込みを完了したときに、前記クライアント装置による前記ファイルアクセスステップに前記チャンクの書き込みの完了を通知し、前記クライアント装置による前記ファイルアクセスステップにより、前記チャンク管理ステップから前記チャンクの書き込みの完了の通知を受けたときに、前記メタデータアクセスステップに前記チャンクの書き込みの完了を通知し、前記クライアント装置による前記メタデータアクセスステップにより、前記ファイルアクセスステップから前記チャンクの書き込みの完了の通知を受けたときに、前記メタサーバ装置による前記メタデータステップに前記チャンクの書き込みの完了を通知し、前記メタサーバ装置による前記メタデータステップは、前記メタデータアクセスステップから前記チャンクの書き込みの完了の通知を受けたときに、前記チャンクの書き込みの完了した前記ファイルを前記データ塊の再配置の完了していないファイルとして前記未処理コンテンツ管理情報格納ステップに登録するようにしても良い。
【００６３】
また、本発明における分散ファイル格納方法は、前記クライアント装置による前記ファイルアクセスステップにより、前記ファイルの読み出しの依頼も受け、前記クライアント装置による前記メタデータアクセスステップは、前記ファイルの読み出しの依頼を受けたときに、前記ファイルアクセスステップからの依頼により、前記メタサーバ装置による前記メタデータステップに前記マッピングデータ情報を問い合わせ、前記メタサーバ装置による前記メタデータ管理ステップは、前記メタデータアクセスステップにより前記マッピング情報の問い合わせを受けたときに、前記メタデータ格納ステップに格納された前記マッピング情報を前記クライアント装置に通知し、前記クライアント装置の前記チャンクアクセスステップは、前記メタデータ管理ステップにより前記マッピング情報が通知されたときに、前記ファイルアクセスステップからの依頼により、前記マッピング情報に基づき、前記ファイルを前記チャンクに分割し、前記各ストレージノードに前記チャンクの読み出しを依頼し、前記ストレージノードそれぞれによる前記チャンク管理ステップは、前記チャンクアクセスステップから前記チャンクの読み出しの依頼を受けたときに、前記チャンクを前記格納ステップから読み出すようにしても良い。
【符号の説明】
【００６４】
１００    データ再配置処理装置
１０１    データ再配置処理依頼部
１０２    未処理コンテンツ管理情報格納部
２００    ストレージノード
２０１    データ再配置処理依頼受付部
２０２    データ塊配置位置計算部
２０３    データ塊送受信部
２０４    チャンク管理部
２０５    コンテンツインデックス送受信部
２０６    チャンク格納部
３００    クライアント装置
３０１    ファイルアクセス部
３０２    メタデータアクセス部
３０３    チャンクアクセス部
４００    メタサーバ部
４０１    メタデータ管理部
４０２    メタデータ格納部
【図１】
2010238038.tif 000004
【図２】
2010238038.tif 000005
【図３】
2010238038.tif 000006
【図４】
2010238038.tif 000007
【図５】
2010238038.tif 000008
【図６】
2010238038.tif 000009
【図７】
2010238038.tif 000010
【図８】
2010238038.tif 000011
【図９】
2010238038.tif 000012