Designmuster für die Validierung von Adressen mit hohem Volumen auf der Google Cloud Platform

Ziel

In der Anleitung zur Adressvalidierung mit hohem Volumen wurden verschiedene Szenarien erläutert, in denen die Validierung von Adressen mit hohem Volumen verwendet werden kann. In dieser Anleitung erhalten Sie eine Einführung in verschiedene Designmuster in der Google Cloud Platform zum Ausführen von High Volume Address Validation.

Wir beginnen mit einer Übersicht über die einmalige Ausführung von „High Volume Address Validation“ in der Google Cloud Platform mit Cloud Run, Compute Engine oder Google Kubernetes Engine. Anschließend sehen wir uns an, wie diese Funktion in eine Datenpipeline eingebunden werden kann.

Am Ende dieses Artikels sollten Sie mit den verschiedenen Optionen vertraut sein, mit denen Sie Address Validation in großem Umfang in Ihrer Google Cloud-Umgebung ausführen können.

Referenzarchitektur auf der Google Cloud Platform

In diesem Abschnitt werden verschiedene Designmuster für die umfangreiche Adressüberprüfung mit der Google Cloud Platform ausführlicher behandelt. Durch die Ausführung auf der Google Cloud Platform können Sie Ihre vorhandenen Prozesse und Datenpipelines einbinden.

High Volume Address Validation einmalig auf der Google Cloud Platform ausführen

Unten sehen Sie eine Referenzarchitektur zum Erstellen einer Integration in die Google Cloud Platform, die sich besser für einmalige Vorgänge oder Tests eignet.

Image

In diesem Fall empfehlen wir, die CSV-Datei in einen Cloud Storage-Bucket hochzuladen. Das High Volume Address Validation-Skript kann dann in einer Cloud Run-Umgebung ausgeführt werden. Sie können sie jedoch in jeder anderen Laufzeitumgebung wie Compute Engine oder Google Kubernetes Engine ausführen. Die CSV-Ausgabe kann auch in den Cloud Storage-Bucket hochgeladen werden.

Als Google Cloud Platform-Datenpipeline ausführen

Das im vorherigen Abschnitt gezeigte Bereitstellungsmuster eignet sich hervorragend für einen schnellen Test der Adressvalidierung für hohe Volumen zur einmaligen Verwendung. Wenn Sie ihn jedoch regelmäßig als Teil einer Datenpipeline verwenden, können Sie die nativen Funktionen der Google Cloud Platform besser nutzen, um sie robuster zu machen. Sie können u. a. folgende Änderungen vornehmen:

Image

  • In diesem Fall können Sie CSV-Dateien in Cloud Storage-Buckets auslesen.
  • Ein Dataflow-Job kann die zu verarbeitenden Adressen abrufen und dann in BigQuery zwischenspeichern.
  • Die Dataflow-Python-Bibliothek kann um eine Logik für die Adressvalidierung in großem Umfang erweitert werden, um die Adressen aus dem Dataflow-Job zu validieren.

Skript aus einer Datenpipeline als lang andauernden wiederkehrenden Prozess ausführen

Ein weiterer gängiger Ansatz besteht darin, einen Batch von Adressen als Teil einer Streaming-Daten-Pipeline als wiederkehrender Prozess zu validieren. Möglicherweise haben Sie die Adressen auch in einem BigQuery-Datenspeicher. In diesem Ansatz sehen wir, wie eine wiederkehrende Datenpipeline erstellt wird (die täglich/wöchentlich/monatlich ausgelöst werden muss).

Image

  • Laden Sie die ursprüngliche CSV-Datei in einen Cloud Storage-Bucket hoch.
  • Verwenden Sie Memorystore als nichtflüchtigen Datenspeicher, um den Zwischenstatus für den lang andauernden Prozess beizubehalten.
  • Speichern Sie die endgültigen Adressen in einem BigQuery-Datenspeicher im Cache.
  • Cloud Scheduler so einrichten, dass das Script regelmäßig ausgeführt wird.

Diese Architektur bietet folgende Vorteile:

  • Mit Cloud Scheduler kann die Adressvalidierung regelmäßig durchgeführt werden. Sie können Adressen monatlich oder vierteljährlich validieren. Diese Architektur hilft bei der Lösung dieses Anwendungsfalls.
  • Wenn Kundendaten in BigQuery gespeichert sind, können die validierten Adressen oder die Validierungs-Flags direkt im Cache gespeichert werden. Hinweis: Was im Cache gespeichert werden kann und wie wird ausführlich im Artikel zur Adressvalidierung für hohe Zugriffszahlen beschrieben.

  • Die Verwendung von Memorystore bietet eine höhere Ausfallsicherheit und die Möglichkeit, mehr Adressen zu verarbeiten. Dieser Schritt fügt der gesamten Verarbeitungspipeline eine Zustandsorientierte hinzu, die für die Verarbeitung sehr großer Adress-Datasets erforderlich ist. Auch andere Datenbanktechnologien wie Cloud SQL[https://cloud.google.com/sql] oder andere Datenbankvarianten der Google Cloud Platform können hier verwendet werden. Wir sind jedoch der Meinung, dass der Arbeitsspeicher nicht die Anforderungen an Skalierbarkeit und Einfachheit erfüllt und daher die erste Wahl sein sollte.

Fazit

Durch die Anwendung der hier beschriebenen Muster können Sie die Address Validation API für verschiedene Anwendungsfälle und unterschiedliche Anwendungsfälle auf der Google Cloud Platform nutzen.

Wir haben eine Open-Source-Python-Bibliothek geschrieben, um Ihnen den Einstieg in die oben beschriebenen Anwendungsfälle zu erleichtern. Er kann über die Befehlszeile auf Ihrem Computer oder über die Google Cloud Platform oder andere Cloud-Anbieter aufgerufen werden.

Weitere Informationen zur Verwendung der Bibliothek finden Sie in diesem Artikel.

Nächste Schritte

Laden Sie das Whitepaper Bezahl, Lieferung und Abläufe mit zuverlässigen Adressen verbessern herunter und sehen Sie sich das Webinar Bezahlvorgang, Zustellung und Abläufe mit Address Validation verbessern an.

Weitere Informationen:

Beitragende

Google verwaltet diesen Artikel. Er wurde von den folgenden Beitragenden verfasst.
Hauptautoren:

Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions Engineer
Sarthak Ganguly | Solutions Engineer