本文介绍如何将 Azure SQL 托管实例变更数据捕获 (CDC) 源添加到事件流。
通过用于 Microsoft Fabric 事件流的 Azure SQL 托管实例 CDC 源连接器,你可以捕获 SQL 托管实例数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。 在事件流中捕获更改后,可以实时处理此 CDC 数据,并将其发送到 Fabric 内的不同目标,以进一步处理或分析。
注意
工作区容量的以下区域不支持此源:美国西部 3、瑞士西部。
先决条件
- 使用参与者或更高权限在 Fabric 容量许可证模式(或)试用许可证模式下访问工作区。
- 一个正在运行的 Azure SQL 托管实例数据库。
- Azure SQL 托管实例必须启用公共终结点,并且不能在虚拟网络中启用防火墙或保护。
- 通过运行存储过程
sys.sp_cdc_enable_db
在 Azure SQL 托管实例中启用 CDC。 有关详细信息,请参阅启用和禁用变更数据捕获。
注意
一个事件流的源和目标的最大数量为 11。
在 Azure SQL 托管实例中启用公共终结点
转到 Azure 门户,打开 Azure SQL 托管实例,选择“网络”并启用公共终结点。
在 Azure SQL 托管实例中启用 CDC
为数据库启用 CDC。
EXEC sys.sp_cdc_enable_db;
使用访问控制角色选项为表启用 CDC。 在此示例中,
MyTable
是 SQL 表的名称。EXEC sys.sp_cdc_enable_table @source_schema = N'dbo', @source_name = N'MyTable', @role_name = NULL GO
查询成功执行后,就在 Azure SQL 托管实例中启用了 CDC。
将 Azure SQL 托管实例 CDC 添加为源
在“Fabric 实时智能”中,选择“Eventstream” 以创建新的事件流。
在下一个屏幕上,选择“添加外部源”。
配置并连接到 Azure SQL 托管实例 CDC
在“连接”页上,选择“新建连接”。
在“连接设置”部分中,为 VM 上的 SQL Server 输入以下值:
向下滚动,然后在“连接凭据”部分中,执行以下步骤。
对于“连接名称”,为连接输入名称。
对于“身份验证类型”,选择“基本”。
注意
目前,Fabric 事件流仅支持“基本”身份验证。
为 VM 上的 SQL Server 输入“用户名”和“密码”。
在页面底部,选择“连接”。
现在,在 “连接 ”页上,选择“ 所有表 ”或 “输入表名称”。 如果选择后者,请使用以逗号分隔的完整表标识符列表(
schemaName.tableName
)或有效的正则表达式指定表。 例如:- 使用
dbo.test.*
选择名称以dbo.test
开头的所有表。 - 用
dbo\.(test1|test2)
选择dbo.test1
和dbo.test2
。
可以使用逗号混合这两种格式。 最多可以输入 100 个表,如果直接使用完整表标识符,则每个表名(包括架构名称)限制为 128 个字符。
- 使用
可以展开 “高级设置 ”以配置 十进制处理模式,该模式指定连接器如何处理
DECIMAL
和NUMERIC
列值:-
Precise
:表示使用精确小数类型(例如 JavaBigDecimal
)的值,以确保数据表示形式的完全精度和准确性。 -
Double
:将值转换为双精度浮点数。 这可以提高可用性和性能,但可能会导致精度损失。 -
String
:将值编码为格式化字符串。 这使得它们在下游系统中易于使用,但会丢失有关原始数值类型的语义信息。
-
选择下一步。
在“查看 + 连接”页上,查看摘要,然后选择“连接”。
查看更新的事件流
可以在编辑模式下看到添加到事件流中的 Azure SQL MI DB (CDC) 源。
若要实现新添加的 Azure SQL 托管实例源,请选择“发布”。 完成这些步骤后,Azure SQL 托管实例源可在实时视图中进行可视化。
相关内容
其他连接器: