Best Practices für das Geocoding von Adressen

Beim Geocoding werden Adressen (z. B. Adressen) in geografische Koordinaten (Breiten- und Längengrad) umgewandelt, mit denen Sie Markierungen auf einer Karte platzieren oder die Karte positionieren können. In diesem Dokument werden Überlegungen zum Geocoding von Adressen erläutert. Darin wird beschrieben, wann die Geocoding API optimal und wann der Place Autocomplete-Dienst der Places API verwendet werden sollte.

Verwenden Sie im Allgemeinen die Geocoding API, wenn Sie vollständige Adressen geocodieren (z. B. „48 Pirrama Rd, Pyrmont, NSW, Australien“). Verwenden Sie den „Place Autocomplete“-Dienst der Places API, wenn Sie mehrdeutige (unvollständige) Adressen geocodieren oder latenzempfindliche Anwendungen ausführen möchten, z. B. wenn Sie auf Nutzereingaben antworten.

Anwendungsfälle und API-Empfehlungen

Anwendungsfälle und API-Empfehlungen
In Echtzeit auf Nutzereingaben reagieren (umfasst mehrdeutige, unvollständige, schlecht formatierte oder falsch geschriebene Adressen, die ein Nutzer eingegeben hat) Rufen Sie mit dem „Place Autocomplete“-Dienst der Places API eine Orts-ID ab und geocodieren Sie sie dann mit der Geocoding API in einen „latlng“-Wert.
Automatisierte Systeme verarbeiten vollständige, eindeutige Postanschriften (z. B. „48 Pirrama Rd, Pyrmont, NSW, Australien“). Geocoding API-Webdienst verwenden
Automatisierte Systeme verarbeiten mehrdeutige Abfragen (z. B. unvollständige, schlecht formatierte oder falsch geschriebene Adressen) Automatisierte Systeme empfehlen, den Geocoding API-Webdienst zu verwenden. Automatisierte Systeme mit einer hohen Anzahl mehrdeutiger, unvollständiger oder falsch geschriebener Suchanfragen, die aus Nutzereingaben abgeleitet werden, können jedoch von einem interaktiven Place Autocomplete-Widget profitieren. Damit können Nutzer ein Ergebnis auswählen und so falsche Schreibweisen einer Adresse vermeiden.
Latenzprobleme bei Verwendung der Directions API oder der Distance Matrix API, bei denen Startorte, Ziele oder Wegpunkte als Adressstrings angegeben sind Sie können die Latenz bei der Geocodierung reduzieren, indem Sie den „Place Autocomplete“-Dienst der Places API verwenden, um Orts-IDs abzurufen und diese dann an die Directions API oder die Distance Matrix API zu übergeben.

Reaktion auf Nutzereingaben

Bei Anwendungen, die in Echtzeit auf Nutzereingaben reagieren, sind bei der Wahl der API zwei wichtige Aspekte zu berücksichtigen:

  1. Bei Nutzereingaben wird die Adresse im Allgemeinen nach und nach eingegeben (z. B. „Hauptstraße 123“). Daher ist es von Vorteil, unvollständige, mehrdeutige Adressen geocodieren zu können, da der Nutzer so schneller Ergebnisse erhält.
  2. Anwendungen, die auf Nutzereingaben reagieren, sind in hohem Maße latenzsensitiv.

Diese beiden Faktoren machen den „Place Autocomplete“-Dienst in der Places API ideal für den Anwendungsfall, in dem auf Nutzereingaben geantwortet wird. Mit Place Autocomplete werden mehrere mögliche Optionen zurückgegeben und Nutzer können zwischen ihnen wählen. Die Places API kann so eingeschränkt werden, dass nur nach Geocodes oder Adressen gesucht und Unternehmen ausgeschlossen werden. Außerdem kann die Suchfunktion der automatischen Vervollständigung so beeinflusst werden, dass für einen bestimmten Standort spezifische Ergebnisse zurückgegeben werden. Die Places API gibt eine Orts-ID zurück, die als vollständig eindeutiger Standort an den Geocoding API-Webdienst übergeben werden kann. Dieser gibt dann die vollständigen Adressdetails zurück und geocodiert die Adresse als latlng-Wert. Orts-IDs können auch an andere APIs übergeben werden, z. B. an die Directions API und die Distance Matrix API (siehe unten).

Die Adress-Geocodierung in der Geocoding API hat eine viel höhere Latenz und führt zu weniger genauen Ergebnissen bei unvollständigen oder mehrdeutigen Abfragen. Daher wird sie nicht für Anwendungen empfohlen, die in Echtzeit auf Nutzereingaben reagieren müssen.

Weitere Informationen zum Place Autocomplete-Dienst für Android, iOS, JavaScript und die Places API

Automatisierte Systeme

Automatisierte Systeme verarbeiten vollständige, eindeutige Postanschriften: Eindeutige Abfragen wie vollständige Adressstrings (z. B. „48 Pirrama Rd, Pyrmont, NSW, Australien“) lassen sich am besten vom Geocoding API-Webdienst verarbeiten. Das Adress-Geocoding-Back-End bietet weltweit eine höhere Abdeckung von Adressen und ist für qualitativ hochwertige Ergebnisse bei solchen vollständigen, eindeutigen Abfragen optimiert.

Automatisierte Systemverarbeitung für mehrdeutige Abfragen: Mehrdeutige Abfragen sind Abfragen, die schlecht formatierte Adressen, unvollständige Adressen oder Rechtschreibfehler enthalten. Für automatisierte Systeme empfehlen wir die Verwendung des Geocoding API-Webdienstes. Die Geocoding API ist jedoch nicht für mehrdeutige Abfragen ausgelegt und kann bei mehrdeutigen Abfragen weniger genaue oder gar keine Ergebnisse liefern. Wenn Ihr automatisiertes System eine große Anzahl mehrdeutiger Abfragen verarbeitet, die aus Nutzereingaben abgeleitet werden, kann es von Vorteil sein, Ihrer App ein interaktives Element mit dem „Place Autocomplete“-Dienst in der Places API hinzuzufügen. Er ist so konzipiert, dass mehrere mögliche Optionen zurückgegeben werden und Nutzer zwischen ihnen wählen können. Die Places API gibt eine Orts-ID zurück, die als vollständig eindeutiger Standort an den Geocoding API-Webdienst übergeben werden kann. Dieser gibt dann die vollständigen Adressdetails zurück und geocodiert die Adresse als latlng-Wert. Weitere Informationen zum Place Autocomplete-Dienst für Android, iOS, JavaScript und die Places API

Latenz für die Directions API und die Distance Matrix API reduzieren

Wenn Startorte, Zielorte oder Wegpunkte als Adressstrings angegeben sind, verwenden die Directions API und die Distance Matrix API dasselbe Back-End wie die Geocoding API, um diese Adressen vor der Berechnung der Route zu geocodieren. Dadurch erhöht sich die Latenz im Vergleich zur Angabe derselben Standorte als latlngs oder Orts-IDs deutlich.

Wenn in Ihrer Anwendung die Directions API oder die Distance Matrix API in einer latenzempfindlichen Situation verwendet wird, z. B. bei einer Antwort auf Nutzereingaben, und Ihre Startorte, Ziele oder Wegpunkte anfangs als Adressstrings angegeben sind, sollten Sie die Latenz minimieren. Verwenden Sie dazu den Place Autocomplete-Dienst der Places API, um Adressstrings in Orts-IDs zu konvertieren und die Orts-IDs dann an die Directions API oder die Distance Matrix API zu übergeben. Weitere Informationen zum Place Autocomplete-Dienst für Android, iOS, JavaScript und die Places API Hier finden Sie ein JavaScript-Beispiel für die automatische Vervollständigung von Orten und Wegbeschreibungen.

Fazit

Je nach Anwendungsfall können Sie beim Geocoding von Adressen über die Geocoding API oder den Place Autocomplete-Dienst in Kombination mit der Geocoding API Anwendungen erstellen, die Nutzern genaue Geocoding-Ergebnisse sowie geringere Latenz bieten.

Fehler und Wiederholversuche

Wenn Sie UNKNOWN_ERROR-Antworten erhalten, werden diese durch vorübergehende Fehler verursacht und lassen sich am besten beheben, indem Sie es nach einer kurzen Verzögerung noch einmal versuchen. Wir empfehlen, die Clientbibliotheken der Google Maps Platform-Webdienste zu verwenden, die Wiederholungslogik enthalten und die Authentifizierung für die Google Maps Platform-Premiumoption unterstützen. Java-Client, Python-Client, Go-Client und Node.js-Client für Google Maps-Dienste sind von der Community unterstützte Clientbibliotheken, die auf GitHub zum Download und für Beiträge verfügbar sind. Dort finden Sie auch eine Installationsanleitung und Beispielcode.

Wenn Sie den Statuscode OVER_QUERY_LIMIT als Antwort erhalten, haben Sie die Nutzungslimits für die API überschritten. Wir empfehlen Ihnen, diese Strategien zur Nutzungsoptimierung auszuprobieren.