【发布时间】:2017-01-18 04:52:44
【问题描述】:
所以目前我有一个应用程序,我在其中存储位置数据(lat、lng)以及其他字段,而谁没有。所以我喜欢 mysql 或 sql 的原因是我可以轻松获得地理空间查询。例如选择落在给定半径和中心点内的所有行。
我喜欢 dynamodb 的地方在于,它在 AWS 上几乎可以无限扩展,这是我将要使用的服务,而且速度很快。我很想将我所有的数据转移到 dynamodb 甚至在那里插入新数据但是我无法使用那些地理空间查询,这是我的应用程序中最重要的部分。这是必需的。
我知道 dynamodb 的地理库,但它是用 java 编写的,而我的后端是用 php 编写的,所以这是不行的,而且他们似乎没有更新或维护该库。
我想到的一个解决方案是只将坐标存储在 mysql 中,并将相应的 id 与其他数据(包括 lat 和 long 值)一起存储在 dynamodb 中。
有了这个,我可以实现我想要的地理空间查询功能,同时能够很好地扩展亚马逊上的所有内容,特别是因为那是我正在使用的主机。
所以基本上我会从 mysql 查询给定半径内的所有 POI,并使用所有 id 从 dynamodb 获取所有结果。听起来很疯狂还是什么?
但这样做的潜在缺点是必须先查询一个数据源,然后在使用第一个查询的结果后立即查询另一个数据源。也许我想多了,低估了这些技术的发展速度。
所以总结一下我的要求:
必须在 AWS 上
必须能够执行地理空间查询
必须能够在 PHP 中连接到 dynamodb 和 MySQL
任何帮助或建议将不胜感激。
【问题讨论】:
标签: php mysql amazon-web-services amazon-dynamodb geospatial