我想知道如果为了搜索它们而插入了一些新的地理数据,是否必须重新索引 mongodb 中的地理空间数据?假设我们有一个文档,它看起来像:
{user:'a',loc:[363.236,-45.365]}
,并且它被索引了。后来,我插入了文档 b,它看起来像:{user:'b',loc:{42.3654,-56.3}}
. 为了搜索,每次插入新文档时,我是否必须重新索引(使用 ensureIndex())集合?频繁的重新索引会影响整体应用程序的性能吗?谢谢。
问问题
164 次
1 回答
0
你只需要一次ensureIndex;之后,MongoDB 会在每次插入时维护索引。不过,我不是 100% 确定为删除而维护索引 - 我想它必须这样做。
您可以对索引进行碎片整理并重建它以使其更小,从而存在该功能。一个有用的帖子:
http://jasonwilder.com/blog/2012/02/08/optimizing-mongodb-indexes/
于 2013-10-30T09:14:34.870 回答