0

我想使用,物化空间搜索。我有与它们相关联的经度和纬度的实体。纬度和经度信息是动态的,例如城市中的服务提供商(如电工、木匠)。我想实现一个查询,让我的服务提供商在 1 公里半径范围内提供一些特定服务。在谷歌上搜索显示以下选项

  1. 将 Objectify 与 geohashes 一起使用 - 不确定该解决方案的准确性和可扩展性如何
  2. 使用 Google 搜索 - 它将需要以文档形式复制的实体(或其中的一部分),并且它是否能够支持动态更新的位置。
  3. 使用其他数据库,如 mongodb

假设有数百万个实体和纬度/经度动态更新,请建议我一个合适的选项。

感谢 Ittium

4

2 回答 2

1

我用过geohashes。它有效,尽管您最终选择的数据多于您正在寻找的确切范围,然后过滤掉了额外的数据。这可能是也可能不是一个好的解决方案,具体取决于您的特定应用程序。它需要编写更多代码,但移动部件更少(全部在数据存储中)。

Google 搜索和“其他数据库”基本上是相同的架构模式——使用任务队列将更新复制到外部索引。如果您想要一个快速的解决方案,搜索服务可能是最容易理解的。

只需选择一个解决方案并运行一段时间。您始终可以将数据重新索引到不同的解决方案中。

于 2015-06-19T15:26:08.920 回答
1

这实际上取决于您的查询率,但我通常更喜欢使用谷歌搜索。构建和维护文档非常简单,您可以获得不同的配额来处理此查询。

于 2015-06-20T14:30:48.380 回答