有料版GeoIP Cityの料金体系や、無料版GeoLite Cityとの精度の違いについて調べてみた
IPアドレスを元に位置情報を返すデータベース、GeoIPがあります。
こちらの料金体系や精度について調査したので、まとめました。
利用例
GeoIPデータベースは、次のような用途があります。
アクセス元の地域を判定し、最寄りのローカル情報を提供する
ログのIPアドレスから計算した付加情報として付与し、解析に役立てる
但し前者についてはスマホが普及したことにより、GPSを用いた正確な位置情報が使えるようになりました。 GeoIPを使うか、そのHTML5のGeolocation APIを使うかはケースバイケースで考慮しましょう。
構成例
次のような組み合わせでGeoIPを使うことが出来ます。
Apache に mod_geoip を入れて、環境変数に位置情報を付与する
http://dev.maxmind.com/geoip/legacy/mod_geoip2/fluent-plugin-geoip を利用し、WEBサーバのアクセスログに位置情報を付与する
https://github.com/y-ken/fluent-plugin-geoip
GeoIPって有料?
無料版であるGeoLite Cityというものがあります。
こちらはこのプラグインに同封しているため、何の設定も行うこと無く利用出来ます。
もし精度の高い判定を行うには有料版のGeoIP Cityデータベースを購入する必要があります。
注文時点での最新版データベースを買い切りで使い続けても良いですし、
毎月更新されるデータベースに都度追従するアップデート契約を行うこともできます。
初回購入時の価格を参考までに以下にまとめます。
国レベルでの判定 : $50
http://www.maxmind.com/ja/country地域レベルでの判定 : $370
http://www.maxmind.com/ja/city特定の国(例:日本)限定の地域レベル判定 : $50 ※米国は$250
特定の国だけで十分というケースに使えます。
GeoIP City データベースサブセット特定の国(例:日本)限定の地域レベル+全世界の国レベルでの判定: $100 ※米国は$270
GeoIP City データベース世界諸国付属サブセット日本を含むアジアの地域レベルでの判定 : $150
GeoIP City データベース大陸別サブセット日本を含むアジアの地域レベルでの判定: $200
GeoIP City データベース大陸別・世界諸国付属サブセット
GeoIPってどれほどの精度なの?
国や地域毎に異なりますが、40km程度の誤差で判定できる割合を公式に発表されています。
無料版であるGeoLiteCityと、有料版であるGeoIP Cityの精度の違いは次の通りです。
国 | 40 km 圏内で正しく解決 | 誤った解決 | 都市不明 |
---|---|---|---|
日本(GeoLite City) | 55% | 37% | 8% |
日本(GeoIP City) | 77% | 18% | 5% |
その他の国を含めた詳細なデータについては次のページが参考になります。