MongoDB $ geoWithin查询速度很慢

时间:2016-12-16 21:50:28

标签: mongodb performance mongodb-query geospatial

我有大量文件(约1百万),每个文件都很大(avgObjSize:13268)。每个文档都有一个地理点:

lib/session.js

我有以下索引:

Accomodation:
    {
       "location" : {
            [...]
            "geoLocation" : {
                "type" : "Point",
                "coordinates" : [ 
                    -42.61343486, 
                    71.70936503
                ]
            }
        }
    }

我做这个简单的查询(它应该保持85公里半径):

{
    "location.geoLocation" : "2dsphere"
}

查询执行需要1到6秒,我觉得它很慢。 即使服务器不强大,它也不需要花费太多时间来获取100个文档,它似乎使用了索引,因此甚至不应该为扫描提取该区域中的文档。 我错过了什么?

这是查询统计信息

db.getCollection('Accomodation').find({
            "location.geoLocation" : {
                "$geoWithin" : {
                    "$centerSphere" : [ 
                        [ 
                            2.34682537615297, 
                            48.8536252472747
                        ], 
                        0.0131543876703093
                    ]
                }
            }})).limit(100)

0 个答案:

没有答案
相关问题