添加文档时是否必须重建MongoDB索引

时间:2018-03-13 00:32:53

标签: mongodb indexing rebuild

我刚刚发现了mongodb索引的非凡力量。仅在几个字段上构建索引使我能够将某些操作加速1000倍以上。我对可能看起来很愚蠢的问题道歉:一旦我在我的数据库中的特定字段上构建了索引,每次添加和删除文档时,它是否会自动重建?或者我必须明确地称它? (在开发阶段,我可能会删除每个文档,然后再将它们全部添加)

2 个答案:

答案 0 :(得分:4)

MongoDB会自动为您保持索引最新,反映集合中文档的当前状态。您不必担心索引更新!

关于索引的一点警告。引用文档:

  

虽然索引可以提高查询性能,但索引也存在   一些操作考虑。有关详细信息,请参阅Operational Considerations for Indexes

例如,如果您需要执行批量插入命中索引并且您不想放慢该进程的速度,有时删除索引,然后插入大量文档并最终重建索引可能会很有用从头开始(如果需要,也在后台)。上面链接中的更多信息和其他注意事项。

答案 1 :(得分:3)

创建索引后,Mongo会自动维护它。无需手动重建。