Praktik Terbaik Alamat Geocoding

Geocoding adalah proses konversi alamat (seperti alamat jalan) menjadi koordinat geografis (lintang dan bujur) yang dapat Anda gunakan untuk menempatkan penanda di peta, atau memosisikan peta. Fokus dokumen ini adalah untuk mengklarifikasi pertimbangan yang terlibat saat melakukan geokoding alamat. Panduan ini menjelaskan kapan waktu yang optimal untuk menggunakan Geocoding API dan kapan waktu yang tepat untuk menggunakan layanan Place Autocomplete Places API.

Secara umum, gunakan Geocoding API saat melakukan geocoding alamat lengkap (misalnya, "48 Pirrama Rd, Pyrmont, NSW, Australia"). Gunakan layanan Place Autocomplete Places API saat melakukan geocoding pada alamat yang ambigu (tidak lengkap) atau untuk aplikasi yang sensitif terhadap latensi, seperti saat merespons input pengguna.

Kasus penggunaan dan saran API

Kasus penggunaan dan saran API
Merespons input pengguna secara real time (termasuk alamat yang ambigu, tidak lengkap, berformat buruk, atau salah eja yang dimasukkan oleh pengguna) Gunakan layanan Place Autocomplete Places API untuk mendapatkan ID tempat, lalu Geocoding API untuk melakukan geocoding pada ID tempat menjadi latlng.
Sistem otomatis yang memproses alamat pos yang lengkap dan tidak ambigu (misalnya, “48 Pirrama Rd, Pyrmont, NSW, Australia”) Gunakan layanan web Geocoding API.
Sistem otomatis yang memproses kueri ambigu (misalnya, alamat yang tidak lengkap, berformat buruk, atau salah eja) Merekomendasikan sistem otomatis menggunakan layanan web Geocoding API. Namun, sistem otomatis dengan rasio kueri ambigu, tidak lengkap, atau salah eja yang tinggi yang berasal dari input pengguna dapat memperoleh manfaat dari penambahan widget Place Autocomplete interaktif untuk memungkinkan pengguna memilih hasil dan dengan demikian menghindari salah eja alamat.
Masalah latensi saat menggunakan Directions API (Lama) atau Distance Matrix API (Lama), dengan asal, tujuan, atau titik jalan yang ditentukan sebagai string alamat Kurangi latensi geocoding dengan menggunakan layanan Place Autocomplete Places API untuk mendapatkan ID tempat, lalu teruskan ID Tempat ke Directions API (Lama) atau Distance Matrix API (Lama).

Merespons input pengguna

Aplikasi yang merespons input pengguna secara real-time memiliki dua pertimbangan utama yang memengaruhi pilihan API:

  1. Input pengguna umumnya melibatkan pengisian alamat secara progresif (seperti "123 Main Street"), sehingga kemampuan untuk melakukan geocode pada alamat yang tidak lengkap dan ambigu bermanfaat karena memungkinkan pengguna mendapatkan hasil lebih cepat.
  2. Aplikasi yang merespons input pengguna sangat sensitif terhadap latensi.

Kedua pertimbangan ini menjadikan layanan Place Autocomplete di Places API ideal untuk kasus penggunaan dalam merespons input pengguna. Place Autocomplete dirancang untuk menampilkan beberapa kemungkinan opsi dan memungkinkan pengguna memilih di antaranya. Places API dapat dibatasi untuk menelusuri hanya geocode atau alamat sekaligus mengecualikan bisnis. Selain itu, fungsi penelusuran pelengkapan otomatis dapat dibiaskan untuk menampilkan hasil yang spesifik untuk suatu lokasi. Places API menampilkan ID tempat yang dapat diteruskan sebagai lokasi yang sepenuhnya disambiguasi ke layanan web Geocoding API, yang kemudian menampilkan detail alamat lengkap, dan melakukan geocode alamat ke latlng. ID tempat juga dapat diteruskan ke API lain, seperti Directions API (Lama) dan Distance Matrix API (Lama) (lihat Mengurangi latensi).

Geocoding alamat di Geocoding API memiliki latensi yang jauh lebih tinggi, dan juga menghasilkan hasil yang kurang akurat untuk kueri yang tidak lengkap atau ambigu, sehingga tidak direkomendasikan untuk aplikasi yang harus merespons input pengguna secara real time.

Dapatkan informasi selengkapnya tentang layanan Place Autocomplete untuk Android, iOS, JavaScript, dan Places API.

Sistem otomatis

Sistem otomatis yang memproses alamat pos yang lengkap dan tidak ambigu: Kueri yang tidak ambigu seperti string alamat pos lengkap (misalnya, "48 Pirrama Rd, Pyrmont, NSW, Australia") paling baik ditangani oleh layanan web Geocoding API. Backend geocoding alamat memberikan cakupan alamat yang lebih luas secara global, dan dioptimalkan untuk hasil berkualitas tinggi dengan jenis kueri yang lengkap dan tidak ambigu ini.

Sistem otomatis memproses kueri ambigu: Kueri ambigu adalah kueri yang berisi alamat yang diformat dengan buruk, alamat yang tidak lengkap, atau kesalahan ejaan. Untuk sistem otomatis, sebaiknya gunakan layanan web Geocoding API. Namun, Geocoding API tidak dirancang untuk menangani kueri yang ambigu dan mungkin menghasilkan hasil yang kurang akurat atau nol hasil sebagai respons terhadap kueri yang ambigu. Jika sistem otomatis Anda memproses kueri ambigu dengan tingkat tinggi yang berasal dari input pengguna, Anda mungkin mendapatkan manfaat dari penambahan elemen interaktif ke aplikasi menggunakan layanan Place Autocomplete di Places API, karena layanan ini dirancang untuk menampilkan beberapa kemungkinan opsi dan memungkinkan pengguna memilih di antaranya. Places API menampilkan ID tempat yang dapat diteruskan sebagai lokasi yang sepenuhnya disambiguasi ke layanan web Geocoding API, yang kemudian menampilkan detail alamat lengkap, dan melakukan geocode alamat menjadi latlng. Dapatkan informasi selengkapnya tentang layanan Place Autocomplete untuk Android, iOS, JavaScript, dan Places API.

Mengurangi latensi untuk Directions API (Lama) dan Distance Matrix API (Lama)

Jika asal, tujuan, atau titik jalan ditentukan sebagai string alamat, Directions API (Legacy) dan Distance Matrix API (Legacy) menggunakan backend yang sama dengan Geocoding API untuk melakukan geocode pada alamat ini sebelum menghitung rute. Hal ini akan meningkatkan latensi secara signifikan dibandingkan dengan menentukan lokasi yang sama sebagai latlng atau ID tempat.

Jika aplikasi Anda menggunakan Directions API (Lama) atau Distance Matrix API (Lama) dalam situasi yang sensitif terhadap latensi seperti merespons input pengguna, dan asal, tujuan, atau titik jalan Anda awalnya ditentukan sebagai string alamat, sebaiknya minimalkan latensi dengan menggunakan layanan Place Autocomplete dari Places API untuk mengonversi string alamat menjadi ID tempat, lalu teruskan ID tempat ke Directions API (Lama) atau Distance Matrix API (Lama). Dapatkan informasi selengkapnya tentang layanan Place Autocomplete untuk Android, iOS, JavaScript, dan Places API. Lihat juga contoh JavaScript tentang Place Autocomplete dan rute.

Kesimpulan

Bergantung pada kasus penggunaan Anda, Anda dapat menggunakan Geocoding API saja atau menggabungkannya dengan layanan Place Autocomplete. Dengan begitu, Anda dapat membuat aplikasi yang menawarkan hasil geocoding yang akurat dan latensi yang lebih rendah.

Mengelola error dan percobaan ulang

Jika Anda menerima respons UNKNOWN_ERROR, respons ini disebabkan oleh error sementara dan sebaiknya ditangani dengan mencoba lagi setelah beberapa saat. Sebaiknya gunakan library klien layanan web Google Maps Platform yang mencakup logika percobaan ulang dan mendukung autentikasi Paket Premium Google Maps Platform. Klien Java, Klien Python, Klien Go, dan Klien Node.js untuk Layanan Google Maps adalah library klien yang didukung komunitas, tersedia untuk didownload dan kontribusi di GitHub, tempat Anda juga akan menemukan petunjuk penginstalan dan kode contoh.

Jika Anda mendapatkan kode status OVER_QUERY_LIMIT sebagai respons, berarti Anda telah melebihi batas penggunaan untuk API. Sebaiknya Anda mencoba strategi pengoptimalan penggunaan ini.