使用 Apache Beam 和 SpannerIO 连接到 Spanner Omni

Apache Beam 是一种统一的开源模型,用于定义批次数据和流式数据的并行处理流水线。本文档介绍了如何在 Apache Beam 流水线中使用 SpannerIO 连接器来读取或写入 Spanner Omni 数据库。

准备工作

如需将 SpannerIO 连接到 Spanner Omni,请确保您满足以下要求:

  • 在 Spanner Omni 环境中初始化数据库。

  • 使用 Apache Beam 2.69.0 版或更高版本。

  • 为您的环境设置身份验证凭据。

配置 SpannerIO 以连接到 Spanner Omni

如需将 SpannerIO 连接到 Spanner Omni,您必须使用数据库详细信息和连接参数配置 SpannerConfig。请注意,在连接到 Spanner Omni 时,SpannerIO 仅支持纯文本通信。

如需配置连接,请执行以下操作:

  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);