Usar o Apache Beam e o SpannerIO para se conectar ao Spanner Omni

O Apache Beam é um modelo unificado e de código aberto para definir pipelines de processamento paralelo de dados em lote e streaming. Este documento descreve como usar o conector SpannerIO em um pipeline do Apache Beam para ler ou gravar em bancos de dados do Spanner Omni.

Antes de começar

Para conectar o SpannerIO ao Spanner Omni, verifique se você atende aos seguintes requisitos:

  • Inicialize um banco de dados no ambiente do Spanner Omni.

  • Use a versão 2.69.0 ou mais recente do Apache Beam.

  • Configure as credenciais de autenticação para seu ambiente.

Configurar o SpannerIO para se conectar ao Spanner Omni

Para conectar o SpannerIO ao Spanner Omni, configure o SpannerConfig com os detalhes do banco de dados e os parâmetros de conexão. O SpannerIO só é compatível com comunicações de texto simples ao se conectar ao Spanner Omni.

Para configurar a conexão, faça o seguinte:

  1. Especifique a instância e o endpoint do banco de dados do Spanner Omni.

  2. Ative o suporte experimental a host usando o método withExperimentalHost.

  3. Configure o pipeline para usar um canal de texto simples.

O exemplo a seguir mostra como criar um objeto SpannerConfig para o 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);