我想在我的新项目中使用mongodb。问题是,mongo使用预alocate文件:
每个数据文件都预先分配给特定大小。(这样做是为了防止文件系统碎片,以及其他原因。)数据库的第一个文件名是.0,然后是.1等。.0将是64 to,.1 128 to等等,最高可达2GB。一旦文件大小达到2GB,每个连续文件也是2GB。因此,如果最后出现的数据文件是1GB,那么如果该文件是最近创建的,则该文件可能为90%为空。
出发地:http://www.mongodb.org/display/DOCS/Excessive+Disk+Space
它的正常情况是,有许多2GB文件,其中没有任何内容。有一个小文件开关,可以将这个文件限制在512 to。
-小文件=>使用较小的初始文件大小(16 and )和最大文件大小(512 And)
我想知道使用小文件对生产有好处吗?它的缺点是什么。
有noprealloc开关,但在生产中不太好。但是没有关于小文件的注释。
发布于 2012-07-23 15:16:52
通常只有在创建大量数据库时才会使用小文件,如果您只是在几个数据库中操作,它不会为您节省足够的时间来处理。
对于有很多很多DBS (并且实际上受益于小文件)的客户,我们还没有看到任何性能问题。不过,与其他安装相比,它们的活动水平通常要低一些。根据Mongo正在做的事情,做一些操作可能会稍微慢一些,但我认为你永远不会注意到。
发布于 2014-07-31 22:30:34
此外,如果在AWS云中运行并使用带有SSD的m3小实例,则仅限于4GB存储空间。设置此选项将允许您拥有一个SSD支持的小型mongodb节点。可以满足小任务的需要
https://stackoverflow.com/questions/11613769
复制相似问题