4

私は現在、MongoDB を使用して電子メール データを格納することを調査しています。電子メールのサイズがかなり大きくなる可能性があるため (たとえば 10 メガ)。

これには GridFS が適していると思います。少し怖いのは、ドキュメントが gridFS 内のシャード サイズについてあまり明確ではないことです。私が理解していることから、g​​ridFS のシャード サイズは通常のシャード サイズと等しくなく、デフォルトで 256kb になっています。多くの電子メールのサイズは 50kb を超えないため、これはスペースの大きな無駄のように思えます。

GridFS でファイルのシャード サイズを構成して、メールの保存に適したサイズにする方法はありますか?

乾杯、マティアス

4

1 に答える 1

3

サイズを気にする必要はありません。チャンクサイズが 256kb の場合でも、50kb のドキュメント (メールを含む) は 50kb (+ わずかなオーバーヘッド) を使用します。

チャンクサイズはドライバーで構成されます。たとえば、PHP ドライバーでは次のようにします。

$gridFs->storeFile( 'filename.txt', array( 'chunkSize' => 50 * 1024 ) );

Java ドライバーでは、GridFSInputFilesetChunkSizeを呼び出します。

しかし、一般的には、chunkSize について心配する必要はありません。

于 2012-04-30T14:05:19.433 に答える