Linux 分散ファイル システムには次のものが含まれます: 1. OpenAFS (オープン ソースの分散ファイル システム)、2. MooseFs (フォールト トレランスを備えたネットワーク分散ファイル システム)、3. googleFs (スケーラブルな分散ファイル)システムなど。
#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。
Linux 分散ファイル システムとは何ですか?
NFS (www.tldp.org/HOWTO/NFS-HOWTO/index.html)
ネットワーク ファイル システムは次のとおりです。 FreeBSD サポートされているファイル システムの 1 つで、NFS とも呼ばれます。
NFS を使用すると、システムはネットワーク上の他のユーザーとディレクトリやファイルを共有できます。 NFS を使用すると、ユーザーとプログラムはリモート システム上のファイルにローカル ファイルであるかのようにアクセスできます。その利点は次のとおりです:
1. 通常のデータを 1 台のマシンに保存し、ネットワーク経由でアクセスできるため、ローカル ワークステーションで使用するディスク領域が少なくなります。
2. ユーザーはネットワーク上のすべてのマシンにホーム ディレクトリを持つ必要はありません。ホーム ディレクトリは NFS サーバー上に配置でき、ネットワーク上のどこからでも利用できます。
3. フロッピー ドライブ、CDROM、ZIP などのストレージ デバイスは、ネットワーク上の他のマシンで使用できます。ネットワーク全体上のリムーバブル メディア デバイスの数を減らすことができます。
開発言語 c/c は、プラットフォーム間で実行できます。
OpenAFS (www.openafs.org)
OpenAFS は、システム LAN と WAN 間の通信を共有できるオープン ソースの分散ファイル システムです。ファイルとリソース。 OpenAFS は、セルと呼ばれるファイル サーバーのグループを中心に構成されています。各サーバーの ID は、通常、ファイル システムに隠されています。AFS クライアントからログインしているユーザーは、ユーザーの観点から、どのサーバーで実行しているかを知ることができません。彼らは、認識された Unix ファイル システム セマンティクスを備えた単一システム上で実行したいと考えています。
ファイル システムの内容は通常、セル間でコピーされるため、1 つのハード ディスクに障害が発生しても、OpenAFS クライアントの動作に悪影響を与えることはありません。 OpenAFS では、頻繁に使用されるファイルにアクセスできるように、最大 1GB の大規模なクライアント キャッシュが必要です。これは非常に安全な Kerbero ベースのシステムであり、アクセス コントロール リスト (ACL) を使用して、通常の Linux および Unix セキュリティ モデルに基づいていないきめ細かいアクセスを許可します。開発契約 IBM Public、Linux 上で実行。
MooseFs(derf.homelinux.org)
Moose ファイル システムは、フォールト トレラント機能を備えたネットワーク分散ファイル システムです。ネットワーク内のサーバーでは、MooseFs は FUSE を使用して Unix ファイル システムのように見せます。しかし問題があり、単一障害点の問題は依然として解決できません。開発言語はperlで、プラットフォームを超えて動作します。
pNFS(www.pnfs.com)
ネットワーク ファイル システム (NFS) は、ほとんどのローカル エリア ネットワーク (LAN) の重要な部分です。一部。しかし、NFS は、少なくとも以前は、ハイ パフォーマンス コンピューティングにおける要求の厳しい入力本棚を集中的に使用するプログラムには適していません。 NFS 標準の犯罪的な改変には、転送速度を桁違いに向上させるファイル共有の並列実装である Parallel NFS (pNFS) が組み込まれています。
開発言語 c/c、Linux 上で実行。
googleFs
これは、比較的優れたスケーラブルな分散ファイル システムであると言われており、大規模な分散アプリケーションに使用されます。データにアクセスします。安価な一般的なハードウェア上で実行されますが、フォールト トレランスを提供でき、多数のユーザーに高性能のサービスを提供できます。 Google 自身が開発しました。
関連拡張子:
一般的に使用される分散ファイル システムには、GFS、TFS、HDFS、MooseFs、FastDfs、MogileFs、GridFs、MinIO、SeaweedFS、GlusterFS、Ceph が含まれます。 GlusterFSなど
一般的な分散ファイルシステムの比較
1. GFS (Google File System)
Google が企業のニーズを満たすために開発した Linux ベースのスケーラブルな分散ファイル システムです。大規模な分散アクセスやビッグデータの応用に利用され、低コストで通常の安価なハードウェアで利用できますが、オープンソースではないため、当面は検討されません。
2. TFS (タオバオ ファイル システム)
スケーラブルで可用性が高く、パフォーマンスが高く、インターネット サービス指向のオープン ソース分散ファイル システムで、小規模ファイル ストレージに対するタオバオのニーズを満たすために Alibaba によって開発されました。大量の非構造化データを処理するために、通常の Linux マシン クラスター上に構築されており、外部への信頼性と同時性の高いストレージ アクセスを提供できます。 TFS は、淘宝網に大規模な小さなファイル ストレージを提供しますが、通常、ファイル サイズは 1M を超えないため、当面は考慮されません。
3. HDFS (Hadoop 分散ファイル システム)
Hadoop 分散ファイル システムは、高いフォールト トレランスとスケーラビリティの特性を備えているため、分散ストレージおよびコンピューティング用の汎用ハードウェア上で実行するのに適しています。安価なマシンに導入でき、ビッグ データ処理に適しており、ビッグ データのオフライン バッチ処理に固有の利点があります。
Hadoop は、Apache Lucene の創設者 Doug Cutting によって開発された、広く使用されているテキスト検索ライブラリです。これは、オープンソースの Web 検索エンジンである Apache Nutch に由来しており、それ自体は Luene プロジェクトの一部です。 Aapche Hadoop アーキテクチャは、MapReduce アルゴリズムのオープンソース アプリケーションであり、Google 帝国の重要な基盤です。
4. MooseFS
MooseFS は、ポーランド発のオープン ソースで冗長フォールトトレラントな分散 POSIX ファイル システムです。また、GFS アーキテクチャを参照し、ほとんどの POSIX セマンティクスと API を実装しています。ファイルがマウントされることをサポートしています。 FUSE メソッドを通じて提供されます. 同時に、それが提供する Web 管理インターフェイスは、現在のファイル ストレージ ステータスを表示するのに非常に便利です. マスター サーバーに単一の依存関係があります. Perl で書かれており、中規模および大規模なファイルに使用されますアプリケーションに使用できますが、パフォーマンスは比較的低く、リアルタイムでアクセスされる可能性があるため考慮されていません。
注: POSIX は、UNIX のポータブル オペレーティング システム インターフェイス (POSIX と略記) の略です。POSIX 標準は、オペレーティング システムがアプリケーションに提供する必要があるインターフェイス標準を定義します。
5、FastDFS
An openタオバオのYu Qing氏が開発したソース分散ファイルシステム。ファイルを管理し、その機能にはファイルストレージ、ファイル同期、ファイルアクセス(ファイルアップロード、ファイルダウンロード)などがあり、大容量ストレージや負荷分散の問題を解決します。フォト アルバム Web サイトやビデオ Web サイトなど、ファイルをキャリアとして使用するオンライン サービスに適しています。 FastDFS は、冗長バックアップ、ロード バランシング、線形拡張などのメカニズムを十分に考慮し、高可用性、高性能などの指標に重点を置いてインターネット向けにカスタマイズされており、高パフォーマンスのファイル サーバー クラスタを構築するために使用されます。ファイルのアップロード、ダウンロード、その他のサービスを提供します。ただし、FastDFS の導入は少し面倒で、SKD は不完全です。
6. MogileFS
MogileFS は、Six Apart によって開発され、LiveJournal を含む Web2.0 サイトで広く使用されている、効率的なオープンソースの自動ファイル バックアップ コンポーネントのセットです。マルチノード冗長性をサポートし、自動ファイル複製を有効にします。 RAID は必要ありません。アプリケーション層は何も共有せずに RAID を直接実装できます。クラスタ インターフェイスを通じてサービスを提供し、アプリケーション層で動作します。特別なコンポーネント要件はありません。 HTTP を使用して通信します。
MogileFS を使用していることが知られている国内企業としては、画像ホスティング Web サイト yupoo、digg、Tudou、Douban、No. 1 Store、Dianping、Sogou、Anjuke などの Web サイトがあり、基本的には容量と画像を備えた Web サイトが多いです。 30T以上。
7. GridFS
MongoDB はよく知られた NoSql データベースです。GridFS は MongoDB の組み込み機能です。16M (BSON ファイル制限) を超えるファイル (例:画像、オーディオ、ビデオなど) はファイル ストレージの方法の 1 つですが、MonoDB コレクションに格納されます。確立されたレプリケーションまたはシャーディング メカニズムを直接利用できるため、ファイル ストレージの障害回復と拡張が容易で、GridFS はディスクの断片化を引き起こしません。
8. MinIO
MinIO は、Apache License v2.0 オープン ソース プロトコルに基づくオブジェクト ストレージ サービスです。 Amazon S3 クラウド ストレージ サービス インターフェイスと互換性があり、写真、ビデオ、ログ ファイル、バックアップ データ、コンテナ/仮想マシン イメージなどの大容量の非構造化データの保存に非常に適しており、オブジェクト ファイルはkb から最大 5T までの範囲の任意のサイズ。また、他のアプリケーションと簡単に組み合わせることができる非常に軽量なサービスです。 MinIO は、シンプルさ、軽量、開発者にとって使いやすい、学習コストが低い、インストールと操作が簡単であるという特徴があり、すぐに使用できます。
9. SeaweedFS
SeaweedFS は、go 言語に基づいて開発された拡張性の高いオープン ソースの分散ストレージ システムです。数十億のファイル (最終的にはハードディスクのサイズに依存します) を保存でき、高速です。メモリの使用量も少なくなります。 fastDFS よりも開始がはるかに簡単で、独自の Rest API が付属しています。中小規模のファイルには非常に効率的ですが、単一ボリュームの最大容量はプログラムによって 30G に制限されているため、ファイルは 100MB 以内に保存することをお勧めします。
10. Ceph
Ceph は Red Hat の成熟した分散ファイル システムであり、エンタープライズ レベルの機能を備えたオブジェクト ストレージのエコロジー環境でもあります。このシステムは、高性能、高可用性、高拡張性、リアルタイム ストレージという特徴を備えています。 ceph は非常に強力ですが、学習コストが高く、インストール、運用、保守が複雑です。 Ceph は C で書かれており、ストレージ容量は簡単に PB レベルに達します。
11. GlusterFS
GlusterFS は、米国 Gluster 社が開発した POSIX 分散ファイルシステム (GPL のオープンソース) で、主にクラスタシステムで使用され、高い拡張性、高可用性、高性能、水平拡張性を備えています。スケーラビリティとその他の機能、およびメタデータ サーバーを使用しない設計により、サービス全体に単一障害点が存在しません。このシステムは主に中規模および大規模ファイル用に設計されており、ストレージ容量は容易にペタバイトに達します。拡張と縮小が多くのサーバーに影響を与えること、ディレクトリ内のファイルの移動に時間がかかること、小さなファイルのパフォーマンスが低いことなどの欠点があります。
関連する推奨事項: 「Linux ビデオ チュートリアル 」
以上がLinux 分散ファイル システムとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。