wZD は強力なストレージ サーバーです 効率的に設計された大規模データストレージシステム向け 大小のファイルを混在して使用できるため、大量のファイルをコンパクトな形式で大幅に削減できます。外側からは通常の WebDAV サーバーのように見えます。
サーバー Go言語で書かれています その 変更されたバージョンのBoltDBデータベースを使用します バックエンドとして、任意の数の大小のファイル、NoSQL キー/値を、マイクロボルト データベース (ファイル) 内にコンパクトな形式で保存および配布し、ファイルの数に応じて、BoltDB データベース内でファイルと値を配布します。ディレクトリまたはサブディレクトリとディレクトリの一般的な構造。
サーバー 通常のファイル システムまたはクラスタ化されたファイル システム内の小さなファイルの数を大幅に減らすことができます。 フルロックサポート付き。 wZD 開発者のサポートにより、このクラスターは、MooseFS FS クラスター上の 250 万のディレクトリにまたがる約 15 億 XNUMX 万の小さなファイルを保存します。
wZDについて
wZD 移動を可能にします (ファイル) ディレクトリの内容をBoltDB形式のファイルに変換 次に、これらのファイルをこれらのアーカイブから配布する (または、PUT メソッドを使用してファイルをアーカイブに入れる) ことで、ファイル システム上のファイルの数が大幅に削減され、メタデータ ストレージのオーバーヘッドが削減されます。
大きなファイルの処理効率を高めるために、そのようなファイルをBolt ファイルとは別に保存できます。
このようなアプローチ 多数の小さなファイルのストレージを整理できます。 ファイルシステム内の i ノード数の制限に依存することはありません。
サーバー NoSQLデータベースとしても使用可能 キー/値形式のデータ (ディレクトリ構造に基づいたパーティションあり) の場合、またはデータベースから事前に生成された html または json ドキュメントの配布の場合。
パフォーマンスの点では、Bolt ファイルを使用してデータの読み込みと書き込みを行うと、読み取り時に約 20 ~ 25%、書き込み時に約 40 ~ 50% の遅延が増加します。 ファイル サイズが小さいほど、遅延の差は小さくなります。
主な機能のうち、次の点が際立っています。
- マルチスレッド
- フォールトトレランスと負荷分散のための複数のサーバー
- ユーザーまたは開発者に対する最大限の透明性
- サポートされている HTTP メソッド: GET、HEAD、PUT、および DELETE
- クライアントヘッダーを介して読み取りおよび書き込み動作を管理する
- カスタマイズ可能な仮想ホストのサポート。
- クラスター化されたファイル システムを使用した線形読み取りおよび書き込みスケーリング
- データを読み書きする効果的な方法。
- 書き込みまたは読み取り時の CRC データ整合性をサポート
- Range および Accept-Ranges、If-None-Match、および If-Modifed-Since ヘッダーのサポート
- ディレクトリ構造に応じて、Posix 準拠のファイル システム上の i ノードの 10.000 倍のファイルを保存および共有
- ファイルと値の追加、更新、削除、およびBoltファイルの遅延圧縮のサポート
- ディレクトリ構造に基づいた簡単なシャーディングにより、サーバーを NoSQL データベースとして使用できるようになります。
- 値の特定のバイト数を選択的に読み取るためのボルト ファイルのサポート
- ディレクトリ構造に基づいてデータを数千または数百万のBoltファイルに簡単にチャンク化
- 混合モードのサポート。Bolt ファイルとは別に大きなファイルを保存できる機能
- ディレクトリ内のキーのリストまたは数 (一意でないものも含む) の取得のサポート
- サービスを停止せずにファイルを移行するためのマルチスレッド wZA アーカイバが含まれています
制限事項について 現在のバージョンから: マルチパートはサポートされていません。 POST メソッド、HTTPS プロトコル、プログラミング言語のフォルダー、ディレクトリの再帰的削除、 WebDAV または FUSE を介したファイル システムへの構造のマウントはサポートされていません、ファイルはシステム ユーザーの下に保存されます。
最後に あなたがそれについてもっと知りたいのなら wZD とそのインストール手順と要件については、詳細を参照してください。 次のリンクで。