【问题标题】:Store location information, or use a third party source?存储位置信息,还是使用第三方来源?
【发布时间】:2011-08-11 08:21:10
【问题描述】:

我正在开发一个基于位置的网络应用程序(学习目的),用户将在其中对本地企业进行评分。然后,我希望用户能够根据他们的居住地和给定范围(即 123 Street. City St, 12345 10 英里范围内的商家)查看本地商家。

我想知道我应该使用什么来获取位置信息;一些第三方来源(如谷歌地理编码 API)或托管我自己的位置数据库?我知道邮政编码数据库带有每个邮政编码的纬度/经度以及其他数据,但这些数据库通常不完整,而且绝对不是全球性的。

我知道大多数 API 都设置了使用限制,这可能是一个决定因素。我想我能做的就是将从 Google 检索到的所有数据存储到我自己的数据库中,这样我就不会重复进行相同的查询。

你们有什么建议?我试过查看关于 SO 的现有答案,但没有任何帮助。

编辑 明确地说,我需要一种方法来查找位于给定位置的特定范围内的所有企业。是否有我可以使用的服务来执行此操作(即,返回给定位置范围内的所有城市、邮编等)

【问题讨论】:

    标签: database geolocation geocoding


    【解决方案1】:

    将检索到的数据存储在本地缓存中始终是一个好主意。它将减少延迟并避免对您使用的任何 API 征税。正如您所说,它还可以帮助您保持在使用限制之下。您始终可以对该缓存设置大小限制,并在需要时将其清除。

    使用 API 意味着您只会为需要信息的网站提取数据,而不是购买大量数据并且必须自己加载/托管所有数据(这些数据往往会变得很大)。我建议使用 API+缓存

    【讨论】:

    • 同样重要的是,这些数据库需要维护并保持最新(尤其是在反向 IP 的情况下),您可以通过利用地理位置服务“免费”获得这些数据库。
    • 我还想知道网站如何生成这些庞大的国家和州列表供人们选择?我的假设是他们查询一些数据库,而不是第 3 方 API。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-01
    • 1970-01-01
    相关资源
    最近更新 更多