2

亞馬遜目前在DynamoDB support for geospatial indexing但似乎並沒有要對你如何能做到這與node.js的SDK多文檔。AWS - 將在DynamoDB表一GeoPoing和查詢反對 - Node.js的

我想了解如何:

  1. 把一個GeoPoint(地理散列)值中的一個項目在DynamoDB表

而且

  • 如何查詢半徑範圍內某個位置(lat,lng)內所有項目的表格
  • 我看過this article,但我不確定它是如何應用於node.js的,並且找不到任何示例

    回答

    2

    AWS不提供用於node.js的地理空間索引庫。他們只有你提到的java版本。 您可以使用Java庫lambda函數(我試過),但庫已經過時,不能保持(最後一次提交的是3年前) 我pull request與修復被忽略。 即使在自己修理東西之後,我遇到了像this one這樣的問題。

    要回答你的問題1和問題2:AWS寫道a document series對他們的方式計算庫和geohashes它是如何在DynamoDB執行查詢。這裏總結得太多了。

    通過AWS和我遇到的問題缺乏維護和支持使我得出這樣的結論AWS放棄了對地理查詢DynamoDB的想法。此外,我找不到任何其他已成功應用此庫的開發人員。

    我目前的解決方案是基於CloudSearch。我將這些項目(及其位置)寫入DynamoDB表中。我使用DynamoDB流將表中的所有更改上傳到CloudSearch。 CloudSearch具有開箱即用的地理查詢功能。

    +0

    我熟悉Cloudsearch,但它不適合我的需要,因爲有上傳文件,並在索引變得可用之間的小延遲。 – Zigglzworth

    +0

    是的,是的。我調查了這也http://stackoverflow.com/questions/37131035/cloudsearch-performance-with-frequent-updates-of-small-batches我的使用情況是不是那麼重要。 –