我目前正在调查使用MongoDB存储电子邮件数据。因为电子邮件的大小可能会变得相当大(例如10兆)。
我相信GridFS非常适合这种情况。让我有点害怕的是,文档对于gridFS中的分片大小并不十分清楚。 据我所知,gridFS中的分片大小不等于普通分片大小,但默认为256kb。这听起来像是浪费大量空间,因为许多电子邮件的大小不会超过50kb。
有没有办法在GridFS中配置文件的分片大小,使其更适合存储邮件?
干杯, 的Matthias
答案 0 :(得分:3)
您不必担心尺寸。即使chunkksize是256kb,一个50kb的文档(包含你的电子邮件)仍将只使用50kb(+次要开销)。
在驱动程序中配置chunksize。例如,您可以使用PHP驱动程序:
$gridFs->storeFile( 'filename.txt', array( 'chunkSize' => 50 * 1024 ) );
在Java驱动程序中,您可以在setChunkSize上调用GridFSInputFile。
但总的来说,你不必担心chunkSize。