JP2001075858A - リアルタイム分散型ファイルシステム - Google Patents

リアルタイム分散型ファイルシステム

Info

Publication number
JP2001075858A
JP2001075858A JP2000200988A JP2000200988A JP2001075858A JP 2001075858 A JP2001075858 A JP 2001075858A JP 2000200988 A JP2000200988 A JP 2000200988A JP 2000200988 A JP2000200988 A JP 2000200988A JP 2001075858 A JP2001075858 A JP 2001075858A
Authority
JP
Japan
Prior art keywords
file
storage
storage system
dfs
disk
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.)
Pending
Application number
JP2000200988A
Other languages
English (en)
Inventor
Sarit Mukherjee
サリット・マクハージー
Walid G Aref
ワリッド・ジー・アレフ
Ibrahim M Kamel
イブラヒム・エム・カメル
David A Braun
デイビッド・エイ・ブラウン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US09/565,979 external-priority patent/US6556998B1/en
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of JP2001075858A publication Critical patent/JP2001075858A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Abstract

(57)【要約】 (修正有) 【課題】 分散型ファイルシステムの性能を向上させ
る。 【解決手段】 ファイルシステムは、分散型ファイルシ
ステムのアプリケーションデータを記憶する複数の自律
的データディスクを含む。複数の蓄積属性ディスクは、
ファイルシステムのメタデータ及びディレクトリ構造を
記憶する。ディレクトリ構造はネイティブなファイルシ
ステムを用いて複数の蓄積属性ディスクに記憶される。
複数ファイルシステムの複数クライアントのうち1つ
は、システムへのアクセスを制御する構成マネージャと
して利用される。分散型ファイルシステムは複数のエー
ジェントを用いて、リアルタイムアプリケーション及び
ファイルへの同時の読み出し/書き込みをサポートす
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般に分散型ファイ
ルシステムに関し、とくにリアルタイム分散型ファイル
システムのアーキテクチャ及び実装に関する。
【0002】
【従来の技術】この出願は、1999年7月6日に出願
された米国仮特許出願第60/142,489号の出願
日の利益を請求する。
【0003】マルチメディアのディジタル化傾向に伴っ
た、ネットワーク利用及び記憶装置の技術における進歩
は、大容量で高速なサーバの必要性を生み出した。上記
サーバは典型的にはネットワークに接続された倉庫とし
て用いられる。複数のクライアントのホストがそれらを
ネットワーク上でオンラインで用いることができる。ク
ライアントたちはファイルシステムを彼らのホストに装
着し、サーバの機能をシームレスに用いる。
【0004】マルチメディアのサーバは、集中型、分散
型、又はサーバを用いない型の3つのタイプであること
ができる。集中型サーバにおいて、単一の専用ノードが
アドミッション処理と、同じく別のファイル動作及びセ
キュリティー問題を管理する。分散型のサーバの環境に
おいては、指定されたノードの集合がサーバの負荷及び
機能を分担する。サーバを用いない型のシステムにおい
ては、すべてのクライアント及び記憶デバイスはネット
ワークに直接に接続されている。
【0005】一般に、1つのサーバの環境において実装
された分散型ファイルシステムは、個々のコンピュータ
に関連付けられたファイルシステムとは独立の、分散型
のディレクトリ構造を含む。上記分散型のディレクトリ
構造は、個々のコンピュータ上で反復され、かつ記憶さ
れる。上記分散型のディレクトリ構造を反復し記憶する
ことに関連付けられたオーバヘッドは大きく、このこと
はファイルシステム全体の性能を低下させる。
【0006】それに加えて、従来の分散型ファイルシス
テムは帯域幅アクセス制御のための方法を欠いている。
ゆえにクライアントたちがファイルシステムへのアクセ
ス数を増大させるとき、ファイルシステムのシステム資
源への要求が増大し、リアルタイムのアプリケーション
のサポートができなくなる。
【0007】
【発明が解決しようとする課題】従って、分散型ファイ
ルシステムを実装することの改良された方法が必要とさ
れている。上記システムは、分散型ファイルシステムの
ディレクトリ構造を記憶することと、アプリケーション
データを記憶することとに関連付けられたオーバヘッド
を減少させなければならない。また、上記システムは分
散型ファイルシステムの性能を向上させなければなら
ず、それは記憶システムのスケーラビリティーを提供し
なければならない。また、上記システムはネットワーク
及びそのプロトコルからは独立でなければならない。ま
た、リアルタイムの分散型ファイルシステムが必要とさ
れている。
【0008】
【課題を解決するための手段】本発明は、1つ又は複数
のホストシステムにより、ネットワーク上で1つ又は複
数の記憶システムに情報を記憶し、及び上記記憶システ
ムから情報を検索するための分散型ファイルシステムを
提供する。好ましい記憶システムは、われわれが自律的
(autonomous)ディスク(AD)と呼ぶデバイス(装
置)である。上記ADは、関連付けられた処理エンジン
を有する、ディスク又は別の記憶媒体である。上記ファ
イルシステムはこの処理エンジンに都合が良い少ない処
理要求をするので、上記ADは相対的に小さな、低コス
トのプロセッサを用いて実装することができる。
【0009】本発明のファイルシステムは、上記AD記
憶システム上に存在する記憶システムのカーネル又はエ
ージェントを備える。上記記憶システムのカーネルは、
上記記憶システムに記憶された情報の物理的な記憶位置
を決定するフリーリスト管理システムを含む。上記ファ
イルシステムは上記ホストシステム上に存在するディレ
クトリ構造システムと共に動作し、上記ディレクトリ構
造システムは上記記憶システムに記憶された情報に対応
した複数のファイルの論理的な構成を定義する。上記フ
ァイルシステムは、希望するならば、上記ホストに関連
付けられて存在するファイルシステムを用いて実装する
ことができる。
【0010】上記ネットワークに接続された蓄積属性デ
ータ記憶装置(legacy attribute data store)は、上
記記憶システムに記憶された上記情報に関連付けられた
メタデータを記憶する。複数のホストシステムはこのメ
タデータにアクセスし、上記複数のADに記憶された情
報の物理的な記憶位置を決定することができる。
【0011】上記ファイルシステムは、上記蓄積属性デ
ータ記憶装置から上記メタデータにアクセスした、上記
ホストシステム上に存在するクライアントのカーネル又
はエージェントをさらに備える。上記クライアントエー
ジェントは上記ディレクトリ構造システムと共通の操作
で、複数のファイルを対応する物理的な記憶位置に関連
付ける。この情報を用いて、あるホストは情報を上記記
憶システムから検索し、ネットワーク上でホストシステ
ムに伝送してもよい。
【0012】本発明のこの好ましい実施形態において用
いられる複数の自律的ディスクは、ファイルサーバのデ
ザインにおいて柔軟性を提供する。複数のADの間でタ
スクを代行することで、それらを用いて分散型ファイル
システムを構成することができる。上記ADの中でファ
イルシステム動作を実行することによって、サーバを用
いない型のファイルシステムが実装可能である。また、
1つのADの中にセキュリティーモジュールを構成し、
認証されていないシステムの使用を防ぐことができる。
ADは異なるハードウェア及びソフトウェア手段を用い
て実装することができる。
【0013】本発明で記述されている分散型ファイルシ
ステム(distributed file systemDFS)のアーキテ
クチャは、上記ADを基礎単位(building block)とし
て用いている。上記DFSは、ネットワーク上で接続さ
れた多数の記憶デバイスを持つ、分散型アーキテクチャ
を有する。また、複数のユーザホストは同一のネットワ
ークに接続されている。構成マネージャと呼ばれる複数
のユーザホストのうちの1つが備えられ、それによって
分散型のDFS特性データ構造と、システム構成とを保
持し、アクセス制御を提供する。上記DFSのカーネル
は、複数の自律的ディスク、複数のユーザホスト及び構
成マネージャの全体に分散されている。上記カーネル
は、ユーザに対してトランスペアレントなシステムの基
礎動作(underlying operation)を作成する。
【0014】上記ADは、小さなプログラム可能なメモ
リを持つ、ディスク又は別の記憶媒体であり、かつ上記
ADはアクティブなネットワークに接続された複数のデ
ィスク、複数の標準のワークステーション又は別の手段
を介して実装することができる。上記ADは軽いファイ
ルシステムに関連したいくつかの機能を実行し、これら
の機能はディスクにおいて動作するDFSカーネルの一
部として実行される。それはまた、それをネットワーク
に直接に接続することを可能にする、ネットワークイン
ターフェースを有する。
【0015】DFSデータは好ましくは複数のボリュー
ムに構成される。各ボリュームは、自律的ディスクの1
つのタイプである、1つ又は複数の自律的データディス
クからなる。1つのデータファイルは、上記ボリューム
の複数のディスク全体にストライプ化される。上記ボリ
ュームのためのファイルシステムメタデータは、蓄積属
性ディスク(legacy attribute disk LAD)と呼ば
れる別の自律的ディスクに記憶される。分散型ファイル
システムのディレクトリ構造は、そのネイティブファイ
ルシステムを用いるLAD上に記憶される。このスキー
ムは、DFSが制御機構とデータを別々に取り扱うこと
を可能にし、それによってオーバヘッドを減少させる。
上記ファイルシステムはリアルタイムアプリケーション
をサポートし、スケーラブルなデータ記憶装置を提供す
る。
【0016】上述のシステムは1つの例にすぎない。本
発明によるシステムをさまざまな方法で実装することが
できる。
【0017】本発明のこれらの及び別の目的は、それら
の別のファイルシステム上における利点と同様に、添付
された図面に関連する以下の詳細な説明により、当業者
には明らかであろう。
【0018】
【発明の実施の形態】図1(a)は、一般に10におい
て、分散型アーキテクチャを有するファイルシステムを
図示する。上記アーキテクチャは、ネットワーク14に
接続された、自律的ディスク(AD)12と呼ばれる多
数の記憶デバイスを有する。好ましい実施形態におい
て、上記ネットワーク14はシステムの大きな帯域幅を
サポートすることができる高速ネットワークであるが、
上記システムはさまざまな速度及びタイプのネットワー
クを用いて実装することができる。複数のユーザホスト
16は同一のネットワーク14に接続されている。ま
た、構成マネージャ(configuration manager CM)
18も上記ネットワークに接続され、システム特性デー
タの複数の構造及び構成を保持しかつ分配する。上記C
Mはそれ自身がユーザホストであることができる。
【0019】図1(b)は分散型DFSカーネル20を
図示する。上記カーネル20はCM18と、複数のユー
ザホスト16と、複数のAD12との全体に分配されて
いる。CM22と、複数のユーザホスト24と、複数の
AD26とにおける上記DFSカーネルの部分は、とも
に動作し、ユーザホスト16に基礎分散型ファイルシス
テムのトランスペアレントなビューをシームレスに提供
する。上記複数のユーザホスト16は、上記DFSにお
いて、データを読み書きするために用いられるプロトコ
ル及び手順を関知していない。
【0020】上記自立ディスク(AD)12はアクティ
ブなディスクであり、好ましくは小さなプログラム可能
なプロセッサ及びメモリを含む。上記AD12は、ネッ
トワークに接続されたアクティブな複数のディスク、複
数の通常のワークステーション又は別の手段を介して実
装することができる。上記AD12は、それを上記ネッ
トワーク14に直接に接続するネットワークインターフ
ェースを有する。上記AD12上のプロセッサは、ファ
イルシステムに関連したいくつかの機能を実行する。こ
れらの機能は上記ディスク26において動作するDFS
カーネルの一部として実行される。上記機能は好ましく
は、フリーリスト管理、ネットワークプロトコル処理及
びパケット送信、ディスク要求スケジューリング及びア
クセスセキュリティー制御を含む。
【0021】図1(c)は、複数のAD12に単一のプ
ロセッサ25、メモリ27、ネットワークインターフェ
ースカード(NIC)28及びI/Oバス30を提供す
る、PCでの実装を図示している。上記プロセッサ25
は、各AD12について要求されたファイルシステム及
び複数の処理機能を実行する。上記メモリ27及びNI
C28は計算空間(computational space)、及びネッ
トワーク14への接続を提供する。プロセッサ25、メ
モリ27、NIC28及び複数のディスク11は、共有
のI/Oバス30上で互いに接続されている。ディスク
の総帯域幅がPC及びNICの結合によってサポートさ
れたネットワークの総帯域幅を超えない限り、複数のA
D12が1つのPC上で実装できる。1つのAD12の
アドレスは、単純に、PCのホストアドレスとディスク
IDとからなる組又は集合(tuple)である。
【0022】上記ホストが複数のブロックのフリーリス
トを保持し、上記リストからオンデマンドで複数のブロ
ックの割当て及び割当て解除をする蓄積ファイルシステ
ムとは異なり、AD12におけるDFSカーネルはこの
複数の機能の集合を実行する。また、AD12はプロト
コル処理の部分集合を実行する。好ましい実施形態にお
いてネットワークプロトコルはインターネットプロトコ
ルであるが、別のプロトコルを用いてもよい。AD12
のためのデータリンク層はファイバーチャネル(Fibre
Channel)又は別のMAC(例えば、高速又はギガビッ
トイーサネット(登録商標))である。ディスク常駐プ
ロセッサはインテリジェント要求スケジューリングを管
理する。スケジューリングアルゴリズムはプログラム可
能であるべきだが、プログラム可能でないアルゴリズム
を用いることは可能である。上記AD12は上記ネット
ワーク14に直接に接続されているので、セキュリティ
ー攻撃の目標になることがあり、ゆえにAD12はそれ
自身のアクセスセキュリティーチェックを実行しなけれ
ばならない。
【0023】図2は、DFS内のボリューム構成46を
絵で表現したものを図示している。ファイルシステムは
アプリケーションデータとメタデータを別々に記憶す
る。自律的データディスク(ADD)42と、蓄積属性
ディスク(LAD)44との、2つのディスクが用いら
れる。DFSボリューム46は、多くのADD42と、
少なくとも1つのLAD44とからなる。複数のADD
42を持つボリューム46上の複数のファイルはストラ
イプ化されている。LAD44をいくつかのパーティシ
ョンに分割することにより、同一のLAD44を共有す
る複数のボリュームを有することができ、ここで各DF
Sボリュームに対して1つのパーティションが分配され
る。
【0024】DFSのための構成マネージャ(CM)1
8は、ボリューム構成及び複数のユーザの許可情報に関
連した、全ファイルシステムのメタデータを保持する。
DFSボリューム46にアクセスするために、ユーザ1
6はCM18を介してシステムにログインする。CM1
8を介してDFSにログインする際、ユーザ16はその
ために認証を受ける複数のボリューム46へのアクセス
を取得する。また、CM18は、複数のLAD44及び
複数のADD42に、それらにアクセスすることができ
る複数のアクティブなユーザ16について通知する。
【0025】図3は、DFSへのユーザのログイン手順
の概略を図示している。新しいユーザ16がDFSボリ
ュームにアクセスしたいと考えたとき、最初に上記ユー
ザは、構成マネージャ18にログイン要求50を送るこ
とにより、システムにログインする。CM18はユーザ
16を確認し、ユーザがアクセス(読み出し及び/又は
書き込み)する許可を有する複数のボリュームを用いる
ことをユーザに許可する。CM18はボリュームレベル
アクセス認証のみを実行する。
【0026】いったんCM18がユーザ16を認証する
と、52で図示されているように、CM18は複数のA
DD42にユーザの身元証明を通知する。上記複数のA
DD42はユーザの身元証明をそれらの各アクセスコン
トロールリストに追加する。ある要求があるADD42
に到来するとき、最初にそれは上記要求が有効な身元証
明で特徴付けられていることを確認し、次いで上記要求
(読み出し又は書き込み)を処理する。上記ユーザの身
元証明が上記ADDのアクセスコントロールリストに存
在しないとき、要求50を発したユーザに応答が送られ
ることなく、要求50は静かに拒絶される。
【0027】図4はDFS読み出し手順の高レベルのビ
ューを図示する。上で議論されたように、クライアント
16は、ログインしてボリューム46にアクセスするこ
とを許可された後でのみ、この動作を実行することがで
きる。アプリケーションの読み出し要求に応答して、ユ
ーザホスト16において動作しているDFSカーネル
は、60で図示されるように、最初にボリューム46の
LAD44に接触し、ファイルの属性を読み出す。62
で図示されるように、別の情報に混じって、LAD44
はユーザ16にファイルインデックステーブルを返す。
上記ファイルインデックステーブルを用いて、ユーザホ
スト16におけるDFSカーネルは、1つの読み出し要
求を、1つ又は複数のADD42への1つ又は複数の伝
送要求の集合に変換する。上記伝送要求は、複数のAD
D42のアドレスと、複数のADDから読み出されたブ
ロックとを含む。次いで上記要求は、64で図示される
ように、ADD42に送られる。66で図示されるよう
に、ADD42は要求されたデータブロックを返す。
【0028】図5はDFS書き込み動作70の高レベル
のビューを図示する。要求されたファイルに対応するフ
ァイルインデックステーブルがユーザ16が書き込むボ
リューム46のLAD44に存在しないことがあるた
め、上記書き込み動作70は読み出し動作58とわずか
に異なっている。72で図示されるように、ユーザ16
は要求を送ってファイルを作成する。それに応答して、
LAD44はユーザ16にフリーブロックアドレス74
を送る。76で図示されるように、ユーザ16はファイ
ルが書き込まれているときファイルインデックステーブ
ル75を作成し、上記テーブルをボリュームのLAD4
4に送る。ユーザ16におけるDFSカーネルからの各
書き込み動作において、78で図示されるように、デー
タのブロックがADD42に送られる。80で図示され
るように、ADD42はフリーブロックと、データを保
持するための関連付けられたフリーリストとを選択し、
ユーザ16にブロックアドレスを送る。ステップ76で
図示されるように、ユーザはこの情報からファイルイン
デックステーブル75を構成し、このファイルインデッ
クステーブルはボリュームのLAD44に送られる。
【0029】DFSは、アプリケーションデータ及びフ
ァイルシステムメタデータが別々に記憶されるデータフ
ォーキング(data forking)を用いる。複数のADD4
2はアプリケーションデータを記憶し、複数のLAD4
4はメタデータを記憶する。ボリューム46からアプリ
ケーションによって見られる帯域幅は、主としてLAD
44ではなくADD42によって制限される。ボリュー
ムのストライプサイズを増大させることはボリュームの
総帯域幅を増大させる。
【0030】図6はDFSにおいて用いるための異なる
ボリューム構成を図示する。DFSボリューム46は9
0で図示されるようにすべて同種のディスクからなって
もよく、又は上記ボリュームは92、94及び98で図
示されるように異種のディスクを備えてもよい。このオ
プションはファイルシステムをディスク技術の変化に適
応させる。あるボリュームのメンバーである最も遅いA
DD42はボリュームの総帯域幅を制限し、ボリューム
の総帯域幅は、ディスク数と、ディスクの中の最も狭い
帯域幅との積に等しくなる。
【0031】DFSは複数のボリュームを互いに共通部
分を有するように交差させることを許す。ボリューム9
4及び98はディスク96において交差されている。1
つのADD42は1つより多くのボリュームの一部であ
ることができる。それらのADDは共有ADD(shared
ADD SADD)96と呼ばれる。SADD96は分割
されず、メンバーであるすべてのボリュームに対して同
時に役立つ。ボリュームの交差を許すことにより、DF
Sはシステム内の別のディスクよりもさらにずっと高速
な複数のディスクをより効率的に使用することができ
る。交差しているボリューム94及び96は、異種のも
のとして図示されているが、交差している同種のボリュ
ームを有することは可能である。
【0032】LAD44はDFSシステムにおいて二重
の役割を果たす。第1に、それは、ホストオペレーティ
ングシステムのネイティブファイルシステム(例えば、
Windows NT(登録商標)ホストに対するNF
TS、Linuxホストに対するext2fs)として構成
され、すべてのディレクトリ構造及び機能を扱う。これ
はセキュリティーの1つのレベルがアクセスであるこ
と、すなわちディレクトリ及び/又はファイルアクセス
の許可であること含む。第2に、LAD44はDFSに
ついてのメタデータを記憶する。各ファイルDFSは、
LAD44中に対応するエントリを有している。
【0033】DFSファイルはDFSボリューム46に
記憶された仮想的な複数のブロックのリストからなる。
ボリューム46上の複数のブロックのレイアウトは(フ
ァイル毎にランダムスタートディスクを持つ)ラウンド
ロビン(round-robin)である。1つのブロックのサイ
ズは予め定義されていて、ボリューム46毎に固定され
ている。上記固定されたサイズは、いくつかの目的を果
たす。第1に、それはファイルシステムの実装を単純化
する。第2にそれは、可変サイズのブロックと比較した
とき、より確定的なアクセス時間を提供する。第3にそ
れは、より確定的なバッファ割当てを提供する。第4に
それは、より確定的なディスク及びネットワークのスケ
ジューリングを提供する。第5に、内部フラグメンテー
ションは小さく、外部フラグメンテーションは存在しな
いので、それはフラグメンテーションを減少させる。
【0034】ファイル中の各仮想ブロックは、仮想ブロ
ックアドレス(virtual block address VBA)を有
する。VBAが与えられれば、DFSはそれをボリュー
ム46内の適当な論理ブロックアドレス(logical bloc
k address LBA)にマップする。1つのDFSボリ
ューム46は典型的には(複数のブロックが物理的に記
憶されている)複数のADD42からなるので、各VB
Aはボリューム46内の対応するADD42のLBAに
マップされる。これはVBAからLBAへのマップであ
る変換テーブルと、ADD42のIdとを生じさせる。
【0035】これらのマッピングを持つテーブルは、
(ネイティブファイルシステム中の)LAD44にファ
イルとして保持され、DFSファイルアクセスのための
メタデータとして用いられる。このファイルは属性ファ
イルとして参照される。上記テーブルはVBAに対して
1つのエントリを含むように記述されたが、独立した複
数のアドレスマッピングの代わりにレンジマッピング
(range mapping)を記憶することができる。DFSフ
ァイルにアクセスするために、ユーザ16は最初に対応
する属性ファイルを取得しなければならない。完全なミ
ラーリング(RAIDレベル1)を持つ記憶レベルの誤
り許容差を実装するために、複数のVBAからLBAへ
のマッピングテーブルを属性ファイルの中に記憶するこ
とができる。
【0036】上記属性ファイルはDFSファイルの情報
のいくつかの鍵となる部分(key piece)を記憶する。
拡張可能な構造が上記属性を記憶する。上記属性ファイ
ルに保持される属性は、ファイルサイズ、帯域幅要求、
マジックナンバー、メディアタイプ、冗長度のレベル及
びファイルインデックステーブルを含んでもよい。
【0037】ファイルサイズはDFSファイルのサイズ
である。上記サイズはしばしば修正され、いかなる時で
も(例えば、ファイルが書き込まれるとき、そのサイズ
は連続的に変化する)正しいファイルサイズを取得でき
るようにする。書き込まれるときに、各ファイルは目標
の帯域幅使用量を割り当てられる。これはファイルが開
かれたときにファイルのために想定されたデフォルトの
帯域幅である。ユーザ16は明示されたコントロールコ
マンドによって帯域幅使用量を変化させる。デフォルト
の帯域幅とは異なる帯域幅で、あるファイルを開くこと
は可能である。マジックナンバーは、属性ファイルがネ
イティブのファイルに見えるにもかかわらず実際にはD
FSのためのメタデータであり、従って異なる扱われ方
をされなければならないということを定義する。メディ
アタイプは、メディアの型(例えば、音声、動画像、テ
キスト及び画像)及び圧縮メカニズム(例えば、MPE
G−2、DVCPro)を定義する。冗長度のレベル
(Level of Redundancy LoR)は、DFSファイル
のために構成された記憶装置レベルの冗長度を定義す
る。上記属性ファイルは、LoR特性と同じくらいの多
くのインデックステーブルを記憶する。
【0038】CM18はすべてのボリューム特性情報を
記憶する。各ボリューム46について、CM18は以下
の情報を保持しなければならない。ボリューム名、スト
ライプ集合に関連付けられた複数のADD、ストライプ
集合の順序、ボリュームの作成時間、ボリュームのサイ
ズ、ボリューム内のフリースペース、ボリュームの帯域
幅、ボリュームのフリー帯域幅、ブロックサイズ及びボ
リューム内のファイルのデフォルトの読み出し/書き込
み帯域幅。
【0039】ホストがディスクのフリーリストを保持
し、リストからの複数のブロックをオンデマンドで割当
て及び割当て解除する蓄積ファイルシステムとは異な
り、ディスクにおけるプロセッサは同一の組の複数の機
能を実行する。ADD42はプロトコル処理の部分集
合、好ましくはインターネットプロトコルを実行する
が、別のプロトコルを用いてもよい。ADDについての
データリンク層はファイバーチャネル(Fibre Channe
l)又は別のMAC(例えば、高速又はギガビットイー
サネット)であることができ、好ましくは高速プロトコ
ルが用いられるが、別の選択も可能である。ディスク常
駐のプロセッサはインテリジェント要求スケジューリン
グを処理することができる。スケジューリングアルゴリ
ズムはプログラム可能であることが望ましい。ADD4
2はネットワーク14に直接に接続されているので、A
DD42はセキュリティー攻撃の目標となる。ゆえにA
DD42はそれ自身のアクセスセキュリティーチェック
を実行しなければならない。
【0040】実装の容易さのためと、二重の手間を減ら
すために、DFSはそれ自身のディレクトリ構造を実装
しない。それはユーザホスト16のネイティブファイル
システム、例えばNTFSのディレクトリ構造を用い
る。
【0041】図7はDFSディレクトリ構造の実装を図
示し、NTFSを用いる構造を例示している。NTFS
を用いる議論及び図解は単に例示として存在し、別のフ
ァイルシステムを用いてもよいことが理解されるべきで
ある。
【0042】各DFSボリューム46はNTFSを理解
するLAD44を有している。DFSボリューム46内
の各「擬似ディレクトリ」に対して、上記ボリューム4
6の対応するLAD44に存在するNTFS122に、
1つのディレクトリが存在する。同様に、各DFSファ
イルについて、LAD44内に1つのNTFSファイル
が存在する。このように、上記実装において、LAD4
4はディレクトリ情報とアクセス制御を保持し、複数の
ADD42はアプリケーションデータを記憶し、ストリ
ーム化する。ステップ110において、ユーザホストに
おける1つのアプリケーションがDFSファイル及び/
又はディレクトリを要求するとき、ステップ112にお
いて、ユーザホスト16において動作するDFSカーネ
ルはNTFSに通過させる。ステップ114においてN
TFSはLADに接触し、ステップ116において対応
する属性ファイルを読み出し、次いでステップ118に
おいてそれはDFSに通過される。次いでステップ12
0においてDFSはアプリケーションデータによって要
求に応答する。
【0043】図8はファイルシステムにおける詳細な読
み出し動作を図示している。ステップ130において、
DFSクライアントカーネル24はアプリケーションか
らの読み出し要求を受信する。ファイルが開かれると
き、ボリュームに対応するLAD44は、要求されたD
FSファイルに対応する属性ファイルを調べる。ステッ
プ132において、読み出し要求を発したDFSクライ
アント16はファイルを読み、ステップ134において
属性ファイルをそのメモリにキャッシュする。属性ファ
イルに記憶されたファイルインデックステーブルはDF
Sファイルについてのメタデータとして用いられる。
【0044】ステップ136において、読み出し要求か
ら、クライアントDFSはファイルインデックステーブ
ルを用いて対応するADD42、及びADD42内のL
BAを計算する。読み出し要求に関して作成されたこの
組(tuple)が複数存在しうる。次いでステップ138
において、クライアントDFSは(複数の)組(tupl
e)を適当な(複数の)ADD42に送る。ステップ1
40において各ADD42は要求されたLBAを読み出
し、ステップ142においてそれをクライアントDFS
16に送り戻す。次いでクライアントは複数のADD4
2からデータを受信する。すべてのブロックが読み出さ
れた後(及び必要ならばサイドバッファリングを実行し
た後)、ステップ144においてクライアントDFS1
6はアプリケーションに要求されたバイト数を送る。
【0045】書き込み動作は2つの部分で記述される。
第1の部分は、以前存在しなかったファイルがどのよう
に作成されるかを記述する。第2の部分は、存在するフ
ァイルがどのように更新されるかを記述する。2つの部
分の主な違いは、第1の場合ではファイルインデックス
テーブルが存在しないということである。
【0046】図9は詳細な書き込み動作を図示する。ク
ライアント24におけるDFSカーネルはアプリケーシ
ョン160から書き込み要求を受信する。クライアント
DFS16(カーネル24)は、ファイルが書き込まれ
なければならないDFSボリューム46にストライプ集
合に対して接触し、ランダムスタートディスクからスタ
ートする。ステップ162において、DFSクライアン
トカーネル24は、DFSボリューム46からIノード
テーブルを読み出すか、又はIノードテーブルが存在し
ないときDFSクライアントカーネルは上記テーブルを
作成する。ステップ164においてIノードテーブルは
カーネルのメモリ164にキャッシュされる。第1のブ
ロックがスタートディスクに書き込まれる。第1のブロ
ックの後に、複数のブロックがストライプ集合上にラウ
ンド・ロビンの方式で書き込まれる。読み出し要求を出
しているときに複数のADD42の任意のメンバーがス
ペースを使い果たしたならば、ボリューム46はいっぱ
い(full)であるとみなされる。
【0047】ステップ160においてクライアントDF
S16が書き込み要求を受信するとき、クライアントD
FS16は要求された複数のバイトを適当なDFSディ
スクブロックに分割する。次いで各ブロックは、3つの
フィールド、すなわちADD42のアドレス、書き込む
べきデータブロック、及び(−1)に初期化されたLB
Aからなる組(tuple)として、正しいストライプ集合
シーケンスの中のADD42に送られる。(−1)に初
期化されたLBAを有する理由は、ADD42がデータ
のために1つのフリーブロックを割り当てる必要がある
ことをADD42に知らせるためである。好ましい実施
形態は(−1)の初期値を用いるが、別の方法を用いて
もよい。ADD42は、それがデータブロックを書き込
むための空間を有しているか否かを評価する。ステップ
168において、それがフリーブロックを見つけること
に成功したときは、それは上記ブロックを書き込む。次
にステップ170において、それは対応するLBAをク
ライアントDFSに肯定応答として戻す。クライアント
DFS16はLBAを用いて、書き込まれているDFS
ファイルのためのファイルインデックステーブルを構成
する。ステップ172においてDFSクライアントカー
ネル24が肯定応答を受信するとき、ステップ174に
おいてそれはIノードテーブルを更新する。書き込み手
順を促進するために、ブロックが実際にディスクに書き
込まれる前に上記肯定応答は送られる。理想的には、フ
ァイルシステムについての首尾一貫した視点を持つため
には、各ブロックが書き込まれた後で、ステップ176
においてファイルインデックステーブルは対応する属性
ファイルに書き戻されるべきであるが、パフォーマンス
ヒット(performance hit)のためにファイルインデッ
クステーブルは対応する属性ファイルにより少ない頻度
で最適にライトバックされる(ステップ176)。
【0048】更新手順において、ファイルのファイルイ
ンデックステーブルは、対応する属性ファイルの中に存
在する。クライアントDFS16はファイルインデック
ステーブルの読み出しおよびキャッシュをし、要求され
たブロックをADD42及びLBAの更新されたアドレ
スにマップする(読み出し動作と同様)。更新動作にお
いて、クライアントDFS16は(前の段落で記述され
た)書き込み動作と同一の3つのフィールドからなる組
(tuple)を送るが、クライアントDFSは(−1)の
代わりに実際のLBA数を設定する。このことはADD
42にディスク内の対応するLBAを更新することを知
らせる。肯定応答として、同一のLBAがクライアント
DFS16に戻される。
【0049】システムの任意の共通データ構造に実行さ
れる更新が存在しないため、複数のDFSクライアント
16の間の同時の読み出しをサポートすることは単純で
ある。各クライアントDFS16はDFSファイルに対
応する属性ファイルの読み出し及びキャッシュをし、前
述のようにデータを読み出す。
【0050】複数のクライアント16の間での同時の書
き込みはDFSにおいてサポートされている。しかしな
がら、ファイルの最終的なコンテンツは、競合するスレ
ッドがファイルに書き込むシーケンスに依存し、確定的
でない。同時書き込み動作のために、各ライター(writ
er)は共有メタデータ、とくにファイルインデックステ
ーブルをロックする。異なるライターはテーブルの交差
していない領域をロックすることができる。
【0051】同時的なリーダー(reader)とライターの
場合には、主な関心は、ライターが生成しているDFS
ファイルの最新のファイルインデックステーブルにリー
ダーがどのようにアクセスするかということである。フ
ァイルインデックステーブルの最新のコピーは常にライ
ターDFSとともにある。それは対応する属性ファイル
に周期的に書き出される。リーダーがライターよりも高
速であるとき、リーダーはライターがファイルを完成さ
せる前にファイルの終わりに遭遇することがある。DF
Sはクライアント16の速度を拘束しないので、そのよ
うな状況が発生しないと保証することはできない。アプ
リケーションはこれを察知し、いかなる結果も扱わなけ
ればならない。いくつかのデザインオプションはこれの
発生を防ぐことができる。
【0052】リーダーは、ファイルインデックステーブ
ルを、DFSファイルの対応する属性ファイル(LAD
に存在する)からキャッシュする。上記属性ファイル
は、上記ファイルがライターによって書き込みをロック
されていることを示すフラグを含む。このことは、プロ
セスの過程でリーダーが最新の情報を持つファイルイン
デックステーブルを(それをLADから再キャッシュす
ることによって)取得しなければならないことを、リー
ダーに通知する。リーダーは更新されたテーブルを一定
の時間周期の後で周期的に請求するか、リーダーは帯域
幅の使用量に基づいて変化できる時間周期の後で、更新
されたテーブルを周期的に請求するか、リーダー自身が
現在のテーブルの終わりに近接していることを発見した
とき、リーダーは更新されたテーブルを請求するか、又
はライターが更新されたテーブルを関心を持たれたリー
ダーに周期的に送るかという、いくつかの変形が可能で
ある。
【0053】ライターがファイルをボリュームに書き込
むとき、ライターはファイルインデックステーブルを生
成する。ライターは、Nブロック毎(Nは定数である)
の書き込みの後に、テーブルの新しいエントリを属性フ
ァイルに書き込む。更新の別の方法も可能である。
【0054】DFSにおいて、帯域幅の制約が解決され
る限り、ファイル毎に複数のリーダーとライターが存在
することができる。複数のバイト領域が分割されない限
り、1つのファイルは複数のアプリケーションによって
バイトレベルでロックされる。
【0055】アドミッション制御メカニズムは、各クラ
イアント16のリソース要求と、それらのリソースの現
在の使用可能度とに基づいて、システムに入ることを許
可されたクライアント16の数を制御する。帯域幅管理
は、クライアント16の交渉されたリソース使用量の実
施強制に関係している。DFSにおいて、アドミッショ
ン制御はクライアントDFS16において制御され、帯
域幅の実施強制は複数のADD42において実行され
る。
【0056】考慮された複数の一次リソースは、ディス
ク及びネットワークの帯域幅である。システムの構成要
素の処理パワーは、各構成要素の利用可能なディスク及
びネットワークの帯域幅をサポートするために十分でな
ければならない。ゆえに、最大限の負荷のもとで、ディ
スク及びネットワークのインターフェースを最大限に利
用することができる。必要なバッファリング及びキャッ
シングのために十分なメモリが存在しなければならず、
プロセッサはディスク及びネットワークの双方を使用中
に保持する必要がある。このことは、複数のADD42
及びDFSクライアント16にも適用される。1つのク
ライアント16は要求されたデータを要求された速度で
処理できなければならない。
【0057】アプリケーションが対応するDFSファイ
ルを開くとき、DFSストリームはクライアントDFS
16においてアドミッションを制御される。この時間の
間、クライアントDFS16はボリューム46を調べ、
リソースの使用可能度を決定する。十分なリソースが使
用可能ならば、ファイルを開く動作は進行する。そうで
ないときは、帯域幅は与えられず、アプリケーション
は、ファイルをリアルタイムでないモードで開くか、後
にリアルタイムモードに戻るかのいずれかのオプション
を有する。特別なDFSで特定されたデバイスのI/O
制御メカニズムは、アプリケーションに帯域幅割当ての
変更を要求することを許可する。クライアントDFS1
6もこれらの要求を扱う。
【0058】アプリケーションについて要求された帯域
幅が与えられたのち、アプリケーションが上記ファイル
に任意のI/O動作(読み出し/書き込み)を実行する
たびに、アドミッション制御が呼び出される。ファイル
が閉じられるとき、割り当てられたリソースはアプリケ
ーションから取り戻される。アドミッション制御は以下
のイベントにおいてDFSファイルに実行される。ファ
イルが開かれるとき、帯域幅についての要求が発せられ
るとき、ファイルがアクセスされるとき、及びファイル
が閉じられるとき。
【0059】一般にオペレーティングシステムは、オー
プン、読み出し及び書き込み要求を拡張するための方法
をサポートしていない。ゆえにデフォルトの伝送帯域幅
要求は、各ファイルか、そのディレクトリか、それが存
在するボリュームかのいずれかの属性として、各ファイ
ルに関連付けられていなければならない。1つの方法が
存在し、開いているファイルの取り扱い(file handl
e)上の予約された帯域幅を変更しなければならない。
【0060】伝送帯域幅は、有用であるデータについ
て、データが要求者のメモリに到着しなければならない
最小の平均速度として定義される。このことは要求者の
ネットワークインターフェースハードウェア及びネット
ワーキングソフトウェアによって制限されるということ
が仮定される。
【0061】これらの仮定のもとでは、ファイルが開か
れるとき又は閉じられるとき、及びファイルの取り扱い
上の帯域幅要求が明確に変化するすべてのときに、AC
が実行される。ファイルが開かれるとき、ACはファイ
ルのデフォルトの伝送帯域幅に基づいて実行される。現
在利用可能な帯域幅が不充分であるとき、ファイルはや
はり開かれるが、どのような帯域幅予約も与えられない
(ACは要求を拒否する)。ファイルへの任意のアクセ
スは、伝送帯域幅が利用可能になるまでブロックされ
る。このことはアプリケーションに、要求を発すること
によって異なる帯域幅を要求し、現在又はデフォルトの
値から別の値に割当てを変化させることを可能にする。
このときACが呼び出され、要求された帯域幅を予約す
る。上記割当て変更が成功しなかったときは、ファイル
の取り扱いは帯域幅を持たないものとして再びマークさ
れる。いかなる予約された帯域幅にもよらないファイル
へのアクセスは、帯域幅が利用可能になるまでブロック
される。アプリケーションは、第1のアクセス(読み出
し又は書き込み)が発せられたとき、ブロックされる。
アプリケーションは帯域幅割当てを明確に0に設定し、
複数のアクセスをベストエフォートの基準でサービスす
ることができる。また、ファイルが閉じられて帯域幅割
当てが開放されるとき、ACが呼び出される。
【0062】新しいファイルのためのデフォルトの伝送
帯域幅は、単純な引継ぎメカニズムを用いて決定され
る。ルートディレクトリは、DFSボリューム46の初
期化の間にその属性の1つとして定義されるデフォルト
の伝送帯域幅を有する。すべての新しいファイル又はデ
ィレクトリは、その親ディレクトリから伝送帯域幅を引
き継ぐ。デフォルトは、OS及びアプリケーションソフ
トウェアに基づいて変化するコマンドで変更することが
できる。
【0063】アドミッション制御は、単に、要求を受容
することがすでに許可されたファイルの伝送の拘束条件
を破らないか否かと、さらに新しいファイルの要求を保
証できるか否かとを決定する。アドミッション制御は、
ファイル上で動作する特定のアプリケーションによる帯
域幅使用量を管理しない。この理由のために、帯域幅管
理エンティティが必要とされる。このエンティティの主
な目的は、あるアプリケーションが要求されたものより
も多くのリソース(ディスク又はネットワーク帯域幅)
を取得しないことを確かめることである。
【0064】帯域幅実施強制は、クライアント16又は
複数のADD42のいずれかにおいて処理することがで
きる。最も高い効率のために、それは複数のADD42
に配置されるべきである。DFSは要求の「プル(pul
l;引っ張る)」モードをサポートする。このモデルに
おいて、アプリケーションは交渉された速度よりも速い
速度でデータを要求してもよい。しかしながら、アプリ
ケーションからの要求は、交渉された帯域幅においての
み対応しなければならない。あるアプリケーションにつ
いて交渉された帯域幅よりも高いピークの帯域幅を用い
ることは可能である。しかしながらより大きな時間の尺
度では、帯域幅実施強制モジュールは、平均の使用量が
交渉された値に近いことを確認する。このことはデッド
ライン(deadline)を各ブロック要求に関連付けること
によって実施強制される。上記デッドラインは与えられ
た帯域幅によって計算される。DFSは、システムがロ
ードされているとき、要求がデッドラインの前には供給
されないことを確認する。ホストオペレーティングシス
テムはリアルタイムのサービスを保証しないので、この
デッドラインは絶対的ではない。
【0065】DFSは異なる構成要素のレベルにおいて
フォールトトレランス(耐故障性)を準備する。記憶装
置及びネットワークのレベルのフォールトトレランス
は、DFSがサポートするようにデザインされたアプリ
ケーションの型に対して非常に重要である。
【0066】DFSにおいて、記憶装置中のソフトウェ
アに基づく冗長性、もしくはハードウェアRAID、又
はその両方を用いることができる。DFSボリューム4
6は以下の型、すなわちフォールトトレランスなし、ソ
フトウェアミラーリングされたもの又はハードウェアR
AIDの中の1つであることができる。フォールトトレ
ランスなしのボリュームは標準的なボリューム構成であ
る。ボリュームの任意のディスクに誤りがある場合、デ
ータを復元することができない。ソフトウェアミラーリ
ングされたボリュームにおいて、ボリューム中の各ディ
スクはシステム中に同一のミラーを有する。これは、い
かなる余分の特別のハードウェアRAIDも用いること
なく実装された、RALDレベル1のソフトウェアエミ
ュレーションである。このスキームの実装はDFSデー
タ構造のわずかの修正を必要とする。DFSボリューム
46はネットワークに接続されたRAIDディスク全体
であることができる。ハードウェアは任意のレベルのR
AIDを実装することができ、ハードウェアはDFSに
認識されている必要はない。
【0067】誤り許容データリンク層(例えば複数の誤
り許容イーサネットネットワークカード及びドライバソ
フトウェア)は、DFSにおいてネットワークレベルの
セキュリティーを提供する。階層において下位であるこ
の層は、DFSのいかなる機能も修飾しない。
【0068】DFSは2つのレベルの優先度、リアルタ
イム及び非リアルタイムを扱う。これら2つのレベルの
違いは、遅延及びスループットがリアルタイムのアプリ
ケーションについてのみ保証されるということである。
DFSは、アプリケーションの優先度を決定するために
単純な概念を用いる。あるアプリケーションがその動作
のために0でない帯域幅を割り当てられているとき、そ
れはリアルタイムアプリケーションであると考えられ、
そうでないときは非リアルタイムである。DFS特性デ
バイスI/O制御要求を用いると、あるアプリケーショ
ンは2つのクラスの間で動的に切換わることができる。
優先度はディスクアクセスとネットワークスケジューリ
ングのキューにおいてのみで保証される。ネイティブの
オペレーティングシステムからのサポートがないため、
プロセス実行レベルの優先度を保証することはできな
い。
【0069】ユーザを保護するために、いかなるファイ
ルシステムも、あるレベルのアクセスセキュリティーを
有するべきである。AD12はネットワーク14に直接
に接続され、そしてそのためセキュリティー攻撃を受け
がちなので、DFSにおいてセキュリティーはさらにい
っそう重要な論点になる。DFSは複数のレベルのセキ
ュリティーを提供する。
【0070】DFSは、ディレクトリ及びファイルの管
理のための(属性ファイルを用いてLAD上に構成され
た)ネイティブのファイルシステムを用いる。すべての
ファイル及びディレクトリの許可、及びそれのセキュリ
ティーはDFSから利用可能である。
【0071】DFSにおいて、複数のADD42はネッ
トワーク14に直接に接続されている。任意の特定のA
DD42上に完全なファイルシステムは存在しないが、
認証されていないユーザ16が1つのADD42から複
数のブロックを読み出すことは可能である。このよう
に、それは従来のシステムよりもセキュリティー攻撃を
受けがちである。クライアントを認証する特別な手順
は、あるADD42にアクセスするクライアント16の
身元証明を保証する。
【0072】データのセキュリティーはデータの適当な
暗号化を介して提供される。DFSのデザインはそのよ
うな暗号化及び解読をサポートするが、データを暗号化
及び解読することに関連付けられた大きなオーバーヘッ
ドのために、一般にはDFSに実装されない。
【0073】本発明はその目下の好ましい実施形態にお
いて記述されたが、添付された請求項が示す本発明の精
神から離れることなく、ここに記述された技術及びシス
テムに従って複数の変形例を生成することができる。
【図面の簡単な説明】
【図1a】 分散型ファイルシステムのこの好ましい実
施形態のアーキテクチャを説明する図である。
【図1b】 分散型ファイルシステムのこの好ましい実
施形態のアーキテクチャを説明する図である。
【図1c】 複数の自律的ディスクのPCでの実装を図
示する図である。
【図2】 分散型ファイルシステムのボリュームを図示
する図である。
【図3】 分散型ファイルシステムにログインするプロ
セスを図示する図である。
【図4】 分散型ファイルシステムにおいての読み出し
動作を図示する図である。
【図5】 分散型ファイルシステムにおいての書き込み
動作を図示する図である。
【図6】 分散型ファイルシステムのこの好ましい実施
形態の互いに異なるボリューム構成を図示する図であ
る。
【図7】 分散型ファイルシステムのこの好ましい実施
形態のディレクトリ構造を図示する図である。
【図8】 詳細なDFS読み出し動作を図示する図であ
る。
【図9】 詳細なDFS書き込み動作を図示する図であ
る。
【符号の説明】
10…ファイルシステム、 12…自律的ディスク(AD)、 14…ネットワーク、 16…ユーザホスト、 18…構成マネージャ(CM)、 20…分散型DFSカーネル、 22…CMにおけるDFSカーネル、 24…クライアントにおけるDFSカーネル、 25…プロセッサ、 26…ディスクにおけるDFSカーネル、 27…メモリ、 28…ネットワークインターフェースカード(NI
C)、 30…共有I/Oバス、 42…自律的データディスク(ADD)、 44…蓄積属性ディスク(LAD)、 46,90,92,94,98…ボリューム、 58…読み出し操作、 70…DFS書き込み操作、 75…ファイルインデックステーブル、 96…ディスク、 122…NTFS、 160…アプリケーション。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成12年10月3日(2000.10.
3)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0021
【補正方法】変更
【補正内容】
【0021】図1(c)は、複数のAD12に単一のプ
ロセッサ25、メモリ27、ネットワークインターフェ
ースカード(NIC)28及びI/Oバス30を提供す
る、PCでの実装を図示している。上記プロセッサ25
は、各AD12について要求されたファイルシステム及
び複数の処理機能を実行する。上記メモリ27及びNI
C28は計算空間(computational space)、及びネッ
トワーク14への接続を提供する。プロセッサ25、メ
モリ27、NIC28及び複数のディスク12は、共有
のI/Oバス30上で互いに接続されている。ディスク
の総帯域幅がPC及びNICの結合によってサポートさ
れたネットワークの総帯域幅を超えない限り、複数のA
D12が1つのPC上で実装できる。1つのAD12の
アドレスは、単純に、PCのホストアドレスとディスク
IDとからなる組又は集合(tuple)である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 イブラヒム・エム・カメル アメリカ合衆国08852ニュージャージー州 モンマス・ジャンクション、ベイベリー・ コート4131番 (72)発明者 デイビッド・エイ・ブラウン アメリカ合衆国07834ニュージャージー州 デービル、マブロ・ドライブ2番

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】 記憶システムから情報を検索し、ネット
    ワークを介してホストシステムに伝送するための分散型
    ファイルシステムであって、 上記記憶システムに記憶された情報の物理的な記憶位置
    を決定するフリーリスト管理システムを有し、上記記憶
    システム上に存在する記憶システムエージェントと、 上記記憶システムに記憶された情報に対応した複数のフ
    ァイルの論理的な構成を定義し、上記ホストシステム上
    に存在するディレクトリ構造システムと、 上記記憶システムに記憶された情報に関連付けられたメ
    タデータを記憶し、上記ネットワークに接続された蓄積
    属性データ記憶装置とを備え、上記蓄積属性データ記憶
    装置から上記記憶された情報の物理的な記憶位置が決定
    され、 上記ホストシステム上に存在し、蓄積属性データ記憶装
    置からメタデータへのアクセスを有するクライアントエ
    ージェントとを備え、上記クライアントエージェントは
    上記ディレクトリ構造システムと相互に操作可能である
    ように上記複数のファイルを対応する複数の物理的な記
    憶位置と関連付け、これによって上記ファイルに対応す
    る情報は上記記憶システムから検索され、上記ホストシ
    ステムに伝送される分散型ファイルシステム。
  2. 【請求項2】 上記記憶システムは、上記記憶システム
    エージェントを実装する関連付けられたプロセッサを有
    する、少なくとも1つの自律的ディスクを備えた請求項
    1記載の分散型ファイルシステム。
  3. 【請求項3】 上記記憶システムは、上記記憶システム
    エージェントを実装する関連付けられたプロセッサを持
    つ少なくとも1つの自律的ディスクを有する、サーバー
    を持たない記憶システムである請求項1記載の分散型フ
    ァイルシステム。
  4. 【請求項4】 上記記憶システムエージェントはさらに
    ネットワークシステムプロトコルを含み、上記ネットワ
    ークシステムプロトコルによって上記記憶システムは上
    記ネットワーク上の通信のために接続される請求項1記
    載の分散型ファイルシステム。
  5. 【請求項5】 上記記憶システムエージェントは、上記
    ネットワークを介して上記記憶システムへのアクセスを
    媒介するアクセスセキュリティー制御システムをさらに
    含む請求項1記載の分散型ファイルシステム。
  6. 【請求項6】 上記記憶システムエージェントは、情報
    を検索する複数の要求が実行される順序を調停する要求
    スケジューリングシステムをさらに含む請求項1記載の
    分散型ファイルシステム。
  7. 【請求項7】 上記クライアントエージェントはアドミ
    ッション制御システムをさらに備え、上記アドミッショ
    ン制御システムは上記複数のファイルへのアクセスを調
    節し、要求されたファイルを伝送する伝送モードを決定
    する請求項1記載の分散型ファイルシステム。
  8. 【請求項8】 上記伝送モードはリアルタイムモードで
    ある請求項7記載の分散型ファイルシステム。
  9. 【請求項9】 上記ネットワークは帯域幅使用量を有
    し、上記記憶システムは帯域幅使用量を有し、上記アド
    ミッション制御システムは上記ネットワークの帯域幅使
    用量及びディスクの帯域幅使用量に基づいて上記複数の
    ファイルへのアクセスを調節する請求項7記載の分散型
    ファイルシステム。
  10. 【請求項10】 上記記憶システムはデータを記憶する
    ボリュームを含み、上記ボリュームはアプリケーション
    データを記憶する自律的ディスクとメタデータを記憶す
    る蓄積ディスクとを含む請求項1記載の分散型ファイル
    システム。
  11. 【請求項11】 アプリケーションデータは複数の自律
    的データディスクにわたってストライプ化されている請
    求項10記載の分散型ファイルシステム。
  12. 【請求項12】 上記蓄積ディスクは少なくとも1つの
    ディスクに関連付けられたメタデータを記憶する請求項
    1記載の分散型ファイルシステム。
  13. 【請求項13】 ネットワーク上で、記憶システムとホ
    ストシステムの間で情報を伝送する方法であって、 上記記憶システムに記憶された情報の物理的な記憶位置
    を決定するフリーリスト管理システムを有し、上記記憶
    システム上に存在する記憶システムエージェントを提供
    するステップと、 上記記憶システムに記憶された情報に対応する複数のフ
    ァイルの論理的な構成を定義し、上記ホストシステム上
    に存在するディレクトリ構造システムを提供するステッ
    プと、 上記記憶システムに記憶された情報に関連付けられたメ
    タデータを記憶し、上記ネットワークに接続された蓄積
    属性データ記憶装置を提供するステップとを備え、上記
    蓄積属性データ記憶装置から上記記憶された情報の物理
    的な記憶位置が決定され、 上記ホストシステム上に存在し、蓄積属性データ記憶装
    置からメタデータへのアクセスを有するクライアントエ
    ージェントを提供するステップを備え、上記クライアン
    トエージェントは上記ディレクトリ構造システムと相互
    に操作可能であるように上記複数のファイルを対応する
    複数の物理的な記憶位置と関連付け、これによって上記
    ファイルに対応する情報は上記記憶システムから検索さ
    れ、上記ホストシステムに伝送される方法。
  14. 【請求項14】 上記クライアントエージェントに、フ
    ァイルについての第1の読み出し要求を送るステップ
    と、 第1の時刻に上記蓄積属性記憶装置に上記ファイルに関
    連付けられたメタデータについて質問するステップと、 上記第1の時刻に取得された関連付けられたメタデータ
    に基づいて、第1の読み出し要求を、データブロックに
    ついての少なくとも1つの第1の転送要求に変換するス
    テップと、 上記第1の転送要求を上記記憶システムに送るステップ
    と、 上記記憶システムから上記データブロックを受信するス
    テップとをさらに備える請求項13記載の方法。
  15. 【請求項15】 上記記憶システムは、アプリケーショ
    ンデータを記憶するための少なくとも1つの分散型デー
    タディスクを有するボリュームと、メタデータを記憶す
    るための蓄積属性ディスクとをさらに含み、 上記変換のステップは、第1の読み出し要求を、少なく
    とも1つの分散型データディスクへの少なくとも1つの
    第1の転送要求に変換することを含む請求項14記載の
    方法。
  16. 【請求項16】 別のクライアントエージェントに、上
    記ファイルについての第2の読み出し要求を送るステッ
    プと、 第2の時刻に上記蓄積属性記憶装置に上記ファイルに関
    連付けられたメタデータについて質問するステップと、 上記第2の時刻に取得された関連付けられたメタデータ
    に基づいて、第2の読み出し要求を、上記データブロッ
    クについての少なくとも1つの第2の転送要求に変換す
    るステップと、 上記第2の転送要求を上記記憶システムに送るステップ
    と、 上記記憶システムから上記データブロックを受信するス
    テップとをさらに備える請求項14記載の方法。
  17. 【請求項17】 第1の書き込み要求を上記記憶システ
    ムエージェントに送るステップと、 上記第1の書き込み要求に応答して、フリーブロックア
    ドレスを上記ホストシステムに送るステップと、 上記記憶システムにファイルを書き込むステップと、 上記ファイルに関連付けられたファイルインデックステ
    ーブルを作成するステップと、 上記ファイルインデックステーブルを上記蓄積属性デー
    タ記憶装置に送るステップとをさらに備える請求項13
    記載の方法。
  18. 【請求項18】 上記ファイルインデックステーブルを
    送るステップは、上記ファイルインデックステーブルが
    作成されるときにファイルインデックステーブルを複数
    のセクションで送ることをさらに含む請求項17記載の
    方法。
  19. 【請求項19】 蓄積属性データ記憶装置にフラグをセ
    ットし、上記ファイルが書きこまれていることを表示す
    るステップと、 上記記憶システムエージェントに同時読み出し要求を送
    り、上記ファイルを読み出すステップと、 上記読み出し要求に応答して、上記ファイルインデック
    ステーブルとフラグとを上記ホストシステムに送るステ
    ップと、 上記ファイルを読み出すステップと、 上記ファイルが読み出されているとき、上記ファイルイ
    ンデックステーブルの更新を要求するステップとをさら
    に備える請求項18記載の方法。
  20. 【請求項20】 上記記憶システムエージェントに同時
    書き込み要求を送るステップと、 上記同時書き込み要求に応答して、上記ファイルのファ
    イルインデックステーブルを送るステップとを備え、上
    記ファイルインデックステーブルは上記ファイルの複数
    の部分に対応した少なくとも2つのセクションを有し、 書きこまれるべき部分に対応した上記ファイルインデッ
    クステーブルのセクションをロックするステップと、 上記ファイルの部分に書き込むステップと、 上記ファイルに関連付けられたファイルインデックステ
    ーブルを更新するステップと、 上記ファイルインデックステーブルを上記蓄積属性デー
    タ記憶装置に送るステップとをさらに備える請求項13
    記載の方法。
  21. 【請求項21】 ディレクトリ情報についての要求をア
    プリケーションからクライアントエージェントに送るス
    テップと、 上記ディレクトリ構造システムに上記要求を転送するス
    テップと、 蓄積属性データ記憶装置に質問し、上記要求されたディ
    レクトリ情報に対応した属性ファイルを読み出すステッ
    プと、 上記属性ファイルを読み出すステップと、 上記属性ファイルを上記クライアントエージェントに転
    送するステップと、 上記要求されたディレクトリ情報を上記アプリケーショ
    ンに提供するステップとをさらに備える請求項13記載
    の方法。
JP2000200988A 1999-07-06 2000-07-03 リアルタイム分散型ファイルシステム Pending JP2001075858A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US14248999P 1999-07-06 1999-07-06
US09/565,979 US6556998B1 (en) 2000-05-04 2000-05-04 Real-time distributed file system
US09/565979 2000-05-04
US60/142489 2000-05-04

Publications (1)

Publication Number Publication Date
JP2001075858A true JP2001075858A (ja) 2001-03-23

Family

ID=26840139

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000200988A Pending JP2001075858A (ja) 1999-07-06 2000-07-03 リアルタイム分散型ファイルシステム

Country Status (3)

Country Link
JP (1) JP2001075858A (ja)
DE (1) DE10032962A1 (ja)
GB (1) GB2356473B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079774A (ja) * 2005-09-13 2007-03-29 Hitachi Ltd ファイルシステムの構築方法
KR101078287B1 (ko) 2007-12-14 2011-10-31 한국전자통신연구원 다중 복제를 지원하는 분산 파일 시스템에서 데이터 서버의복구 방법 및 그에 적당한 메타데이터 스토리지 및 저장방법
JP2012150748A (ja) * 2011-01-21 2012-08-09 Nec Corp データ処理中継装置
JP2014209328A (ja) * 2013-03-14 2014-11-06 富士通株式会社 仮想記憶ゲート・システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7222231B2 (en) * 2001-04-19 2007-05-22 Hewlett-Packard Development Company, L.P. Data security for distributed file systems
JP2004310621A (ja) 2003-04-10 2004-11-04 Hitachi Ltd 記憶装置システムにおけるファイルアクセス方法及びファイルアクセスのためのプログラム
DE102018210711A1 (de) 2018-06-29 2020-01-02 Continental Automotive Gmbh Verfahren und Computersystem zum priorisierten Dateizugriff, Computerprogramm und computerlesbarer Datenträger

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214257A (ja) * 1997-01-30 1998-08-11 Fujitsu Ltd 並列計算機

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021508A (en) * 1997-07-11 2000-02-01 International Business Machines Corporation Parallel file system and method for independent metadata loggin

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214257A (ja) * 1997-01-30 1998-08-11 Fujitsu Ltd 並列計算機

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079774A (ja) * 2005-09-13 2007-03-29 Hitachi Ltd ファイルシステムの構築方法
JP4704161B2 (ja) * 2005-09-13 2011-06-15 株式会社日立製作所 ファイルシステムの構築方法
US8078819B2 (en) 2005-09-13 2011-12-13 Hitachi, Ltd. Arrangements for managing metadata of an integrated logical unit including differing types of storage media
US8392685B2 (en) 2005-09-13 2013-03-05 Hitachi, Ltd. Arrangements for managing metadata of an integrated logical unit including differing types of storage media
KR101078287B1 (ko) 2007-12-14 2011-10-31 한국전자통신연구원 다중 복제를 지원하는 분산 파일 시스템에서 데이터 서버의복구 방법 및 그에 적당한 메타데이터 스토리지 및 저장방법
JP2012150748A (ja) * 2011-01-21 2012-08-09 Nec Corp データ処理中継装置
JP2014209328A (ja) * 2013-03-14 2014-11-06 富士通株式会社 仮想記憶ゲート・システム

Also Published As

Publication number Publication date
DE10032962A1 (de) 2001-03-15
GB2356473B (en) 2001-11-28
GB0015967D0 (en) 2000-08-23
GB2356473A (en) 2001-05-23

Similar Documents

Publication Publication Date Title
US6556998B1 (en) Real-time distributed file system
JP4726982B2 (ja) ファイラー上に仮想ファイラーを作成及び維持するアーキテクチャ
US6453354B1 (en) File server system using connection-oriented protocol and sharing data sets among data movers
US7610348B2 (en) Distributed file serving architecture system with metadata storage virtualization and data access at the data server connection speed
US7120631B1 (en) File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator
US7437407B2 (en) File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator
US6324581B1 (en) File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems
US20070011136A1 (en) Employing an identifier for an account of one domain in another domain to facilitate access of data on shared storage media
US20060230148A1 (en) TCP forwarding of client requests of high-level file and storage access protocols in a network file server system
US20060064405A1 (en) Hybrid client-server protocol for fast writes to a file
US20030187866A1 (en) Hashing objects into multiple directories for better concurrency and manageability
US20050262103A1 (en) Low overhead methods and apparatus shared access storage devices
JP2004227127A (ja) 複数の環境情報を持つプログラムおよびこのプログラムを持つ情報処理装置
US9064106B2 (en) Method and apparatus to keep consistency of ACLs among a meta data server and data servers
JP2003216474A (ja) ネットワークストレージ仮想化方法
US20060288080A1 (en) Balanced computer architecture
US8082261B1 (en) System and method for associating NIS attributes with CIFS clients
US8935751B1 (en) Method for extending the fragment mapping protocol to prevent malicious access to virtualized storage
US7240150B1 (en) Methods and apparatus for processing access requests in a content addressable computer system
US7103638B1 (en) Mechanism to re-export NFS client mount points from nodes in a cluster
JP2001075858A (ja) リアルタイム分散型ファイルシステム
US7428611B1 (en) Methods and apparatus for forwarding access requests in a content addressable computer system
US8146155B1 (en) Controlling access to content on an object addressable storage system
US7240151B1 (en) Methods and apparatus for transferring data in a content addressable computer system
US20070050681A1 (en) Global user services management for system cluster

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040928

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050802