Microsoft Fabric 事件流概述

可以使用 Microsoft Fabric Real-Time Intelligence 中的事件流功能将实时事件引入 Fabric、转换事件,然后将其路由到各种目标,而无需编写任何代码。 创建事件流,将事件数据源添加到流中,可以选择添加转换以转换事件数据,然后将数据路由到支持的目标。

此外,借助可用于事件流的 Apache Kafka 终结点,可以使用 Kafka 协议发送或使用实时事件。

将事件引入 Fabric

事件流提供源连接器,用于从各种源中提取事件数据。 在创建事件流时启用 增强功能 时,可以使用更多源。

来源 说明
Azure 数据资源管理器(预览版) 如果你有 Azure 数据资源管理器数据库和表,可以使用 Eventstream 将数据从表引入到 Microsoft Fabric。
Azure 事件中心 如果你有 Azure 事件中心,可以使用 Eventstream 将事件中心数据引入 Microsoft Fabric。
Azure 事件网格(预览版) 如果你有 Azure 事件网格命名空间,可以使用 Eventstream 将 MQTT 或非 MQTT 事件数据引入 Microsoft Fabric。
Azure 服务总线(预览版) 可以使用 Eventstream 将数据从 Azure 服务总线队列或主题的订阅引入到 Microsoft Fabric 中。
Azure IoT 中心 如果你有 Azure IoT 中心,可以使用 Eventstream 将 IoT 数据引入 Microsoft Fabric。
自定义终结点(即标准功能中的自定义应用) 自定义终结点功能让你的应用程序或 Kafka 客户端可以使用连接字符串连接到 Eventstream,从而顺利地将流数据引入到 Eventstream 中。
Azure IoT 操作 将 Azure IoT作配置为使用事件流自定义终结点将实时数据直接发送到 Microsoft Fabric Real-Time Intelligence(支持Microsoft Entra ID 或 SASL 身份验证)。
示例数据 可以选择 自行车黄色出租车股市公共汽车S&P 500 公司股票语义模型日志 作为示例数据源,以在设置事件流时测试数据引入。
实时天气(预览版) 可以将实时天气源添加到 Eventstream,流式传输来自不同位置的实时天气数据。
Azure SQL 数据库变更数据捕获 (CDC) 通过使用 Azure SQL 数据库 CDC 源连接器,你可以捕获 Azure SQL 数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。
PostgreSQL 数据库 CDC 通过使用 Postgre SQL 数据库变更数据捕获 (CDC) 源连接器,你可以捕获 PostgreSQL 数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。
MongoDB CDC (预览版) 用于 Microsoft Fabric 事件流的 MongoDB CDC 源连接器捕获 MongoDB 中的数据初始快照。 可以指定要监视的数据库集合,事件流将实时跟踪并记录这些集合中的文档变更。
MySQL 数据库 CDC 通过使用 Azure MySQL Database 变更数据捕获 (CDC) 源连接器,你可以捕获 Azure Database for MySQL 数据库中当前数据的快照。 你可以指定要监视的表,事件流将记录对表进行的任何未来的行级更改。
Azure Cosmos DB CDC 通过使用 Microsoft Fabric 事件流的 Azure Cosmos DB 变更数据捕获 (CDC) 源连接器,你可以捕获 Azure Cosmos DB 数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。
虚拟机 (VM) 上的 SQL Server 数据库 (DB) CDC 用于 Fabric 事件流的 SQL Server on VM DB (CDC) 源连接器可以捕获 VM 上 SQL Server 数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。
Azure SQL 托管实例 CDC 通过用于 Microsoft Fabric 事件流的 Azure SQL 托管实例 CDC 源连接器,你可以捕获 SQL 托管实例数据库中当前数据的快照。 然后,连接器将监视并记录对此数据进行的任何未来的行级别更改。
Fabric 工作区项事件 Fabric 工作区项事件是对 Fabric 工作区进行更改时发生的离散 Fabric 事件。 这些更改包括创建、更新或删除 Fabric 项。 使用 Fabric 事件流,可以捕获这些 Fabric 工作区事件,转换这些事件,并将其路由到 Fabric 中的各种目标,以作进一步分析。
Fabric OneLake 事件 OneLake 事件允许你订阅 OneLake 中文件和文件夹的更改,然后实时响应这些更改。 使用 Fabric 事件流,可以捕获这些 OneLake 事件、转换事件并将其路由到 Fabric 中的各种目标,以便进一步分析。 在 Fabric 事件流中无缝集成 OneLake 事件可让你更灵活地监视和分析 OneLake 中的活动。
Fabric 作业事件 通过作业事件,可以订阅 Fabric 运行作业时生成的更改。 例如,可以在刷新语义模型、运行计划管道或运行笔记本时对更改做出反应。 其中每个活动都可以生成相应的作业,这进而又会生成一组相应的作业事件。 使用 Fabric 事件流,可以捕获这些作业事件、转换事件并将其路由到 Fabric 中的各种目标,以便进一步分析。 这种在 Fabric 事件流中对作业事件的无缝集成,给予你对作业中活动进行监视和分析的更大灵活性。
Azure Blob 存储事件 当客户端创建、替换或删除 Blob 时,将触发 Azure Blob 存储事件。 连接器允许你将 Blob 存储事件链接到实时中心的 Fabric 事件。 你可以将这些事件转换为连续数据流,并在将其路由到 Fabric 中的各种目标之前对其进行转换。
Google Cloud Pub/Sub Google Pub/Sub 是一种消息传递服务,可用于发布和订阅事件流。 你可以将 Google Pub/Sub 作为源添加到事件流,以捕获、转换实时事件并将其路由到 Fabric 中的各种目标。
Amazon Kinesis 数据流 Amazon Kinesis 数据流是一种可大规模伸缩、高度持久的数据引入和处理服务,针对流式传输数据进行了优化。 通过将 Amazon Kinesis 数据流作为事件流中的源集成,可以在将实时数据流路由到 Fabric 中的多个目标之前对其进行无缝处理。
适用于 Apache Kafka 的 Confluent Cloud Confluent Cloud for Apache Kafka 是一个流式处理平台,它使用 Apache Kafka 提供强大的数据流式处理和处理功能。 通过将 Confluent Cloud for Apache Kafka 集成到您的事件流中作为源,可以无缝处理实时数据流,然后将其路由到 Fabric 的多个目标。
Apache Kafka(预览版) Apache Kafka 是一个开源分布式平台,用于构建可缩放的实时数据系统。 通过将 Apache Kafka 作为事件流中的源集成,可以无缝地从 Apache Kafka 引入实时事件,并在将事件路由到 Fabric 中的多个目标之前对其进行处理。
Amazon MSK Kafka Amazon MSK Kafka 是一种完全托管的 Kafka 服务,可简化设置、缩放和管理。 通过将 Amazon MSK Kafka 作为事件流中的源集成,可以无缝地将 MSK Kafka 中的实时事件引入其中,并在将事件路由到 Fabric 中的多个目标之前对其进行处理。 
MQTT (预览版) Microsoft Fabric 事件流支持连接到 MQTT 代理,其中 MQTT 代理中的消息可引入到 Fabric Eventstream 中,并路由到 Fabric 中的各种目标。 
Solace PubSub+ (预览版) Microsoft Fabric 事件流支持连接到 Solace PubSub+,其中 Solace PubSub+ 中的消息可引入到 Fabric 事件流中,并路由到 Fabric 中的各种目标。 

使用无代码体验处理事件

事件流中的端到端数据流关系图可让你全面了解数据流和组织。

事件处理器编辑器是一个拖放界面。 这是在不编写任何代码的情况下创建事件数据处理、转换和路由逻辑的直观方法。

转变 说明
滤波器 使用此转换根据输入中字段的值筛选事件。 根据数据类型(数值或文本),转换会保留与所选条件匹配的值,如 is nullis not null
管理字段 使用此转换可添加、删除、更改(数据类型)或重命名来自输入或其他转换的字段。
聚合 使用此转换计算每次新事件在一段时间内发生的聚合(总和、最小值、最大值或平均值)。 此操作还允许重命名这些计算列,并根据数据中的其他维度筛选或切分聚合。 在同一转换中可以有一个或多个聚合。
按组显示 使用此转换计算特定时间范围内所有事件的聚合。 可以按一个或多个字段中的值进行分组。 就像 聚合 转换一样,它允许重命名列,但它为聚合提供了更多选项,并包括时间窗口更复杂的选项。 与 聚合一样,可以为每个转换添加多个聚合。
Union 使用此转换连接两个或多个节点,并将具有共享字段(具有相同名称和数据类型)的事件添加到一个表中。 不匹配的字段将被删除,不包含在输出中。
扩大 使用此转换可为数组中的每个值创建新行。
加入 使用此转换可以根据两个流之间的匹配条件合并数据。

如果在创建事件流时启用了 增强功能 ,则所有目标都支持转换作。 派生流充当某些目标的中间桥,例如自定义终结点或 Fabric 激活器)。 如果未启用 增强功能,则转换操作仅适用于 Lakehouse 和 eventhouse(事件引入前的处理)目标。

将事件路由到目标

Fabric 事件流功能支持将数据发送到以下受支持的目标。

目标 说明
自定义终结点(标准功能中的自定义应用) 使用此目标可将实时事件路由到自定义终结点。 你可以将自己的应用程序连接到事件流,并实时使用事件数据。 如果要将实时数据发送到 Microsoft Fabric 外部的系统,则此目标非常有用。
Eventhouse 通过此目标,可以将实时事件数据引入事件屋,可以使用强大的 Kusto 查询语言(KQL)来查询和分析数据。 借助事件屋中的数据,可以更深入地了解事件数据,并创建丰富的报表和仪表板。 可以选择两种引入模式:直接引入引入前的事件处理
Lakehouse 此目标使你能够在将实时事件引入湖屋之前转换它们。 实时事件将转换为 Delta Lake 格式,然后存储在指定的湖仓一体表中。 此目标支持数据仓库应用场景。
派生流 在向事件流添加流操作(如 筛选器管理字段)后,可以创建这种专用的目标类型。 派生流表示流处理后转换的默认流。 可以将派生流路由到 Fabric 中的多个目标,并在实时中心查看派生流。
Fabric Activator(预览版) 可以使用此目标将实时事件数据直接连接到 Fabric 激活器。 激活器是一种智能代理,其中包含连接到数据、监视条件和作所需的所有信息。当数据达到特定阈值或匹配其他模式时,激活器会自动采取适当的作,例如提醒用户或启动 Power Automate 工作流。

可以在事件流中附加多个目的地,以便能够同时从事件流中接收数据,并且不会相互干扰。

显示具有增强功能的事件流项概述的屏幕截图。

注意

建议至少使用具有四个容量单位(SKU:F4)的 Fabric 事件流功能。

Apache Kafka on Fabric 事件流

Fabric 事件流功能提供了 Apache Kafka 终结点,因此可以通过 Kafka 协议连接并消费流事件。 如果应用程序已使用 Apache Kafka 协议发送或接收具有特定主题的流事件,则可以轻松地将其连接到事件流。 只需更新连接设置即可使用事件流中提供的 Kafka 终结点。

Fabric 事件流功能与 Azure 事件中心(完全托管的云原生服务)相关联。 创建事件流时,会自动预配事件中心命名空间。 事件中心将分配到默认流,而无需任何预配配置。 若要详细了解 Azure 事件中心中与 Kafka 兼容的功能,请参阅 什么是适用于 Apache Kafka 的 Azure 事件中心?

若要详细了解如何获取用于将事件发送到事件流的 Kafka 终结点详细信息,请参阅 向事件流添加自定义终结点或自定义应用源。 有关从事件流使用事件的信息,请参阅 向事件流添加自定义终结点或自定义应用目标

限制

Fabric 事件流具有以下常规限制。 在处理事件流之前,请查看这些限制,确保它们符合你的要求。

限制 价值
最大消息大小 1 MB
事件数据的最长保留期 90 天
事件传递保证 至少一次