首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >存储GeoSpatial数据的键值架构?

存储GeoSpatial数据的键值架构?
EN

Stack Overflow用户
提问于 2011-02-26 21:16:30
回答 1查看 449关注 0票数 0

开发桥以使用具有MongoDB的cms我使用存储键、值、类型来管理链接到cms的所有值。这些键、类型值被存储在web.config中以允许可扩展的模式。在这种情况下,不允许使用任何类对象定义来保留动态架构。结果是存储为DynamicArray。这将生成一些关于纬度经度的执行和存储的doubs,以便使用Query.Near运算符以执行方式进行检索。

代码语言:javascript
复制
DynamicArray
{  
    item : { Key: "lat", Value: "12.897", Type:double }
    item : { Key: "lng", Value: "12.345", Type:double }  
    item : { Key: "country", Value: "USA", Type:String }  
    item : { Key: "state", Value: "CA", Type:String }  
    item : { Key: "city", Value: "San Jose", Type:String }  
    item : { Key: "district", Value: "", Type:String }   
}

Query.ElemMatch("DynamicArray", Query.And(Query.EQ("Key", "country"), Query.EQ("Value", "USA")));

Query.Near ??

它是与GeoSpatial搜索兼容的模式键值吗?性能如何?如何以这种模式查询使用官方驱动的Query.Near (C#官方驱动)?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-26 22:52:50

为了在MongoDB上使用地理空间查询,您需要将x,y坐标存储为对象中的前两个值。有效模式的示例如下:

代码语言:javascript
复制
{ loc: [20,30] } 
{ loc: { x: 20, y: 30 }}
{ loc: { foo: 20, y: 30}}
{ loc: { lat : 40.739037, long: 73.992964 } }

您不能像在上面的示例中那样将坐标分离为多个对象。

欲了解更多信息,请访问:http://www.mongodb.org/display/DOCS/Geospatial+Indexing

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5127113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档