Utiliser Apache Beam et SpannerIO pour se connecter à Spanner Omni

Apache Beam est un modèle unifié Open Source permettant de définir des pipelines de traitement parallèle des données par lots et en streaming. Ce document explique comment utiliser le connecteur SpannerIO dans un pipeline Apache Beam pour lire ou écrire des données dans des bases de données Spanner Omni.

Avant de commencer

Pour connecter SpannerIO à Spanner Omni, assurez-vous de répondre aux exigences suivantes :

  • Initialisez une base de données dans votre environnement Spanner Omni.

  • Utilisez Apache Beam version 2.69.0 ou ultérieure.

  • Configurez les identifiants d'authentification pour votre environnement.

Configurer SpannerIO pour se connecter à Spanner Omni

Pour connecter SpannerIO à Spanner Omni, vous devez configurer SpannerConfig avec les détails de votre base de données et les paramètres de connexion. Notez que SpannerIO n'accepte que les communications en texte brut lorsqu'il se connecte à Spanner Omni.

Pour configurer la connexion, procédez comme suit :

  1. Spécifiez l'instance et le point de terminaison de la base de données Spanner Omni.

  2. Activez la prise en charge expérimentale de l'hôte à l'aide de la méthode withExperimentalHost.

  3. Configurez le pipeline pour qu'il utilise un canal en texte brut.

L'exemple suivant montre comment créer un objet SpannerConfig pour Spanner Omni :

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