Mit Apache Beam und SpannerIO eine Verbindung zu Spanner Omni herstellen

Apache Beam ist ein einheitliches Open-Source-Modell, mit dem sowohl Batch- als auch Streamingpipelines zur parallelen Datenverarbeitung definiert werden können. In diesem Dokument wird beschrieben, wie Sie den SpannerIO-Connector in einer Apache Beam-Pipeline verwenden, um Daten aus Spanner Omni-Datenbanken zu lesen oder in diese zu schreiben.

Hinweis

Damit Sie SpannerIO mit Spanner Omni verbinden können, müssen die folgenden Voraussetzungen erfüllt sein:

  • Initialisieren Sie eine Datenbank in Ihrer Spanner Omni-Umgebung.

  • Verwenden Sie Apache Beam Version 2.69.0 oder höher.

  • Richten Sie Authentifizierungsanmeldedaten für Ihre Umgebung ein.

SpannerIO für die Verbindung zu Spanner Omni konfigurieren

Wenn Sie SpannerIO mit Spanner Omni verbinden möchten, müssen Sie SpannerConfig mit Ihren Datenbankdetails und Verbindungsparametern konfigurieren. Beachten Sie, dass SpannerIO beim Herstellen einer Verbindung zu Spanner Omni nur die Kommunikation im Klartext unterstützt.

So konfigurieren Sie die Verbindung:

  1. Geben Sie die Spanner Omni-Datenbankinstanz und den Endpunkt an.

  2. Aktivieren Sie die experimentelle Hostunterstützung mit der Methode withExperimentalHost.

  3. Konfigurieren Sie die Pipeline für die Verwendung eines Klartextkanals.

Das folgende Beispiel zeigt, wie Sie ein SpannerConfig-Objekt für Spanner Omni erstellen:

SpannerConfig spannerConfig =
    SpannerConfig.create()
        .withDatabaseId("DATABASE_ID")
        // Define the Spanner Omni endpoint
        .withExperimentalHost("http://ENDPOINT")
        // SpannerIO supports only plain-text connections
        .withUsingPlainTextChannel(true);