代码之家  ›  专栏  ›  技术社区  ›  Manuel

mongodb二维索引精度如何影响查询性能?

  •  0
  • Manuel  · 技术社区  · 6 年前

    我正在使用此查询获取接近给定位置的对象,按距离排序:

    {
        "id": { // String
            "$nin": ["<vals>"]
        },
        "date": { // Date
            "$gte": "<val>"
        },
        "location": { // Legacy coordinate pairs
            "$nearSphere": ["<val>"],
            "$maxDistance": "<val>"
        },
        "count": { // Integer
            "$gt": "<val>"
        },
        "param1": { // String
            "$in": ["<vals>"] // 1-10 values
        },
        "param2": { // String
            "$in": ["<vals>"] // 1-10 values
        },
        "param3": { // String
            "$in": ["<vals>"] // 10-100 values
        }
    }
    

    我尝试了此索引,但查询执行缓慢(200毫秒):

    {
        "location": "2dsphere",
        "count": 1,
        "date": -1,
        "param1": 1
    }
    

    结果的定位精度应为~/-100m或0.001十进制度数。位置存储为传统坐标对。

    一个低/高的二维索引 precision 提高性能?

    0 回复  |  直到 6 年前
    推荐文章