私は非常に基本的なレベルでこれら3つのファイルシステムの違いを理解しようとしています。
- 分散ファイルシステム:HDFS
- パラレルFS:光沢
- 既存のファイルシステム:ext4/ext3/NTFS/FATなど
これら3つのファイルシステム間の基本的な概念的な違いが何であるかを知りたいです。私の知識のほとんどは、伝統的なファイルシステム、つまりext3/4にあります。スーパーブロック、インデックスノードなど。
- MPIベースのプロセス(np = 8)がファイルシステムからファイルを読み取るかファイルAに書き込もうとした場合、これらのコンテキストではファイルアクセスメカニズムはどう違いますか?
- この環境では、ファイルはどのように保存されますか?つまり、ファイルAが複数のディスクに分割されるか、ファイルAがリポジトリに重複したコピーを持つことになります。あるいは、より簡単なシナリオは、複数のユーザーがWord文書を開いて保存することです。それでは、この3つのシナリオで書き込み保存/同期の違いは何ですか?
これまで私はいくつかの概念を形成しました。
- ローカルファイルシステムでは、ストレージはサーバー/ノードに物理的にインストールされます。
- パラレルファイルシステムでは、ディスクは複数のノードで共有(マウント)されます。
- 分散ファイルシステムでは、複数のノードに複数のローカルストレージがありますが、すべていくつかのメカニズムを介して同期されます。
A、Bがワークステーション、C、Dがディスクの場合:
- C物理Aにインストールされ、ext4でフォーマットされると、従来のファイルシステムです。
- CがストレージサーバーZに物理的にインストールされ、CがAとBにネットワークインストール(NFS)の場合、これはクラスタ化されたFSです。
- CがAに物理的にインストールされ、ネットワークがBにインストールされ、DがBに物理的にインストールされ、ネットワークがAにインストールされている場合。その後、分散FSが作成されます。
しかし、いくつかの答えメタデータとデータが並列ファイルシステムから別々のサーバーにあることがわかりますが、ここでも分散ファイルシステムでメタデータがどのように管理されるかを知りたいです。
答え1
「パラレルファイルシステム」という用語であるAFAICSは、BSをマーケティングすることです。これは、複数のプロセスが同時にファイルに書き込むことができることを理解して、ファイルシステムドライバが構築されたため、ファイルは次のように他のファイルに連続的に書き込まれることを意味します。適切なブロック割り当て戦略ディスクの個々の部分を一緒に断片化するのではなく、ファイルにまとめます。これは過去20年間、UNIXシステムではほぼ標準的な慣行でした。
クラスタファイルシステムはSANのストレージ用に設計されたファイルシステムで、「ディスク」(実際にはSANディスクエンクロージャのハードウェアに実装されているRAIDアレイである可能性があります)が共有SCSI接続を介して複数のホストに直接アクセスできます。 )ファイルシステムドライバが互いに干渉しないように特別な注意を払うので、複数のホストから同時にインストールできます。これは、NFS または CIFS を使用してネットワーク経由で通常のファイルシステムを共有するのとまったく異なります。
分散ファイルシステムはネットワークファイルシステムに似ていますが、内部的には多くの種類サーバーはユーザーにほぼ透過的な方法で負荷を分散します。その例はafsです。
答え2
NAS
との違いはSAN
削除されました。現在議論が進行中です。私は彼らの側で、それらの間に違いはありません。
インストール方法はもはや変わりません。機能的な利点に焦点を当てると、既存のファイルシステムが分散しているのか、クラスタ化されていますか?などの質問をすると、より簡単に理解できます。分散ファイルシステムとクラスタファイルシステムについても同じ質問をすることができ、分散クラスタファイルシステムがあります。
ファイルシステムを分散またはクラスタリングすることが重要であるため、短い名前が複雑にならないようにすることができます。クラスタ化されたシステムで期待されるのは、セッション共有との同期です。これは、現在のクラスタファイルシステムから得られるものではなく、CAPの制限により、より非同期です。