首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于MySQL空间索引的5近邻规范化数据库设计

基于MySQL空间索引的5近邻规范化数据库设计
EN

Stack Overflow用户
提问于 2011-03-12 03:51:45
回答 2查看 875关注 0票数 0

我将使用具有空间索引的数据库的MySQL,然后我将从一个给定点(经纬度)查询5个最近的邻居,这些点将是多米尼加的兴趣点。一旦我得到了5个最近的点,我将需要的名称的位置,类型的位置,地址的位置和(后,长)为每个点。

设计数据库的正确方式应该是什么?我正在考虑执行以下操作:表:名称列: ID,名称

表:类型列: ID,类型

表:街道列: ID,街道

表:街道编号列: ID、街道编号

表: Borough列: ID,Borough

表:城市列: ID、城市

表:地理点列:纬度、经度、GeometryPoint

我错过了什么吗?任何建议。有谁知道我可以在哪里读到关于它的资料?这是一个学校项目,应该使用移动应用程序,以显示用户5最近的兴趣点(加油站,餐馆,药房等)取决于他们的类型选择他们的实际位置。

另外,我可以在哪里获取数据?我的意思是,有没有一种方法,我可以得到所有的街道名称,行政区,我的国家的城市,并将其放入我的数据库中。我想我可以创建自己的兴趣点。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-30 15:06:59

首先,该结构在规范化方面看起来很好。你可以通过谷歌搜索“数据库规范化规则”来了解更多关于这个主题的信息。但您应该意识到,通过分离每个属性(Street-table、street-number-table等),您将获得复杂的查询。要得到类似于"POI XY,Streetname 2,Somecity,lat=42.4,long=13.2“的结果,您必须连接至少四个表。如果性能不是问题,请继续;-)

您可以从openstreemap.org获取数据(如果可用),或者从geonames.org获取一些poi

问候你,马丁

票数 1
EN

Stack Overflow用户

发布于 2011-04-10 10:41:01

我知道这是一个家庭作业,但我建议不要使用MySQL空间-它还没有实现大多数空间函数,而且它实现的那些只是边界框实现。我推荐PostGIS、spatialLite或MongoDB spatial。

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

https://stackoverflow.com/questions/5277636

复制
相关文章

相似问题

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