将 PostgreSQL 数据库 CDC 源添加到事件流(预览版)

本文介绍如何将 PostgreSQL 数据库变更数据捕获 (CDC) 源添加到事件流。

通过用于 Microsoft Fabric 事件流的 Postgre SQL 数据库变更数据捕获 (CDC) 源连接器,你可以捕获 PostgreSQL 数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。 在事件流中捕获更改后,可以实时处理此 CDC 数据,并将其发送到 Fabric 内的不同目标,以进一步处理或分析。

重要

Fabric 事件流的增强功能目前以预览版方式提供。

注意

工作区容量的以下区域不支持此源:美国西部 3瑞士西部

先决条件

注意

一个事件流的源和目标的最大数量为 11

在 Azure Database for PostgreSQL 中启用 CDC

要启用 Azure Database for PostgreSQL 灵活服务器中的 CDC,请执行以下步骤:

  1. 在 Azure 门户中 Azure Database for PostgreSQL 灵活服务器页上的导航菜单中,选择“服务器参数”。

  2. 在“服务器参数”页上:

    • 将 "wal_level" 设置为“逻辑”
    • 将 "max_worker_processes" 更新为至少 "16"

    为灵活服务器部署启用 CDC 的屏幕截图。

  3. 保存所做的更改并重启服务器。

  4. 确认 Azure Database for PostgreSQL 灵活服务器实例允许公用网络流量。

  5. 通过运行以下 SQL 语句授予管理员用户复制权限。 如果要使用其他用户帐户连接 PostgreSQL DB 来提取 CDC,请确保用户是表所有者

    ALTER ROLE <admin_user_or_table_owner_user> WITH REPLICATION;
    

添加 Azure Database for PostgreSQL CDC 作为源

  1. 选择“事件流”以创建新的事件流。 确保已启用“增强功能(预览版)”选项。

    创建新事件流的屏幕截图。

  2. 在下一个屏幕上,选择“添加外部源”

    选择“添加外部源”的屏幕快照。

配置和连接到 Azure Database for PostgreSQL CDC

  1. 在“选择数据源”屏幕上,选择 "Azure DB for PostgreSQL (CDC)"

    选择 PostgreSQL DB (CDC) 的屏幕截图。

  2. 在“连接”页上,选择“新建连接”

    显示 Azure PostgreSQL 数据库的“连接”页的屏幕截图,其中突出显示了“新建连接”链接。

  3. 在“连接设置”部分中,输入以下信息。

    • 服务器:PostgreSQL 数据库的服务器地址,例如 my-pgsql-server.postgres.database.azure.com

    • 数据库:数据库名称,例如 my_database

      显示 Azure PostgreSQL 数据库连接器的“连接设置”部分的屏幕截图。

  4. 向下滚动,然后在“连接凭据”部分中,执行以下步骤。

    1. 对于“连接名称”,为连接输入名称。

    2. 对于“身份验证类型”,选择“基本”

      注意

      目前,Fabric 事件流仅支持“基本”身份验证。

    3. 输入数据库的“用户名”和“密码”

    4. 选择“连接” 。

      显示 Azure PostgreSQL 数据库连接器的“连接凭据”部分的屏幕截图。

  5. 现在,在“连接”页上,执行以下步骤:

    1. 对于“表”,输入表名称。

    2. 对于“端口”,输入端口号或保留默认值:5432。

    3. 选择页面底部的“下一步”。

      显示为 Azure PostgreSQL 数据库连接器填充了“连接”页的屏幕截图。

  6. 在“查看并创建”屏幕上,查看摘要,然后选择“添加”

    显示为 Azure PostgreSQL 数据库连接器填充了“查看并创建”页的屏幕截图。

可以在“编辑模式”下看到添加到事件流的 PostgreSQL 数据库 CDC 源。

在“编辑视图”中流式处理 PostgreSQL DB CDC 源的屏幕截图。

要实施这个新添加的 PostgreSQL DB CDC 源,请选择“发布”。 完成这些步骤后,你的 PostgreSQL DB CDC 源可在“实时视图”中进行可视化。

在“实时视图”中流式处理 PostgreSQL DB CDC 源的屏幕截图。

其他连接器: