ユーザーが位置情報ベースのデータを保存できる機能を備えたアプリを設計しており、後で他のユーザーが現在の位置情報の特定の半径内にあるデータを照会できるようにしています。
問題は、スケーラブルで優れたパフォーマンスを持つようにテーブルを設計するための最良のアプローチは何ですか? 緯度をパーティション キー ( pk
)、経度を行キー ( rk
)として含むテーブルを作成し、それをパーティション キーとしてdataid
使用する別のテーブルにマップする列を作成することを考えてdataid
いました。
私の考えでは、双方向ルックアップを使用すると、両方のルックアップが瞬時になるため、パフォーマンスが向上します。これは正しい考え方ですか?ある範囲に入るパーティションキーを探すのは悪いとどこかで読んでいました。その場合、どのようにアプローチすればよいですか?Google マップ、Apple マップ キットは通常、これらの機能をどのように実装していますか?