分散ファイルシステム
出典: フリー百科事典『ウィキペディア(Wikipedia)』
分散ファイルシステム(Distributed File System、DFS)とは、ネットワーク上の持続的ストレージという形でファイルなどのリソースを共有するファイルシステムである。世界初のファイルサーバは1970年代にサン・マイクロシステムズが開発したNetwork File System(NFS)であり、これが1985年にリリースされて世界で初めて広く使われた分散ファイルシステムとなった。NFS以外の特筆すべき分散ファイルシステムとしては、Andrew File System(AFS)とCommon Internet File System(CIFS)がある。
なお、NFSなどをネットワークファイルシステムと呼び、分散ファイルシステムと分けることもある。その際の分散ファイルシステムとは、ひとつのファイルがネットワーク上に分散して存在するシステムを意味する。すなわち、ファイルの実体が複数の記憶装置にあり、それらの間の同期をシステムとして行う。
目次 |
[編集] クライアント・サーバ
ファイルサーバはクライアントにファイルサービスを提供する。ファイルサービスへのクライアントインターフェイスは基本的なファイル操作から構成されている。例えば、ファイルの生成、ファイルの削除、ファイルの読み書きなどである。ファイルサーバが持つ最重要ハードウェアはファイルを格納するローカルな二次記憶装置群であり、そこからクライアントの要求に従ってファイルが検索される。
[編集] 分散
DFSは分散システムやイントラネット上の機器群に分散配置されたクライアント、サーバ、記憶装置から構成されるファイルシステムである。従って、サービス活動はネットワークを通して実行され、システムは集中化されたデータ記憶域の代わりに複数の個々の記憶装置を持つ。DFSの具体的な構成や実装は様々である。サーバとして専用マシンが用意される場合もあるし、マシンがサーバにもクライアントにもなる構成もある。DFSは分散オペレーティングシステムの一部として実装されることもあるし、普通のオペレーティングシステムやファイルシステム間の通信を管理するソフトウェアとして実装されることもある。DFSの特徴的な機能として、システム内のクライアントおよびサーバの多様性(multiplicity)と自律性(autonomy)がある。
[編集] 透過性
理想的には、DFSはユーザーから見て従来の集中化したファイルシステムに見えるべきである。サーバや記憶装置の多様性と分散は隠蔽されるべきである。すなわち、プログラムが使用するクライアントインターフェイスはローカルファイルかリモートファイルかで違いがあってはならない。DFSはファイルの場所に応じたデータ転送をしなければならない。
[編集] 性能
DFSでは、処理にかかる時間も重要な課題である。通常のファイルアクセスならば、これはディスクアクセス時間と少しのCPU処理時間に相当する。DFSでは、分散アーキテクチャであるが故の余分なオーバヘッドが必要となる。このオーバヘッドには、サーバに要求を届けるまでの時間、応答をクライアントまで戻すのにかかる時間などが含まれる。どちらの方向も情報転送時間だけでなく、通信プロトコルソフトウェアの実行にかかるCPU時間が含まれる。DFSの性能もある意味でDFSの透過性の一部と言える。すなわち、理想的なDFSの性能はローカルなディスクアクセスと同程度になる。
[編集] 同時ファイル更新
DFSは複数のクライアントプロセスが同じファイルを同時に更新できるようにすべきである。あるクライアントのファイル更新によって別のクライアントの参照や更新が妨害されてはならない。並行性制御(Concurrency Control)やロックをファイルシステムに組み込むか、プロトコルに組み込む必要があるだろう。
[編集] 分散データストア
分散データストア(Distributed Data Store)とは、ユーザーが自身の情報をいくつかの仲間のノードに格納しておけるネットワークである。ユーザーは、逆に他のユーザーに自身のコンピュータをストレージノードとして提供する。情報に他のユーザーがアクセスできるかどうかはネットワークの設計に依存する。
多くのP2Pネットワークは、各ユーザーのノードが常にネットワーク上にあるわけではないため、分散データストアを持たない。しかし、BitTorrentなどのシステムではこの区別があいまいとなる。というのも、あるノードがオフラインになってもその内容が相変わらず提供され続けるようになっているためである。 なお、これは個々のファイルが再配布者に要求された場合であり、全てのコンピュータが全てのファイルを提供するようになっているFreenetなどのネットワークとは対照的である。
[編集] 分散データストアネットワーク
- 9P:Plan 9の通信プロトコル
- Andrew file system(AFS):カーネギーメロン大学(CMU)の開発した分散ファイルシステム。NFS version4 に影響を与えた。
- BitTorrent
- Coda:CMUの開発した分散ファイルシステム。AFSの後継
- DCE/DFS:DCEの一部として開発された。AFSの影響を受けている。
- Google File System:Googleの開発した分散ファイルシステム
- Lustre:Linux用のフリーな分散ファイルシステム
- Freenet
- Mnet:P2Pファイル交換
- GNUnet:P2Pネットワークソフト
- NNTP (ネットニュース用プロトコル)
- SVK - 分散型バージョン管理システム http://www.bieberlabs.com/wordpress/svk-tutorials , http://svk.elixus.org/
[編集] 外部リンク
- Linux モダン分散ファイルシステム インターネットコム
- Windows - 分散ファイルシステムガイド マイクロソフト
カテゴリ: OSのファイルシステム | 分散処理