如何在erlang mongodb中使用地理索引?

时间:2011-07-28 13:40:03

标签: mongodb erlang

要问两个小问题:

  1. 我想提到here提到的地理位置索引,以便找到附近的地方。据说是

    db.places.ensureIndex({loc:“2d”})

  2. 在那份文件中。但是因为erlang不能将“2d”存储为字符串,所以我在erlang中徘徊以下哪个代码是正确的:

    mongo:create_index(foo, {loc,  <<"2d">> })
    mongo:create_index(foo, {loc,  '2d' } )
    mongo:create_index(foo, {loc, '$2d'} )
    

    一切都好。哪个是正确的?

    1. 没有确保erlang驱动程序的索引。我没有看到任何可以获取索引信息的API。那么我怎样才能以优雅的方式创建一次索引?
    2. 非常感谢!

1 个答案:

答案 0 :(得分:1)

使用<<"2d">>。 Mongo在其元数据中不使用原子。

您应该将管理/设置过程与查询/更新过程分开。在此设置过程中创建索引,限制集合创建等,并在设置新系统时运行它。