簡體   English   中英

緩存空間查詢

[英]Caching spatial queries

給定一種服務,該服務返回查詢空間數據庫的位置(lat / lng)的某些數據,鑒於以下用例,我對一種使用內存緩存策略的好方法感興趣:

  • 緯度/經度值將很難保持一致,因為移動位置提供商會返回
  • 服務返回的數據具有某些固定點的功能->相似的位置返回相同的值。
  • 我正在使用Postgis / Java來完成這項工作。

到目前為止,我最好的主意是使用例如第一個小數點對lat / lng進行歸一化。 但是不確定是否有一個聰明的策略或一些gis支持。

因此,您想使用Java應用程序作為緩存層來減少空間PostGIS數據庫的負載嗎?

是的,一種簡單的方法是將世界柵格化,即-180,-90右下,左上180,右上90,並將傳入的經/緯度四舍五入到最接近的度/整數。 請四舍五入而不是落地,因為這會給位置帶來較小的誤差。

然后存儲每個新網格位置的響應,因為它們會進入。我會選擇一個2D數組。

稍微復雜一點的解決方案是使用較小的雙網格。

Tarantool 1.6.4具有RTREE內存索引,可用於最近鄰居和矩形內對象搜索。 專門添加了索引,使其能夠充當針對PostgreSQL的空間查詢的快速內存中緩存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM