移行

LocationIQからの移行

LocationIQは、オープンな地理データと、クエリパラメータとして送信するシンプルなキー認証を軸にしたサービスです。JSONレスポンスにはlatlondisplay_name、そしてaddressオブジェクトが含まれ、このオブジェクトはOpenStreetMap由来のデータを直接扱ったことがある人にはなじみのあるフィールドに分かれています。このなじみやすさは偶然ではありません。オープンデータを基盤とするプロバイダーは似たフィールド名に収束する傾向があり、複数のプロバイダーを同時に比較する際には知っておく価値があります。

LocationIQを選んだチームの多くは、手厚い無料の入り口とわかりやすい連携を、事前に企業向け契約を交渉することなく得られる点を評価していました。移行では、その体験をより重い導入プロセスと引き換えにするのではなく、できるだけ維持するのが理想です。

My GeocodeのLocationIQ互換ホストは、latlondisplay_name、住所構成要素の各フィールドを正確に再現しており、元のサービスと異なるのは著作権、利用規約、プライバシーに関する文言だけです。詳細なリファレンスは/compatibility/locationiq/にあります。response.display_nameを読み取ったりresponse.addressのフィールドを反復処理したりするアプリケーションコードは、ホスト名とキー以外の変更は必要ないはずです。

今回の移行に向けた短いチェックリストです。

  • 現在のクライアントライブラリが使っている認証方式を確認し(LocationIQは通常クエリパラメータを受け付けます)、ここでサポートされている4つの方式、つまりX-API-Keyヘッダー、Authorization: Bearer、HTTP Basic認証、クエリパラメータのいずれに当てはまるかを照合します
  • 連携コードが逆ジオコーディングのエンドポイントも呼び出しているかを確認します。そちらのリクエスト形式はジオコーディングとは異なるため、個別にテストする価値があります
  • LocationIQのレスポンスヘッダーに合わせて書いたレート制限処理のコードを見直します。ヘッダー名はプロバイダーごとに異なり、リトライ処理がそれらを名前で参照している可能性があるためです

料金面の比較はかなり単純です。キーなしで1日あたり2,500リクエストが無料で、さらにキーごとに1日あたり2,500リクエストが無料になり、これはIPv4(/24単位)でもIPv6(/48単位)でもネットワーク単位でカウントされます。無料枠を超えた分は1リクエストあたり€0.0001のプリペイドクレジット、または月額€50のUnlimitedキーとなり、すべてのエンドポイントが同じ料金です。ジオコーディングの量とその他の検索とで別の料金段階が設けられることもありません。

LocationIQの利用がサイドプロジェクトから自然に成長し、人々が頼りにするものになった場合、互換ホストはまさにその種の移行を良い意味で退屈なものにするためにあります。ホスト名を変え、キーを変え、そのまま開発を続けるだけです。最初に正しく動かすまで時間をかけたパース処理のコードは、背後のプロバイダーが変わったからといって書き直す必要はありません。ネットワーク単位の使用量を含む割り当ての状況は、/docs/rate-limits/で説明している標準のレスポンスヘッダーですべて確認できます。