缓存空间查询

luj*_*jop 5 java gis caching postgis

给定一个返回查询空间数据库的位置(纬度/经度)的一些数据的服务,考虑到以下用例,我对使用内存缓存策略的好方法感兴趣:

  • 纬度/经度值很难相同,因为它们是由移动位置提供商返回的
  • 服务返回的数据是某些固定点的函数 -> 相似的位置返回相同的值。
  • 我正在使用 Postgis/Java 来完成这项工作。

现在我最好的想法是使用例如第一个小数来规范纬度/经度。但不确定是否有聪明的策略或一些地理信息系统支持。

Mic*_*ner 2

您想使用 Java 应用程序作为缓存层来减少空间 PostGIS 数据库的负载吗?

是的,一个简单的方法是将世界网格化,右下角为-180、-90,左上角为180,右上角为90,并将传入的纬度/经度四舍五入到最接近的度数/整数。请绕圆而不是落地,因为这会给位置带来较小的误差。

然后存储每个新网格位置进入时的响应。我会选择二维数组。

稍微复杂一点的解决方案是使用更小的双网格。