Ziel
Als Entwickler arbeiten Sie häufig mit Datasets, die Kundenadressen enthalten, die möglicherweise nicht von guter Qualität sind. Sie müssen sicherstellen, dass die Adressen für Anwendungsfälle wie die Bestätigung der Kunden-ID, die Lieferung und mehr korrekt sind.
Die Address Validation API ist ein Produkt der Google Maps Platform, mit dem Sie eine Adresse validieren können. Es wird jedoch immer nur eine Adresse gleichzeitig verarbeitet. In diesem Dokument wird beschrieben, wie Sie die High Volume Address Validation in verschiedenen Szenarien verwenden, von API-Tests bis hin zur einmaligen und wiederkehrenden Adressvalidierung.
Anwendungsfälle
Sehen wir uns nun die Anwendungsfälle an, in denen die Adressvalidierung für große Mengen nützlich ist.
Test
Häufig möchten Sie die Address Validation API mit Tausenden von Adressen testen. Möglicherweise haben Sie die Adressen in einer CSV-Datei und möchten die Qualität der Adressen prüfen.
Einmalige Validierung von Adressen
Während des Onboardings für die Address Validation API möchten Sie Ihre vorhandene Adressdatenbank mit der Nutzerdatenbank abgleichen.
Wiederkehrende Validierung von Adressen
Es gibt verschiedene Szenarien, in denen Adressen regelmäßig validiert werden müssen:
- Sie können beispielsweise Jobs planen, um Adressen für Details zu validieren, die im Laufe des Tages erfasst wurden, z. B. aus Kundenregistrierungen, Bestelldetails oder Lieferplänen.
- Möglicherweise erhalten Sie Datendumps mit Adressen aus verschiedenen Abteilungen, z. B. aus dem Vertrieb oder Marketing. Die neue Abteilung, die die Adressen erhält, möchte sie oft vor der Verwendung validieren.
- Sie können Adressen im Rahmen von Umfragen oder verschiedenen Werbeaktionen erfassen und später im Onlinesystem aktualisieren. Sie möchten die Adressen bei der Eingabe in das System auf Richtigkeit prüfen.
Technische Details
Für die Zwecke dieses Dokuments wird Folgendes vorausgesetzt:
- Sie rufen die Address Validation API mit Adressen aus einer Kundendatenbank auf (d. h. einer Datenbank mit Kundendetails).
- Sie können Gültigkeits-Flags für einzelne Adressen in Ihrer Datenbank im Cache speichern.
- Gültigkeits-Flags werden von der Address Validation API abgerufen, wenn sich ein einzelner Kunde anmeldet.
Cache für die Produktion
Wenn Sie die Address Validation API verwenden, möchten Sie oft einen Teil der Antwort aus dem API-Aufruf im Cache speichern. In unseren Nutzungsbedingungen ist festgelegt, welche Daten im Cache gespeichert werden dürfen. Alle Daten, die von der Address Validation API im Cache gespeichert werden dürfen, müssen einem Nutzerkonto zugeordnet werden. Das bedeutet, dass die Adresse oder die Adressmetadaten in der Datenbank mit der E-Mail-Adresse oder einer anderen primären ID eines Nutzers verknüpft sein müssen.
Für den Anwendungsfall „Address Validation für große Datenmengen“ muss das Daten-Caching den dienstspezifischen Nutzungsbedingungen der Address Validation API entsprechen, die in Abschnitt 11.3 beschrieben sind. Anhand dieser Informationen können Sie feststellen, ob die Adresse eines Nutzers möglicherweise ungültig ist. In diesem Fall können Sie den Nutzer bei der nächsten Interaktion mit Ihrer Anwendung auffordern, eine korrigierte Adresse anzugeben.
- Daten aus dem AddressComponent-Objekt
confirmationLevelinferredspellCorrectedreplacedunexpected
Wenn Sie Informationen zur tatsächlichen Adresse im Cache speichern möchten, ist dafür die Einwilligung des Nutzers erforderlich. So wird sichergestellt, dass der Nutzer genau weiß, warum ein bestimmter Dienst seine Adresse speichert, und dass er mit den Bedingungen für die Weitergabe seiner Adresse einverstanden ist.
Ein Beispiel für die Nutzereinwilligung ist die direkte Interaktion mit einem Adressformular auf der Zahlungsseite eines Onlineshops. Es wird davon ausgegangen, dass Sie die Adresse zum Versenden eines Pakets im Cache speichern und verarbeiten.
Mit der Einwilligung des Nutzers können Sie formattedAddress und andere wichtige Komponenten aus der Antwort im Cache speichern. In einem Headless-Szenario kann ein Nutzer jedoch keine Einwilligung erteilen, da die Address Validation über das Backend erfolgt. Daher können Sie in diesem Headless-Szenario nur sehr begrenzte Informationen im Cache speichern.
Antwort verstehen
Wenn die Antwort der Address Validation API die folgenden Markierungen enthält, können Sie davon ausgehen, dass die eingegebene Adresse zustellbar ist:
- Die Markierung
addressCompleteim Objekt Verdict isttrue, - Der
validationGranularityim Verdict-Objekt istPREMISEoderSUB_PREMISE. - Keine der AddressComponent-Komponenten ist so gekennzeichnet:
Inferred(Hinweis:: inferred=truekann auftreten, wennaddressComplete=true)spellCorrectedreplacedunexpectedund
confirmationLevel: Die Bestätigungsstufe für die AddressComponent ist aufCONFIRMEDoderUNCONFIRMED_BUT_PLAUSIBLEfestgelegt.
Wenn die API-Antwort die oben genannten Markierungen nicht enthält, war die eingegebene Adresse wahrscheinlich von schlechter Qualität. Sie können dann entsprechende Flags in Ihrer Datenbank speichern, um dies zu berücksichtigen. Im Cache gespeicherte Flags weisen darauf hin, dass die Adresse insgesamt von schlechter Qualität ist, während detailliertere Flags wie „Spell Corrected“ auf die spezifische Art des Problems mit der Adressqualität hinweisen. Bei der nächsten Kundeninteraktion mit einer Adresse, die als von schlechter Qualität 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:
formattedAddresspostalAddressaddressComponent componentNamesoderUspsData standardizedAddress
Headless-Adressvalidierung implementieren
Basierend auf der obigen Diskussion:
- Aus geschäftlichen Gründen ist es oft erforderlich, einen Teil der Antwort der Address Validation API im Cache zu speichern.
- In den Nutzungsbedingungen der Google Maps Platform ist jedoch festgelegt, welche Daten im Cache gespeichert werden dürfen.
Im folgenden Abschnitt wird ein zweistufiger Prozess beschrieben, mit dem Sie die Nutzungsbedingungen einhalten und die Address Validation für große Mengen implementieren können.
Schritt 1:
Im ersten Schritt sehen wir uns an, wie Sie ein Skript für die Adressvalidierung mit hohem Volumen aus einer vorhandenen Datenpipeline implementieren. So können Sie bestimmte Felder aus der Antwort der Address Validation API gemäß den Nutzungsbedingungen speichern.
Diagramm A: Das folgende Diagramm zeigt, wie eine Datenpipeline mit einer Logik für die Adressvalidierung mit hohem Volumen erweitert werden kann.
Gemäß den Nutzungsbedingungen können Sie die folgenden Daten aus der addressComponent im Cache speichern:
confirmationLevelinferredspellCorrectedreplacedunexpected
In diesem Schritt der Implementierung werden die oben genannten Felder also für die UserID im Cache gespeichert.
Weitere Informationen finden Sie unter Tatsächliche Datenstruktur.
Schritt 2:
In Schritt 1 haben wir Feedback erhalten, dass einige Adressen im Eingabe-Dataset möglicherweise nicht von hoher Qualität sind. Im nächsten Schritt werden diese markierten Adressen dem Nutzer präsentiert und seine Zustimmung zur Korrektur der gespeicherten Adresse eingeholt.
Diagramm B: Dieses Diagramm zeigt, wie eine End-to-End-Integration des Ablaufs für die Nutzereinwilligung aussehen könnte:
- Wenn sich der Nutzer anmeldet, prüfen Sie zuerst, ob in Ihrem System Validierungs-Flags im Cache gespeichert sind.
- Wenn es Flags gibt, solltest du 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 anzeigen.
- Wenn die Adresse von guter Qualität ist, gibt die Address Validation API ein
formattedAddresszurück. - Sie können diese Adresse dem Nutzer präsentieren, wenn Korrekturen vorgenommen wurden, oder sie stillschweigend akzeptieren, wenn keine Korrekturen vorgenommen wurden.
- Sobald der Nutzer die Anfrage akzeptiert, kannst du die
formattedAddressin der Datenbank im Cache speichern.
Fazit
Die Adressvalidierung für große Mengen ist ein häufiger Anwendungsfall, der in vielen Anwendungen vorkommt. In diesem Dokument werden einige Szenarien und ein Designmuster für die Implementierung einer solchen Lösung gemäß den Nutzungsbedingungen der Google Maps Platform vorgestellt.
Außerdem haben wir eine Referenzimplementierung der High Volume Address Validation als Open-Source-Bibliothek auf GitHub bereitgestellt. Sehen Sie sich die Anleitung an, um schnell mit der High Volume Address Validation zu beginnen. Lesen Sie auch den Artikel zu Designmustern, um zu erfahren, wie Sie die Bibliothek in verschiedenen Szenarien verwenden können.
Nächste Schritte
Laden Sie das Whitepaper Mit gültigen Adressen den Bezahlvorgang, die Lieferung und die Abläufe optimieren herunter und sehen Sie sich das Webinar Mit der Adressvalidierung den Bezahlvorgang, die Lieferung und die Abläufe optimieren an.
Empfohlene weitere Informationen:

- Anwendungen der High Volume Address Validation
- Python-Bibliothek auf GitHub
- Demo zu Address Validation ansehen
Beitragende
Dieser Artikel wird von Google gepflegt. Die folgenden Mitwirkenden haben ihn ursprünglich verfasst.
Hauptautoren:
Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions
Engineer
Sarthak Ganguly | Solutions
Engineer