0

我想做geo Hastag mongodb 但我不知道格式正确

这是我从网站 mongo 读取的格式:

db.places.ensureIndex( { loc : "2d"} , { bits : 26 } )

我想添加一些字段索引,但与地理标签相同的索引。

类似 http://www.mongodb.org/display/DOCS/Geospatial+Haystack+Indexing

但是,我希望索引是复合索引吗?

我应该做

db.tablebusiness.ensureIndex( {"LongitudeLatitude" : "2d", 
                               "indexContents" : 1, 
                               "Prominent" : -1 } , 
                              { bits : 22 } )

如果我这样做,mongodb 怎么知道 bits:22 是索引的 LongitudeLatitude 部分的选项?

干草堆索引的等价物是什么?

db.tablebusiness.ensureIndex( {"LongitudeLatitude" : "geoHaystack", 
                               "indexContents" : 1, 
                               "Prominent" : -1 } , 
                              { bits : 22 ,bucketsize: .2} )

那是对的吗?

4

1 回答 1

1

这是一个语法问题。你上面的假设是正确的。由于 mongoDB 仅支持一个地理空间索引,并且您指定索引的 LongitudeLatitude 部分是带有“2d”索引标志的地理空间索引(而不是 1 表示升序,-1 表示降序),它知道 bits 参数是传递给 ensureIndex 对应于 LongitudeLatitude 字段。

Haystack 索引也是如此。

于 2012-09-05T20:44:15.210 回答