Amazon Location Service で構築する位置情報アプリケーション - 地図・ジオコーディング・トラッキング

地図表示、ジオコーディング、ルート計算、デバイストラッキングの 4 機能で位置情報アプリケーションを構築する実装パターンを紹介します。

Location Service の主要機能

Amazon Location Service は地図表示、ジオコーディング (住所から座標への変換)、逆ジオコーディング (座標から住所への変換)、ルート計算、ジオフェンス、デバイストラッキングの 6 つの機能を提供します。データプロバイダーとして Esri と HERE を選択でき、用途に応じて使い分けます。Esri は地図の視覚的な品質が高く、HERE はルート計算とジオコーディングの精度に強みがあります。Google Maps Platform と比較して大幅に低コストで、月間 50 万回の地図タイルリクエスト、1 万回のジオコーディング、1 万回のルート計算が無料利用枠に含まれます。

地図表示とジオコーディングの実装

Web アプリケーションへの地図埋め込みは MapLibre GL JS ライブラリを使用します。Location Service の地図スタイルエンドポイントを MapLibre に設定するだけで、インタラクティブな地図が表示されます。認証は Cognito Identity Pool を使用し、未認証ユーザーにも地図の閲覧を許可する構成が一般的です。ジオコーディング API は住所文字列から緯度・経度を返し、逆ジオコーディング API は座標から住所を返します。検索結果にはバイアス (特定地域を優先) やフィルター (国コードで絞り込み) を適用でき、日本国内の住所検索に特化した設定が可能です。

ジオフェンスとデバイストラッキング

ジオフェンスは仮想的な地理的境界を定義する機能です。ポリゴンまたは円形のジオフェンスを作成し、トラッカーと関連付けると、デバイスがジオフェンスに進入・退出した際に EventBridge にイベントが送信されます。配送車両が配送エリアに到着した際の通知、従業員が特定エリアに入った際の打刻自動化、子供が学校エリアから離れた際のアラートなどに活用できます。トラッカーはデバイスの位置情報を収集・保存するコンポーネントで、位置情報の更新を API で送信すると、移動履歴が最大 30 日間保存されます。フィルタリング機能でデバイスが静止している間の冗長な位置更新を除外し、コストを削減できます。 地図 API について体系的に学びたい方は、関連書籍 (Amazon)も参考になります。

Location Service の料金

Location Service の料金は機能ごとの従量課金です。地図タイルのリクエストは 1,000 タイルあたり約 0.04 ドル、ジオコーディングは 1,000 リクエストあたり約 0.50 ドル、ルート計算は 1,000 リクエストあたり約 0.50 ドルです。デバイストラッキングは 1 デバイスあたり月額約 0.05 ドル (位置更新 1,000 回まで含む) です。Google Maps Platform と比較すると、地図表示で約 50〜70% のコスト削減が見込めます。無料枠は最初の 3 か月間、地図タイル 50 万リクエスト、ジオコーディング 10,000 リクエスト等が含まれます。

まとめ

Location Service は位置情報アプリケーションに必要な機能を統一 API で提供するサービスです。Google Maps API からの移行でコストを大幅に削減でき、ジオフェンスとトラッキングで IoT やフリート管理のユースケースにも対応します。Cognito との統合で認証を簡素化し、EventBridge との連携でイベント駆動の位置情報アプリケーションを構築できます。