Ziel
Als Entwickler arbeiten Sie oft mit Datasets mit Kundenadressen, die eventuell nicht von guter Qualität sind. Die Adressen müssen für Anwendungsfälle wie die Bestätigung der Kunden-ID, die Zustellung usw. korrekt sein.
Die Address Validation API ist ein Produkt der Google Maps Platform, mit dem Sie eine Adresse validieren können. Allerdings wird jeweils nur eine Adresse verarbeitet. In diesem Dokument erfahren Sie, wie Sie die High Volume Address Validation in verschiedenen Szenarien verwenden, von API-Tests bis hin zu einmaligen und wiederkehrenden Adressvalidierungen.
Anwendungsfälle
Jetzt werden wir die Anwendungsfälle verstehen, bei denen die High Volume Address Validation hilfreich ist.
Testen
Häufig möchten Sie die Address Validation API testen, indem Sie Tausende von Adressen ausführen. Möglicherweise haben Sie die Adressen in einer Datei mit kommagetrennten Werten (Comma Separated Values, kommagetrennte Werte) und möchten die Qualität der Adressen prüfen.
Einmalige Überprüfung von Adressen
Während der Einrichtung der Address Validation API möchten Sie Ihre vorhandene Adressdatenbank anhand der Nutzerdatenbank validieren.
Wiederkehrende Validierung von Adressen
Eine Reihe von Szenarien erfordert eine regelmäßige Überprüfung von Adressen:
- Möglicherweise haben Sie geplante Jobs, um Adressen für Details zu validieren, die im Laufe des Tages erfasst wurden, z. B. Kundenregistrierungen, Bestelldetails oder Lieferpläne.
- Möglicherweise erhalten Sie Datendumps mit Adressen aus verschiedenen Abteilungen, z. B. vom Vertrieb bis zur Marketingabteilung. Die neue Abteilung, die die Adressen erhält, möchte diese oft vor der Verwendung überprüfen.
- Sie können Adressen im Rahmen von Umfragen oder bei verschiedenen Werbeaktionen und später bei einer Aktualisierung im Onlinesystem erfassen. Sie möchten überprüfen, ob die Adressen bei der Eingabe in das System korrekt sind.
Technische Details
Im Rahmen dieses Dokuments gehen wir von folgenden Punkten aus:
- Sie rufen die Address Validation API mit Adressen aus einer Kundendatenbank auf (d. h. einer Datenbank mit Kundendaten).
- Sie können Gültigkeits-Flags für einzelne Adressen in Ihrer Datenbank im Cache speichern.
- Gültigkeits-Flags werden aus der Address Validation API abgerufen, wenn sich ein einzelner Kunde anmeldet.
Cache für Produktionszwecke
Wenn Sie die Address Validation API verwenden, möchten Sie häufig einen Teil der Antwort des API-Aufrufs im Cache speichern. Die Nutzungsbedingungen beschränken die Daten, die im Cache gespeichert werden können. Daten, die über die Address Validation API im Cache gespeichert werden können, müssen jedoch in einem Nutzerkonto zwischengespeichert werden. Das bedeutet, dass die Adresse oder die Adressmetadaten in der Datenbank zwischen der E-Mail-Adresse oder einer anderen primären ID eines Nutzers im Cache gespeichert werden müssen.
Beim Anwendungsfall „High Volume Address Validation“ muss das Daten-Caching den dienstspezifischen Nutzungsbedingungen der Address Validation API entsprechen, die in Abschnitt 11.3 erläutert werden. Anhand dieser Informationen können Sie feststellen, ob die Adresse eines Nutzers möglicherweise ungültig ist. In diesem Fall werden Sie den Nutzer bei der nächsten Interaktion mit Ihrer Anwendung zur korrigierten Adresse auffordern.
- Daten aus dem AddressComponent-Objekt
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Wenn Sie Informationen über die tatsächliche Adresse im Cache speichern möchten, dürfen diese Daten nur mit Zustimmung des Nutzers im Cache gespeichert werden. So weiß der Nutzer genau, warum ein bestimmter Dienst seine Adresse speichert, und er ist mit den Bedingungen für die Weitergabe seiner Adresse einverstanden.
Ein Beispiel für die Nutzereinwilligung ist die direkte Interaktion mit einem E-Commerce-Adressformular auf einer Zahlungsseite. Es gilt, dass Sie die Adresse im Cache speichern und verarbeiten, um ein Paket zu versenden.
Mit der Einwilligung des Nutzers können Sie formattedAddress
und andere Schlüsselkomponenten aus der Antwort im Cache speichern. In einem monitorlosen Szenario kann ein Nutzer jedoch keine Einwilligung erteilen, da die Adressüberprüfung über das Back-End erfolgt. Daher können Sie in diesem monitorlosen Szenario sehr begrenzte Informationen im Cache speichern.
Antwort verstehen
Wenn die Antwort der Address Validation API die folgenden Markierungen enthält, können Sie sicher sein, dass die Eingabeadresse von der gewünschten Qualität ist:
- Die Markierung
addressComplete
im Objekt Verdict isttrue
. - Der
validationGranularity
im Objekt Verdict istPREMISE
oderSUB_PREMISE
. - Keine der AddressComponent ist so gekennzeichnet:
Inferred
(Hinweis: inferred=true
kann passieren, wennaddressComplete=true
)spellCorrected
replaced
unexpected
und
confirmationLevel
: Die Bestätigungsebene für AddressComponent wird aufCONFIRMED
oderUNCONFIRMED_BUT_PLAUSIBLE
festgelegt.
Wenn die API-Antwort die oben genannten Markierungen nicht enthält, war die Eingabeadresse wahrscheinlich von schlechter Qualität. Sie können die Flags in Ihrer Datenbank im Cache speichern, um dies widerzuspiegeln. Im Cache gespeicherte Flags geben an, dass die gesamte Adresse von schlechter Qualität ist, während detailliertere Flags wie „Rechtschreibkorrektur“ die Art des Qualitätsproblems der Adresse angeben. Bei der nächsten Kundeninteraktion mit einer Adresse, die als minderwertig gekennzeichnet ist, können Sie die Address Validation API mit der vorhandenen Adresse aufrufen. Die Address Validation API gibt die korrigierte Adresse zurück, die Sie über eine UI-Aufforderung anzeigen können. Sobald der Kunde die formatierte Adresse akzeptiert, können Sie Folgendes aus der Antwort im Cache speichern:
formattedAddress
postalAddress
addressComponent componentNames
oderUspsData standardizedAddress
Monitorlose Adressvalidierung implementieren
Basierend auf der obigen Diskussion:
- Häufig ist es aus geschäftlichen Gründen erforderlich, einen Teil der Antwort der Address Validation API im Cache zu speichern.
- In den Nutzungsbedingungen der Google Maps Platform ist jedoch eingeschränkt, welche Daten im Cache gespeichert werden können.
Im folgenden Abschnitt wird in zwei Schritten erläutert, wie Sie die Nutzungsbedingungen einhalten und eine Adressvalidierung mit hohem Volumen implementieren.
Schritt 1:
Im ersten Schritt erfahren Sie, wie Sie ein Skript zur Adressvalidierung mit hohem Volumen aus einer vorhandenen Datenpipeline implementieren. Dadurch können Sie bestimmte Felder aus der Antwort der Address Validation API so speichern, dass die Nutzungsbedingungen eingehalten werden.
Diagramm A: Das folgende Diagramm zeigt, wie eine Datenpipeline mit einer Logik zur Adressüberprüfung mit hohem Volumen optimiert werden kann.
Gemäß den Nutzungsbedingungen können Sie die folgenden Daten aus dem addressComponent
im Cache speichern:
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Daher werden die oben genannten Felder bei diesem Implementierungsschritt mit der UserID im Cache gespeichert.
Weitere Informationen finden Sie in den Details zur tatsächlichen Datenstruktur.
Schritt 2:
In Schritt 1 haben wir das Feedback eingeholt, dass einige Adressen im Eingabe-Dataset möglicherweise nicht von hoher Qualität sind. Im nächsten Schritt werden wir die markierten Adressen dem Nutzer präsentieren und seine Einwilligung zur Korrektur der gespeicherten Adresse einholen.
Diagramm B: Dieses Diagramm zeigt, wie eine End-to-End-Integration des Einwilligungsvorgangs für Nutzer aussehen könnte:
- Prüfen Sie bei der Nutzeranmeldung zuerst, ob in Ihrem System Validierungs-Flags im Cache gespeichert sind.
- Wenn Flags vorhanden sind, sollten Sie dem Nutzer eine UI anzeigen, über die er seine Adresse korrigieren und aktualisieren kann.
- Sie können die Address Validation API noch einmal mit der aktualisierten oder im Cache gespeicherten Adresse aufrufen und dem Nutzer die korrigierte Adresse zur Bestätigung vorlegen.
- Wenn die Adresse eine gute Qualität hat, gibt die Address Validation API einen
formattedAddress
zurück. - Sie können diese Adresse dem Nutzer präsentieren, wenn Korrekturen vorgenommen wurden, oder unbemerkt akzeptieren, wenn es keine Korrekturen gibt.
- Sobald der Nutzer zugestimmt hat, können Sie das
formattedAddress
in der Datenbank zwischenspeichern.
Fazit
Die Adressüberprüfung mit hohem Volumen ist ein häufiger Anwendungsfall, den Sie in vielen Anwendungen begegnen werden. In diesem Dokument sollen einige Szenarien und ein Designmuster für die Implementierung einer solchen Lösung gezeigt werden, die den Nutzungsbedingungen der Google Maps Platform entspricht.
Auf GitHub finden Sie außerdem eine Referenzimplementierung von High Volume Address Validation als Open-Source-Bibliothek. Sehen Sie sich das Tool an, um schnell mit der High-Volume-Adressüberprüfung zu beginnen. Lesen Sie auch den Artikel über Designmuster für die Verwendung der Bibliothek in verschiedenen Szenarien.
Nächste Schritte
Laden Sie das Whitepaper Bessere Zahlung, Lieferung und Vorgänge mit zuverlässigen Adressen herunter und sehen Sie sich das Webinar Verbessern von Bezahlvorgang, Zustellung und Abläufen mit Adressvalidierung an.
Leseempfehlungen:
- Anwendungsfälle für die Adressüberprüfung mit hohem Volumen
- Python-Bibliothek auf GitHub
- Demo zur Adressüberprüfung ansehen
Beitragende
Dieser Artikel wird von Google verwaltet. Die folgenden Mitwirkenden haben ihn ursprünglich verfasst.
Hauptautor:
Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions
Engineer
Sarthak Ganguly | Solutions
Engineer