4

我目前正在研究使用 MongoDB 存储电子邮件数据。因为电子邮件的大小可能会变得相当大(比如 10 兆)。

我相信 GridFS 非常适合这个。让我有点害怕的是,文档对 gridFS 中的分片大小不是很清楚。据我了解,gridFS 中的分片大小不等于正常的分片大小,但默认为 256kb。这在我看来是一种很大的空间浪费,因为许多电子邮件的大小不会超过 50kb。

有没有办法在 GridFS 中配置文件的分片大小以使其更适合存储邮件?

干杯,马蒂亚斯

4

1 回答 1

3

您不必担心尺寸。即使块大小为 256kb,50kb 的文档(包含您的电子邮件)仍将仅使用 50kb(+ 少量开销)。

块大小在驱动程序中配置。例如,您可以使用 PHP 驱动程序:

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

在 Java 驱动程序中,您可以在GridFSInputFile上调用setChunkSize

但总的来说,您不必担心 chunkSize。

于 2012-04-30T14:05:19.433 回答