9

アップロードされたすべてのファイルをGridFSに保存する方が、Ext4などの通常のファイルシステムに保存するよりも速いのではないかと思います(読み取り/書き込み速度と平均サーバー負荷の点で)。

4

2 に答える 2

11

一般に、通常のファイルシステムアクセススタイルでは低速です。しかし、MongoDBの優れた機能の恩恵を受けることができます。

  • 任意のメタデータをファイルに関連付けて、通常の方法でクエリを実行できます。実際には、ファイルは通常のMongoドキュメントとしてコレクションに保存されfs.filesますfs.chunks
  • レプリケーション。レプリカセットを使用すると、(ほぼ)即時のバックアップ、フェイルオーバー、および読み取りのスケーラビリティが得られます(読み取り要求はスレーブノードに送信できます)。
  • シャーディング。他のコレクションと同様に、自動シャーディングを使用して複数のMongoインスタンスにファイルを分散することができます。これにより、書き込みのスケーラビリティが向上します。
于 2010-12-31T12:32:27.290 に答える
2

GridFSを使用する場合

  • ファイルシステムでディレクトリ内のファイル数が制限されている場合は、GridFSを使用して必要な数のファイルを保存できます。
  • ファイルとメタデータを自動的に同期し、多数のシステムと施設に展開したい場合。地理的に分散されたレプリカセットを使用する場合、MongoDBはファイルとそのメタデータを多数のmongodインスタンスに自動的に分散し、容易にします。
  • ファイル全体をメモリにロードせずに大きなファイルの一部から情報にアクセスしたい場合は、GridFSを使用して、ファイル全体をメモリに読み込まずにファイルのセクションを呼び出すことができます。
于 2013-02-10T07:31:42.403 に答える