使用自动化流程创建 AlloyDB 流

本页面介绍如何使用自动设置流程创建 AlloyDB for PostgreSQL 数据流。

自动数据流设置流程通过减少您需要执行的步骤数量,简化了将数据从 AlloyDB for PostgreSQL 集群移至 BigQuery 的过程。借助此流程,您可以直接从 AlloyDB for PostgreSQL 集群的概览页面创建数据流。

AlloyDB for PostgreSQL 部署由主集群(包含主实例)组成。它还可以包含辅助集群和辅助实例。Datastream 始终从主集群中的主实例创建数据流。

Datastream 会自动保护数据流与源集群之间的 VPC 连接,并创建数据库配置和数据流连接资源。

免费层级

Datastream 允许您使用免费层级将数据从 AlloyDB for PostgreSQL 流式传输到 BigQuery,每月免费提供高达 100 GiB 的变更数据捕获数据。如需了解详情,请参阅 Datastream 价格

准备工作

  1. 启用 Datastream、Network Connectivity 和 Compute Engine API。
  2. 确保您拥有创建和管理 Datastream 资源所需的 Identity and Access Management (IAM) 权限。如需了解详情,请参阅以下部分 。
  3. 创建并配置用于复制的源 AlloyDB for PostgreSQL 集群。如需了解详情,请参阅 为 CDC 配置 AlloyDB for PostgreSQL 数据库
  4. 我们建议您在创建数据流之前为集群启用逻辑复制。如果您未启用逻辑复制,Datastream 会为您启用,这会重启您的源实例。

    如需了解如何为 AlloyDB for PostgreSQL 集群启用逻辑复制,请参阅 为 CDC 配置 AlloyDB for PostgreSQL 数据库

  5. 确保您的源集群已配置为使用 专用服务访问通道

所需权限

如需使用自动数据流创建流程,您需要以下 Identity and Access Management (IAM) 角色或权限:

  • serviceusage.services.enablecompute.networkAdmin,用于启用所需的 API 并执行网络配置任务。
  • alloydb.admin,用于集群和实例配置任务。
  • datastream.admin ,用于 Datastream 代表您执行的管理任务。

如果您选择自定义数据流设置,您的数据库管理员用户还需要对要复制的架构具有 GRANT 权限,以及对源数据库中的管理和结构任务具有一些额外的权限。连接到源数据库并运行以下命令:

  GRANT alloydbsuperuser TO "USER_NAME";
  ALTER ROLE "USER_NAME" CREATEROLE;
  GRANT SELECT on ALL TABLES IN SCHEMA "SCHEMA_NAME" to "USER_NAME" WITH GRANT OPTION;
  ALTER DEFAULT PRIVILEGES
  IN SCHEMA "SCHEMA_NAME"
  GRANT SELECT ON TABLES TO "USER_NAME" WITH GRANT OPTION;
  GRANT CREATE ON DATABASE "DATABASE_NAME" TO "USER_NAME";
  

将来的表

只有在自动流程期间由您提供账号详细信息以进行身份验证的用户创建将来的表时,这些表才会自动添加到数据流中。如果将来的表是由其他用户创建的,则该用户必须明确授予 Datastream 读取者用户对该表的 SELECT 权限。

创建并启动数据流

如需创建并启动数据流,请执行以下步骤:

控制台

  1. 前往源 AlloyDB for PostgreSQL 集群概览页面。

    前往 AlloyDB for PostgreSQL

  2. 点击要从中流式传输数据的主集群。

  3. 通过以下任一方式自动创建并启动数据流:

    1. 集群详情 页面上,点击数据复制 下的 启动数据流
    2. 集成 部分中,点击将数据复制到 BigQuery 下的启动数据流
    3. Launchpad 标签页上,点击与其他产品无缝集成 下的将数据复制到 BigQuery。Google Cloud
  4. 开始流式复制数据 窗格随即打开。

  5. 数据流设置下,查看您创建的数据流的默认设置 。

  6. 您可以展开相应的下拉列表并选择其他值,以更改源数据库。

  7. 如果您已准备好创建并启动数据流,请点击启动数据流

如果您需要更改数据流设置,请点击自定义

自定义数据流设置

点击自定义 后,系统会显示自定义数据流设置 页面 。确保您拥有 自定义数据流设置所需的权限。

开始使用

  1. 开始使用 页面上,在数据流名称 字段中提供数据流的名称。数据流 ID 字段会自动填充。
  2. 提供实例用户账号详细信息 部分中,选择身份验证方法:

    • IAM 数据库身份验证:如果您的用户已分配 Identity and Access Management (IAM) 主账号 身份,则此选项 可用。如需了解详情,请参阅 IAM 主账号。 如果您选择此选项,则必须手动向用户授予 alloydbsuperuser 角色和 CREATEROLE 权限:

      1. 在 Google Cloud 控制台中,前往 AlloyDB for PostgreSQL 集群 页面。

      前往 AlloyDB for PostgreSQL

      1. 选择您的 AlloyDB for PostgreSQL 集群。
      2. 在导航菜单中,点击 AlloyDB for PostgreSQL Studio 并登录。
      3. 探索器 窗格中,为您的用户运行以下查询:
    GRANT alloydbsuperuser TO "USER_NAME";
    ALTER ROLE "USER_NAME" CREATEROLE;
    • 内置数据库身份验证:提供具有 alloydbsuperuser 角色的用户的用户名和 密码。如果您的用户没有 alloydbsuperuser 角色,请按照 IAM 数据库身份验证部分中所述的步骤手动授予该角色。 如果您选择内置数据库身份验证,请确保用户对要复制的表具有 GRANT 权限。
  3. 查看其他数据流详细信息,例如区域、加密和标签。 展开其他数据流详细信息 部分以应用更改(如果需要)。

  4. 点击继续

配置来源

  1. 配置来源 页面上,选择要从中复制数据的数据库。

  2. 所选对象 列表默认选择所有可用对象。列表中的对象是您具有流式传输所需权限的对象。如需更改所选对象,请修改列表中的选择。

  3. 查看高级数据流配置,例如回填模式和并发回填连接数上限。展开高级数据流配置 部分以应用更改(如果需要)。

  4. 点击继续

配置目标位置

  1. 配置目标位置 页面上,根据需要调整 BigQuery 目标位置设置。如需了解详情,请参阅 配置有关数据流的目标位置的信息

创建并启动数据流

  1. 点击创建并启动 以创建并启动数据流,或点击创建但不启动 以创建数据流并在 Datastream 中稍后启动。

  2. 您会收到有关自动为您执行的任务的通知:

    • Datastream 会创建所需的虚拟私有云资源,例如内部 IP 地址范围、子网和网络连接。
    • Datastream 会为 CDC 配置表,设置复制槽,为数据库中的所有表设置发布内容,并创建专用 Datastream 用户。
    • Datastream 会创建专用连接配置以及来源和目标连接配置文件。
  3. 确认您要创建并启动数据流。

监控数据流

您可以在 控制台 Google Cloud 中的源实例概览页面中监控基本数据流详细信息。该页面会显示数据流状态、数据流名称、目标 BigQuery 数据集和目标项目标识符等信息。

您还可以从概览页面执行启动或暂停数据流等操作。如需了解更精细的监控信息,请点击数据流名称以导航到 Datastream。

删除数据流

当您删除使用自动流程创建的数据流时,系统会自动删除某些资源,例如 PostgreSQL 复制槽。 不过,您需要手动删除以下资源:

  • 发布内容。发布内容是使用数据库管理员用户创建的,只能由其所有者(因此默认情况下是创建者)删除。
  • Datastream 读取者用户。
  • Datastream 来源和目标连接配置文件
  • 专用连接资源。
  • 在自动流程期间创建的所有网络资源,例如子网和网络连接。

后续步骤