在MongoDB中配置GridFS Chunksize

时间:2012-04-30 13:13:37

标签: mongodb gridfs

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

我相信GridFS非常适合这种情况。让我有点害怕的是,文档对于gridFS中的分片大小并不十分清楚。 据我所知,gridFS中的分片大小不等于普通分片大小,但默认为256kb。这听起来像是浪费大量空间,因为许多电子邮件的大小不会超过50kb。

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

干杯, 的Matthias

1 个答案:

答案 0 :(得分:3)

您不必担心尺寸。即使chunkksize是256kb,一个50kb的文档(包含你的电子邮件)仍将只使用50kb(+次要开销)。

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

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

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

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