Geocoding adalah proses konversi alamat (seperti alamat jalan) menjadi koordinat geografis (lintang dan bujur), yang dapat Anda gunakan untuk menempatkan penanda pada peta, atau memosisikan peta. Fokus dokumen ini adalah untuk mengklarifikasi pertimbangan yang terlibat saat melakukan geocoding alamat. Kode ini menjelaskan kapan waktu yang optimal untuk menggunakan Geocoding API dan kapan sebaiknya menggunakan layanan Place Autocomplete Places API.
Secara umum, gunakan Geocoding API saat melakukan geocoding pada 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 | |
---|---|
Respons input pengguna secara real time (termasuk alamat yang ambigu, tidak lengkap, salah format, atau salah eja yang dimasukkan pengguna) | Gunakan layanan Place Autocomplete Places API untuk mendapatkan ID tempat, lalu Geocoding API untuk melakukan geocoding terhadap ID tempat menjadi sebuah latlng. |
Sistem otomatis memproses alamat pos yang lengkap dan tidak ambigu (misalnya, “48 Pirrama Rd, Pyrmont, NSW, Australia”) | Menggunakan layanan web Geocoding API. |
Sistem otomatis memproses kueri yang ambigu (misalnya, alamat yang tidak lengkap, salah format, atau salah eja) | Sarankan agar sistem otomatis menggunakan layanan web Geocoding API. Namun, sistem otomatis dengan tingkat kueri yang ambigu, tidak lengkap, atau salah eja yang tinggi yang berasal dari input pengguna dapat memanfaatkan penambahan widget Place Autocomplete yang interaktif untuk memungkinkan pengguna memilih hasil sehingga menghindari kesalahan eja alamat. |
Masalah latensi yang menggunakan Directions API atau Distance Matrix API, 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 atau Distance Matrix API. |
Merespons masukan pengguna
Aplikasi yang merespons input pengguna secara real-time memiliki dua pertimbangan utama yang memengaruhi pilihan API:
- Input pengguna umumnya melibatkan proses memasukkan alamat secara bertahap (seperti “123 Main Street”), sehingga kemampuan untuk melakukan geocoding terhadap alamat yang tidak lengkap dan ambigu akan bermanfaat karena memungkinkan pengguna mendapatkan hasil yang lebih cepat.
- Aplikasi yang merespons masukan pengguna sangat sensitif pada latensi.
Kedua pertimbangan ini membuat layanan Place Autocomplete di Places API ideal untuk kasus penggunaan respons input pengguna. Pelengkapan Otomatis Tempat dirancang untuk menampilkan beberapa kemungkinan opsi dan memungkinkan pengguna memilih di antara opsi tersebut. Places API dapat dibatasi agar hanya menelusuri geocode atau alamat dengan mengecualikan bisnis. Selain itu, fungsi pencarian pelengkapan otomatis dapat dicondongkan untuk menampilkan hasil yang spesifik untuk suatu lokasi. Places API menampilkan ID tempat yang dapat diteruskan sebagai lokasi yang sepenuhnya jelas ke layanan web Geocoding API, yang kemudian menampilkan detail alamat lengkap, dan melakukan geocoding terhadap alamat tersebut menjadi sebuah latlng. ID Tempat juga dapat diteruskan ke API lain, seperti Directions API dan Distance Matrix API (lihat di bawah).
Geocoding alamat di Geocoding API memiliki latensi yang jauh lebih tinggi, serta memberikan 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
Pemrosesan sistem otomatis alamat pos yang lengkap dan tidak ambigu: Kueri yang tidak ambigu seperti string alamat pos yang lengkap (misalnya, “48 Pirrama Rd, Pyrmont, NSW, Australia”) paling baik ditangani oleh layanan web Geocoding API. Backend geocoding alamat menyediakan cakupan alamat yang lebih besar 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 ambigu dan dapat memberikan hasil yang kurang akurat atau hasil nol sebagai respons terhadap kueri ambigu. Jika sistem otomatis Anda memproses kueri ambigu tingkat tinggi yang berasal dari input pengguna, Anda dapat memanfaatkan penambahan elemen interaktif ke aplikasi menggunakan layanan Place Autocomplete di Places API, karena dirancang untuk menampilkan beberapa kemungkinan opsi dan memungkinkan pengguna memilih di antara opsi tersebut. Places API menampilkan ID tempat yang dapat diteruskan sebagai lokasi yang sepenuhnya jelas ke layanan web Geocoding API, yang kemudian menampilkan detail alamat lengkap dan melakukan geocoding terhadap alamat tersebut menjadi sebuah latlng. Dapatkan informasi selengkapnya tentang layanan Place Autocomplete untuk Android, iOS, JavaScript, dan Places API.
Mengurangi latensi untuk Directions API dan Distance Matrix API
Jika asal, tujuan, atau titik jalan ditentukan sebagai string alamat, Directions API dan Distance Matrix API akan menggunakan backend yang sama seperti Geocoding API untuk melakukan geocoding terhadap alamat ini sebelum menghitung rute. Hal ini meningkatkan latensi secara signifikan dibandingkan dengan menentukan lokasi yang sama dengan latlng atau ID tempat.
Jika aplikasi Anda menggunakan Directions API atau Distance Matrix API dalam situasi yang sensitif terhadap latensi seperti merespons input pengguna, dan asal, tujuan, atau titik jalan Anda awalnya ditetapkan sebagai string alamat, sebaiknya minimalkan latensi dengan menggunakan layanan Place Autocomplete di Places API untuk mengonversi string alamat menjadi ID tempat, lalu teruskan ID tempat ke Directions API atau Distance Matrix API. Dapatkan informasi selengkapnya tentang layanan Place Autocomplete untuk Android, iOS, JavaScript, dan Places API. Lihat juga contoh JavaScript untuk pelengkapan otomatis tempat dan rute.
Kesimpulan
Bergantung pada kasus penggunaan Anda, saat melakukan geocoding alamat, penggunaan Geocoding API atau layanan Place Autocomplete yang dikombinasikan dengan Geocoding API memungkinkan Anda membuat aplikasi yang menawarkan hasil geocoding yang akurat kepada pengguna, serta mengurangi latensi.
Mengelola kesalahan dan mencoba lagi
Jika Anda menerima respons UNKNOWN_ERROR
, hal ini disebabkan oleh error sementara
dan sebaiknya diatasi dengan mencoba lagi setelah beberapa saat. Sebaiknya gunakan
library klien layanan web Google Maps Platform yang menyertakan 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, serta dapat didownload
dan menerima kontribusi di GitHub. Di sini, 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.