使用$ hint和$ natural运算符可以更快地使mongodb插入更快

时间:2013-06-25 11:53:06

标签: mongodb

我知道indexes减慢了插入速度,因为每次插入新记录时索引都需要更新。

对于具有多个索引的集合,是否可以将插入操作指向use the $hint operator并强制它使用$natural索引?这会加快插入速度吗?或者我最好放弃所有索引以加快插入速度?

1 个答案:

答案 0 :(得分:32)

$natural提示告诉mongo忽略查询索引,它没有插入任何内容。
请注意,您不能在一段时间内关闭指数 如果要加快插入速度,可以选择删除索引,但这会影响查询。更好的选择是更改写入关注设置:
例如,"Unacknowledged"将使插入更快,因为它不会等待mongod确认收到写操作。我猜这个缺点很明显 看看这里:http://docs.mongodb.org/manual/core/write-concern/

关于索引,拥有你不需要的索引绝不是一个好主意,因为它们会减慢插入速度(正如你所知)并且它们正在咬你的机器内存。

documentation,建议使用capped collections来加快写入速度,您可能需要考虑它。