Apache Beam と SpannerIO を使用して Spanner Omni に接続する

Apache Beam は、バッチとストリーミングの両方のデータの並列処理パイプラインを定義するオープンソースの統合モデルです。このドキュメントでは、Apache Beam パイプライン内で SpannerIO コネクタを使用して、Spanner Omni データベースとの間で読み取りまたは書き込みを行う方法について説明します。

始める前に

SpannerIO を Spanner Omni に接続するには、次の要件を満たしていることを確認してください。

  • Spanner Omni 環境内でデータベースを初期化します。

  • Apache Beam リリース 2.69.0 以降を使用します。

  • 環境の認証情報を設定します。

Spanner Omni に接続するように SpannerIO を構成する

SpannerIO を Spanner Omni に接続するには、データベースの詳細と接続パラメータを使用して SpannerConfig を構成する必要があります。SpannerIO は、Spanner Omni に接続する際にプレーン テキスト通信のみをサポートします。

接続を構成する手順は次のとおりです。

  1. Spanner Omni データベース インスタンスとエンドポイントを指定します。

  2. withExperimentalHost メソッドを使用して試験運用版のホスト サポートを有効にします。

  3. プレーン テキスト チャネルを使用するようにパイプラインを構成します。

次の例は、Spanner Omni の SpannerConfig オブジェクトを作成する方法を示しています。

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