JP6607044B2 - サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム - Google Patents
サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム Download PDFInfo
- Publication number
- JP6607044B2 JP6607044B2 JP2016001571A JP2016001571A JP6607044B2 JP 6607044 B2 JP6607044 B2 JP 6607044B2 JP 2016001571 A JP2016001571 A JP 2016001571A JP 2016001571 A JP2016001571 A JP 2016001571A JP 6607044 B2 JP6607044 B2 JP 6607044B2
- Authority
- JP
- Japan
- Prior art keywords
- file
- directory
- server
- name
- detailed information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ファイルを記憶するファイルデータ記憶装置と、ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するサーバー装置の識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、
ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表と、
クライアント装置、若しくは、他の前記サーバー装置から処理リクエストを受信、または、他の前記サーバー装置にリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントする通信部と、
ファイルのFHを入力されると、FHが包含するサーバーIDの前記サーバー装置にファイル詳細情報を要求するリクエストを送信して、ファイル詳細情報を受信するファイル詳細情報問い合わせ部と、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストが受信されたとき、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)前記通信部がカウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを前記ファイル詳細情報問い合わせ部に入力してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)前記通信部がカウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、前記サーバー装置から返信されたファイルのFHを、改めてファイルを管理する前記サーバー装置に送信する前記クライアント装置から、または、他の前記サーバー装置の前記ファイル詳細情報問い合わせ部から、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストが受信されると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信するディレクトリエントリ参照/更新部と、を備える。
ファイルを記憶するファイルデータ記憶装置と、
ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するサーバー装置の識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表を備える前記サーバー装置が、
クライアント装置、若しくは、他の前記サーバー装置から処理リクエストを受信、または、他の前記サーバー装置にリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントし、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを受信すると、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)カウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを含むリクエストを、当該FHが包含するサーバーIDの前記サーバー装置に送信してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)カウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、ファイルのFHを、改めてファイルを管理する前記サーバー装置に送信する前記クライアント装置から、または、他の前記サーバー装置から、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストを受信すると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信する。
ファイルを記憶するファイルデータ記憶装置と、
ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するコンピュータの識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表を備える前記コンピュータに、
クライアント装置、若しくは、他の前記コンピュータから処理リクエストを受信、または、他の前記コンピュータにリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントし、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを受信すると、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)カウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを含むリクエストを、当該FHが包含するサーバーIDの前記コンピュータに送信してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)カウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、ファイルのFHを、改めてファイルを管理する前記コンピュータに送信する前記クライアント装置から、または、他の前記コンピュータから、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストを受信すると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信する、処理を実行させる。
<概要>
図1は、本実施の形態にかかる分散ファイルシステム5の概要を示す構成図である。分散ファイルシステム5においては、図1が示すように、例えば複数の計算ノードであるクライアント装置1(以降、クライアント1と略記)が相互結合ネットワーク3に接続されており、ユーザのジョブを実行する。また、例えば複数のサーバー装置2(以降、サーバー2と略記)も同じ相互結合ネットワーク3に接続されており、任意のクライアント1とサーバー2の間、及び、任意のサーバー2同士間の通信が可能となっている。各サーバー2の配下には少なくとも1台の外部記憶装置4が接続される。
a)ファイルシステムの最上位のディレクトリを管理するルートサーバーは、自装置が記憶するルートディレクトリの中に、そのディレクトリ配下にある「子ディレクトリ」を管理するサーバー2を特定できる情報を記憶している。
b)子ディレクトリを管理するサーバー2は、自装置が記憶する子ディレクトリの中に、そのディレクトリ配下にある「孫ディレクトリ」を管理するサーバー2を特定できる情報を記憶している。
c)孫ディレクトリを管理するサーバー2は、自装置が記憶する孫ディレクトリの中に、そのディレクトリ配下にあるアクセス対象のファイルを管理するサーバー2を特定できる情報を記憶している。
同一ファイルへの並列I/Oなどの目的で、多数のクライアント1が同一ファイルをオープンする場合
ケース2:
多数のクライアント1が同一ディレクトリ配下の異なるファイルをオープンする場合
ここで、効率化の前提となる事項について説明する。
多数のクライアント1がほぼ同時期に上記(ア)によりファイル詳細情報を得る場合、クライアント1がサーバー2と通信する回数が、クライアント1毎に1回増える。クライアント1が512台あれば、クライアント1がサーバー2と通信する回数が512回となる。さらに、該ファイルを管理するサーバー2にもファイル詳細情報の要求が集中する可能性がある。ファイル詳細情報はデータ量が多少多くなるので、通信回数だけではなくサーバー2のI/OやCPU等の負荷の面からも好ましくない。
対象ファイルがクライアント1毎にそれぞれ異なるため、(イ)の場合、サーバー2間通信は対象ファイルごとに必要になる。ただ、サーバー2ではケース1かケース2かの判別はできない。すなわち、次に来るリクエストが何であるかはそれを受け取るまでわからない。このため、サーバー2は、次に述べるデーモン数の範囲内では、ケース1と同様に(イ)の方法を選択する。
図2は、本実施の形態にかかるクライアント1、サーバー2、および、外部記憶装置4の内部構成を示す図である。
次に、本発明の実施例の動作について詳細に説明する。なお、説明にあたって、クライアント1、サーバー2は、コンピュータ装置40を用いて実現されていると仮定する。クライアント1、サーバー2のオペレーティングシステムは、UNIX(登録商標)や Linux(登録商標)であると仮定する。また、クライアント1、サーバー2は、EtherNet(登録商標)、InfiniBand(登録商標)など一般に利用可能なネットワークインターフェースを持ち、相互結合ネットワーク3を介して接続される。これにより、クライアント1は任意のサーバー2と通信可能であり、サーバー2はそのサーバー2以外の任意のサーバー2と通信可能である。
図7乃至図11は、ファイルオープン処理の動作例のフローチャートである。図7及び図8はクライアント1側、図9乃至図11はサーバー2側の動作フローチャートである。なお、これらのフローチャートは、クライアント1が、ファイルディレクトリを検索して、オープン対象のファイルのFHとファイル詳細情報を取得するまでの流れを示しており、その後のオープン処理については割愛されている。その後のオープン処理は、公知技術で実現できる。
クライアント1の動作は、メタデータ問い合わせ部105が中心となる。クライアント1上で動作するAPから、分散ファイルシステム5内のファイルに対してオープンシステムコールが呼び出されると、オペレーシングシステムのカーネルからメタデータ問い合わせ部105が起動されて、図7の処理が開始される。
図9乃至11は、図7のステップ6、図8のステップ14、およびステップ18においてサーバー2への問い合わせをクライアント1が行った際のサーバー2側の処理の例を示す。クライアント1からの当合わせはサーバー2において、通信部201により受信される。
図12および図13は、サーバー2におけるファイル、ディレクトリ生成処理の動作例のフローチャートである。
図12において、クライアント1から生成要求を受信すると、ファイル/ディレクトリ生成要求部204が起動される。ファイル/ディレクトリ生成要求部204は、サーバー選定部203により新たに生成するファイル、ディレクトリを管理するサーバー2を選定し(ステップ51)、選定したサーバー2へファイル、ディレクトリの作成要求としてファイルタイプと名前、ファイル、ディレクトリのパーミッションに関する情報を送信する(ステップ52)。
図12のステップ52でファイル、ディレクトリの生成要求を受信したサーバー2は、図13のフローチャートのように動作する。
図14および図15は、マウント処理の動作例のフローチャートである。図14はクライアント1側、図15はサーバー2側の動作フローチャートである。
図14において、クライアント1のユーザがmountコマンドを入力、または、クライアント1上のAPがマウントシステムコールを呼び出すと、マウント要求部102がオペレーティングシステムから起動される。mountコマンド、または、mountシステムコールは、ルートサーバーであるサーバー2を指定しており、マウント要求部102は、指定されているサーバー2へマウント要求を送信する(ステップ71)。
図15において、マウント応答部202は、サーバー情報表211を参照し、ファイルシステムを構成する全サーバー2のサーバーIDとIPアドレスの対応表、及びルートディレクトリのFHの値を読み出し(ステップ81)、要求元のクライアント1へ送信して(ステップ82)、処理を終了する。
本実施の形態にかかるファイル分散システム5の効果は以下の通りである。
1 クライアント装置
2 サーバー
2 サーバー装置
3 相互結合ネットワーク
4 外部記憶装置
5 分散ファイルシステム
40 コンピュータ装置
41 プロセッサ
42 主記憶部
43 プログラム
44 外部記憶装置
45 バス
101 通信部
101−1 リクエスト作成部
101−2 サーバー特定部
102 マウント要求部
103 メタデータ参照/更新部
104 サーバー情報表更新部
105 メタデータ問い合わせ部
106 パス名解析部
107 ファイル/ディレクトリ生成要求部
108 ファイル詳細情報要求部
109 サーバー情報表
110 メタデータ記憶部
201 通信部
201−1 リクエスト作成部
201−2 リクエスト応答部
201−3 リクエスト受信部
201−4 リクエスト内容変更部
201−5 リクエスト処理デーモン数判別/更新部
201−6 リクエスト処理デーモン数カウンタ
201−7 リクエスト内容判別部
201−8 サーバー特定部
202 マウント応答部
203 サーバー選定部
204 ファイル/ディレクトリ生成要求部
205 ディレクトリエントリ参照/更新部
206 ファイル/ディレクトリ生成部
207 FH生成部
208 サーバー内FH検索部
209 ファイル詳細情報問い合わせ部
210 I/O発行部
211 サーバー情報表
212 ファイル詳細情報表
213 メタデータ一時記憶表
401 メタデータ記憶装置
402 ファイルデータ記憶装置
Claims (10)
- ファイルを記憶するファイルデータ記憶装置と、
ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するサーバー装置の識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、
ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表と、
クライアント装置、若しくは、他の前記サーバー装置から処理リクエストを受信、または、他の前記サーバー装置にリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントする通信部と、
ファイルのFHを入力されると、FHが包含するサーバーIDの前記サーバー装置にファイル詳細情報を要求するリクエストを送信して、ファイル詳細情報を受信するファイル詳細情報問い合わせ部と、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストが受信されたとき、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)前記通信部がカウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを前記ファイル詳細情報問い合わせ部に入力してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)前記通信部がカウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、前記サーバー装置から返信されたファイルのFHを、改めてファイルを管理する前記サーバー装置に送信する前記クライアント装置から、または、他の前記サーバー装置の前記ファイル詳細情報問い合わせ部から、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストが受信されると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信するディレクトリエントリ参照/更新部と、を備えたサーバー装置。 - 前記サーバー装置は、さらに、
前記クライアント装置から、新たなディレクトリ、または、ファイルの第1の生成要求が送信されたとき、前記第1の生成要求に含まれる名前に依存しない方法で新たなディレクトリ、または、ファイルを管理する前記サーバー装置を選択するサーバー選定部と、
前記サーバー選定部が選択した前記サーバー装置に新たなディレクトリ、または、ファイルの第2の生成要求を送信して、生成された新たなディレクトリ、または、ファイルのFHを受信し、さらに、新たなファイルを生成した時はファイル詳細情報も受信する、ファイル/ディレクトリ生成要求部と、
前記第2の生成要求を受信すると、a)ディレクトリを生成して前記メタデータ記憶装置に格納、または、b)ファイル詳細情報を生成して前記メタデータ記憶装置に格納すると共に前記第2の生成要求送信元に返信し、さらに、自装置のサーバーID及び自装置内一意の値から新たなディレクトリ、または、ファイルのFHを作成して、作成したFHを前記メタデータ記憶装置に格納すると共に前記第2の生成要求送信元に返信するファイル/ディレクトリ生成部とを、備え、
前記ディレクトリエントリ参照/更新部は、ファイル/ディレクトリ生成要求部が受信したFH、並びに、前記第1の生成要求に含まれる名前、および、ファイルタイプを前記メタデータ記憶装置に格納されているディレクトリに記憶し、さらに、受信した場合はファイル詳細情報を前記ファイル詳細情報表に記憶する、請求項1のサーバー装置。 - 前記ディレクトリエントリ参照/更新部は、前記クライアント装置から、ディレクトリ階層における直下のディレクトリの名前を入力されると、前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のFHとファイルタイプを取得して出力する、請求項1乃至請求項2の何れか1項のサーバー装置と、
まず、1)上位のディレクトリを管理する前記サーバー装置の前記ディレクトリエントリ参照/更新部に、直下のディレクトリの名前を入力して、直下のディレクトリのFHとファイルタイプを取得することを、前記パス名に名前が含まれるディレクトリについて、ルートディレクトリを管理する予め定められた前記サーバー装置を起点に、上位から順に繰り返すディレクトリ探索を実行して、パス名中の最下位ディレクトリのFHとファイルタイプを取得し、次に、2)最下位ディレクトリのFHが包含するサーバーIDの前記サーバー装置の前記ディレクトリエントリ参照/更新部に、2-1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2-2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを送信して、a)前記パス名のファイルのFH、ファイルタイプ、および、ファイル詳細情報を取得する、または、b)前記パス名のファイルのFH、および、ファイルタイプを取得するメタデータ問い合わせ部と、
前記メタデータ問い合わせ部がファイル詳細情報を取得できなかったとき、前記メタデータ問い合わせ部が取得した前記パス名のファイルのFHを、改めてファイルを管理する前記サーバー装置に送信して、ファイル詳細情報を取得するファイル詳細情報要求部と、を備える前記クライアント装置と、を包含する分散ファイルシステム。 - 前記クライアント装置は、
ディレクトリの、名前、FH,及び、ファイルタイプを関連付けてキャッシュするメタデータ記憶部を、さらに、備え、
前記メタデータ問い合わせ部は、前記ディレクトリ探索の過程で前記パス名から、ディレクトリの名前を取り出すと、a1)取り出した名前(以降、取得ディレクトリ名)が前記メタデータ記憶部にキャッシュされていなければ、前記取得ディレクトリ名のディレクトリの上位のディレクトリを管理する前記サーバー装置の前記ディレクトリエントリ参照/更新部に前記取得ディレクトリ名を送信して、前記取得ディレクトリ名のディレクトリのFHとファイルタイプを得るとともに、前記メタデータ記憶部に、前記取得ディレクトリ名、並びに、前記サーバー装置から取得したFHとファイルタイプをキャッシュし、a2)キャッシュされていれば前記メタデータ記憶部から前記取得ディレクトリ名のディレクトリのFHとファイルタイプを取得する、請求項2乃至請求項3の何れか1項の分散ファイルシステム。 - 前記メタデータ記憶部は、ファイルの、名前、FH、ファイルタイプ、及び、ファイル詳細情報を関連付けて、さらに、キャッシュし、
前記メタデータ問い合わせ部は、前記パス名から、ファイルの名前を取り出すと、a1)取り出した名前(以降、取得ファイル名)が前記メタデータ記憶部にキャッシュされていなければ、前記サーバー装置から、前記取得ファイル名のファイルの、FH、ファイルタイプ、及び、ファイル詳細情報を得るとともに、前記メタデータ記憶部に、前記取得ファイル名、並びに、前記サーバー装置から取得したFH、ファイルタイプ、及び、ファイル詳細情報をキャッシュし、a2)キャッシュされていれば前記メタデータ記憶部から前記取得ファイル名のファイルのFH、ファイルタイプ、及び、ファイル詳細情報を取得する、請求項4の分散ファイルシステム。 - ファイルを記憶するファイルデータ記憶装置と、
ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するサーバー装置の識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表を備える前記サーバー装置が、
クライアント装置、若しくは、他の前記サーバー装置から処理リクエストを受信、または、他の前記サーバー装置にリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントし、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを受信すると、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)カウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを含むリクエストを、当該FHが包含するサーバーIDの前記サーバー装置に送信してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)カウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、ファイルのFHを、改めてファイルを管理する前記サーバー装置に送信する前記クライアント装置から、または、他の前記サーバー装置から、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストを受信すると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信する、分散ファイルシステム制御方法。 - 前記サーバー装置が、さらに、
前記クライアント装置から、新たなディレクトリ、または、ファイルの第1の生成要求を受信すると、前記第1の生成要求に含まれる名前に依存しない方法で新たなディレクトリ、または、ファイルを管理する前記サーバー装置を選択し、
選択した前記サーバー装置に新たなディレクトリ、または、ファイルの第2の生成要求を送信して、生成された新たなディレクトリ、または、ファイルのFHを受信し、さらに、新たなファイルを生成した時はファイル詳細情報も受信し、
受信したFH、並びに、前記第1の生成要求に含まれる名前、および、ファイルタイプを前記メタデータ記憶装置に格納されているディレクトリに記憶し、さらに、受信した場合はファイル詳細情報を前記ファイル詳細情報表に記憶し、
また、他の前記サーバー装置から前記第2の生成要求を受信すると、a)ディレクトリを生成して前記メタデータ記憶装置に格納、または、b)ファイル詳細情報を生成して前記メタデータ記憶装置に格納すると共に前記第2の生成要求送信元に返信し、さらに、自装置のサーバーID及び自装置内一意の値から新たなディレクトリ、または、ファイルのFHを作成して、作成したFHを前記メタデータ記憶装置に格納すると共に前記第2の生成要求送信元に返信する、請求項6の分散ファイルシステム制御方法。 - 前記サーバー装置が、前記クライアント装置から、ディレクトリ階層における直下のディレクトリの名前を受信すると、前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のFHとファイルタイプを取得して出力し、
前記クライアント装置が、まず、1)上位のディレクトリを管理する前記サーバー装置に、直下のディレクトリの名前を入力して、直下のディレクトリのFHとファイルタイプを取得することを、前記パス名に名前が含まれるディレクトリについて、ルートディレクトリを管理する予め定められた前記サーバー装置を起点に、上位から順に繰り返すディレクトリ探索を実行して、パス名中の最下位ディレクトリのFHとファイルタイプを取得し、次に、2)最下位ディレクトリのFHが包含するサーバーIDの前記サーバー装置に、2-1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2-2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを送信して、a)前記パス名のファイルのFH、ファイルタイプ、および、ファイル詳細情報を取得し、または、b)前記パス名のファイルのFH、および、ファイルタイプを取得し、
最下位ディレクトリのFHが包含するサーバーIDの前記サーバー装置から、ファイル詳細情報を取得できなかったとき、当該サーバー装置から取得した前記パス名のファイルのFHを、改めてファイルを管理する前記サーバー装置に送信して、ファイル詳細情報を取得する、請求項6乃至請求項7の何れか1項の分散ファイルシステム制御方法。 - 前記クライアント装置が、
ディレクトリの、名前、FH,及び、ファイルタイプを関連付けてキャッシュするメタデータ記憶部を、さらに、備え、
前記ディレクトリ探索の過程で前記パス名から、ディレクトリの名前を取り出すと、a1)取り出した名前(以降、取得ディレクトリ名)が前記メタデータ記憶部にキャッシュされていなければ、前記取得ディレクトリ名のディレクトリの上位のディレクトリを管理する前記サーバー装置に前記取得ディレクトリ名を送信して、前記取得ディレクトリ名のディレクトリのFHとファイルタイプを得るとともに、前記メタデータ記憶部に、前記取得ディレクトリ名、並びに、前記サーバー装置から取得したFHとファイルタイプをキャッシュし、a2)キャッシュされていれば前記メタデータ記憶部から前記取得ディレクトリ名のディレクトリのFHとファイルタイプを取得する、請求項7乃至請求項8の何れか1項の分散ファイルシステム制御方法。 - ファイルを記憶するファイルデータ記憶装置と、
ディレクトリ階層における直下のディレクトリ、または、ファイルの、a)識別子であって、当該ディレクトリ、または、当該ファイルを管理するコンピュータの識別情報であるサーバーIDを含むファイルハンドル(以降、FHと略記)、b)名前、および、c)ファイルまたはディレクトリの区別を示すファイルタイプを関連付けて記憶するディレクトリ、および、前記ファイルデータ記憶装置に記憶されているファイルのファイル詳細情報を記憶するメタデータ記憶装置と、に接続され、ファイル詳細情報のキャッシュ用メモリ領域であるファイル詳細情報表を備える前記コンピュータに、
クライアント装置、若しくは、他の前記コンピュータから処理リクエストを受信、または、他の前記コンピュータにリクエストを送信するとともに、処理中または送信中のリクエスト数をカウントし、
クライアント装置から、ディレクトリ階層における直下のファイルの名前を含む、1)ファイルのFH、および、ファイルタイプにたいする要求、並びに、2)ファイル詳細情報にたいする要求の2つの要求をまとめたリクエストを受信すると、a)前記メタデータ記憶装置に格納されているディレクトリから、入力された名前のファイルのFHとファイルタイプを取得し、b1)カウントしたリクエスト数が所定閾値を超えておらず、c1)受信された名前のファイルのファイル詳細情報が前記ファイル詳細情報表にキャッシュされていれば、キャッシュされているファイル詳細情報を取得し、c2)前記ファイル詳細情報表にキャッシュされていなければ、取得したファイルのFHを含むリクエストを、当該FHが包含するサーバーIDの前記コンピュータに送信してファイル詳細情報を取得して、前記ファイル詳細情報表にキャッシュし、取得したファイルのFH、ファイルタイプとファイル詳細情報とを前記クライアント装置に返信し、b2)カウントしたリクエスト数が所定閾値を超えている場合は、入力されたリクエストを変更してファイル詳細情報の出力を中止し、取得したファイルのFH、ファイルタイプを前記クライアント装置に返信し、
また、ファイルのFHを、改めてファイルを管理する前記コンピュータに送信する前記クライアント装置から、または、他の前記コンピュータから、前記ファイルデータ記憶装置に記憶されているファイル、のFHを含むリクエストを受信すると、前記メタデータ記憶装置から、入力されたFHを識別子とするファイルのファイル詳細情報を取得して返信する、処理を実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016001571A JP6607044B2 (ja) | 2016-01-07 | 2016-01-07 | サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016001571A JP6607044B2 (ja) | 2016-01-07 | 2016-01-07 | サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017123040A JP2017123040A (ja) | 2017-07-13 |
JP6607044B2 true JP6607044B2 (ja) | 2019-11-20 |
Family
ID=59306773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016001571A Active JP6607044B2 (ja) | 2016-01-07 | 2016-01-07 | サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6607044B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102622183B1 (ko) * | 2018-06-08 | 2024-01-08 | 삼성에스디에스 주식회사 | 스토리지 관리 장치 및 방법 |
CN117453643B (zh) * | 2023-12-22 | 2024-04-02 | 柏科数据技术(深圳)股份有限公司 | 基于分布式文件系统的文件缓存方法、装置、终端及介质 |
-
2016
- 2016-01-07 JP JP2016001571A patent/JP6607044B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017123040A (ja) | 2017-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11836135B1 (en) | Method and system for transparent database query caching | |
US10795817B2 (en) | Cache coherence for file system interfaces | |
US11775569B2 (en) | Object-backed block-based distributed storage | |
US9971823B2 (en) | Dynamic replica failure detection and healing | |
US7640247B2 (en) | Distributed namespace aggregation | |
EP2631805A1 (en) | Storage-service-provision device, system, service-provision method, and service-provision program | |
JP5375972B2 (ja) | 分散ファイルシステム、そのデータ選択方法およびプログラム | |
JP2006252085A (ja) | ユーザ識別情報を変換するファイルサーバ | |
US10635650B1 (en) | Auto-partitioning secondary index for database tables | |
WO2015118865A1 (ja) | 情報処理装置、情報処理システム及びデータアクセス方法 | |
US20210248107A1 (en) | Kv storage device and method of using kv storage device to provide file system | |
US9483523B2 (en) | Information processing apparatus, distributed processing system, and distributed processing method | |
US11132367B1 (en) | Automatic creation of indexes for database tables | |
CN108540510B (zh) | 一种云主机创建方法、装置及云服务系统 | |
US8250176B2 (en) | File sharing method and file sharing system | |
CN109302448A (zh) | 一种数据处理方法及装置 | |
JP6607044B2 (ja) | サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム | |
US20220342888A1 (en) | Object tagging | |
JP5481669B2 (ja) | キャッシュ制御方法、ノード装置、マネージャ装置及び計算機システム | |
JP7173165B2 (ja) | 履歴管理装置、履歴管理方法及びプログラム | |
US11064020B2 (en) | Connection load distribution in distributed object storage systems | |
JP4005102B2 (ja) | ゲートウェイ装置 | |
JP6568232B2 (ja) | 計算機システム、及び、装置の管理方法 | |
US10621148B1 (en) | Maintaining multiple object stores in a distributed file system | |
JP4492569B2 (ja) | ファイル操作制御装置、ファイル操作制御システム、ファイル操作制御方法及びファイル操作制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181214 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190924 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190927 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191007 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6607044 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |