MongoLab上Geoacial查询的MongoDB性能

时间:2012-11-12 21:43:46

标签: performance mongodb geospatial mlab

我有一个包含超过400,000个文档的地方集合。我正在尝试进行geospacial查询,但它们似乎总是超时。 从MongoLab界面我进行搜索:

{ "location": {"$near": [ 38, -122 ] } }

页面刚刚超时。

还通过我的控制台运行此命令:

db.runCommand({geoNear: "places", near: [50,50], num:10})

它确实成功了,但花了5分钟才完成。

我的位置确实有地理空间索引。

location    { "location" : "2d"}

在这样的大型集合上进行地理查询是否完全不可能(毕竟对MongoDB集合而言非常小)?

编辑:MongoLab就此问题亲自与我联系。我的数据库似乎存在一些问题,例如许多地方还没有任何协调。另外我发现使用maxDistance会大大加快查询速度,这让我回到今天早上的问题:so question

1 个答案:

答案 0 :(得分:3)

Mongolabs的技术人员向我指出,经常将经度设置为0,0并且不使用maxDistance这会减慢速度。添加maxDistance就像魅力一样......

再次感谢Mongolabs的那个人。