Mongodb and indexing

2019-08-19 12:30发布

问题:

Two questions:

  • If I remove all the data inside a collection (db.mycollection.remove({})) will the indexing information I created previously be lost?
  • How often (how many more entries must I have) should I recreate the index?

回答1:

  1. Calling remove() will remove the indexed data but not the indexes themselves (dropping a collection will do that). So when you insert new documents they will be added to the indexes you created prior to the remove() call.

  2. You don't need to recreate the index. Once you've created an index it will automatically be updated as documents are inserted / updated / removed.