引入和转换实时数据
Microsoft Fabric 中的 Real-Time Intelligence 提供了两种用于引入流数据的主要方法:使用事件流或直接将数据引入 Eventhouse 中的 KQL 数据库。
用于数据引入和转换的事件流
事件流是一种将实时事件引入 Fabric、转换事件,然后将数据路由到目标的方法。
该图像显示了 Eventstream 的三个主要组件:数据源自的 源 、应用于数据的 转换 (可选处理)以及发送已处理数据 的目标 。
想想事件流组件,如水管系统。 源是水龙头,转换是沿途的筛选器,你需要一个目标,如接收器或桶来收集和使用水。
接下来,让我们查看 Eventstream 的每个组件。
事件流的数据源
在 Fabric 中创建事件流后,可以将其连接到各种数据源。 可以从Microsoft源流式传输数据,还可以从非Microsoft平台引入数据,包括:
- Microsoft源,例如 Azure 事件中心、Azure IoT 中心、Azure 服务总线、数据库服务中的变更数据捕获(CDC)源等。
- Azure 事件,例如 Azure Blob 存储事件。
- Fabric 事件,例如对 Fabric 工作区中项的更改、OneLake 数据存储中的数据更改以及与 Fabric 作业关联的事件。
- 外部源,如 Apache Kafka、Google Cloud Pub/Sub 和 MQTT(消息队列遥测传输)(预览版)
提示
若要查看所有受支持的源,请参阅 支持的源。
事件流中的事件转换
源系统中的原始数据很少采用分析或存储所需的确切格式。 转换使数据有用且可作。 可以在事件流中流动时转换数据,以便在存储数据之前对其进行筛选、汇总和重塑。 可用转换的示例包括:SQL 代码、筛选器、管理字段、聚合、分组依据、展开和联接。
提示
有关支持的转换的详细信息,请参阅使用事件处理程序编辑器处理事件数据和使用 SQL 代码编辑器处理事件。
事件流中的数据目标
连续流式处理数据流,本质上是暂时的。 它需要立即处理和存储来保留其值。 事件流中的目标使实时数据处理可执行。 处理的数据可用于查询、报表、仪表板、警报、作或与其他系统的集成。 可以将数据流中的数据加载到以下目标:Eventhouse、Lakehouse、派生流、Fabric 激活器或自定义终结点中的 KQL 数据库。
提示
有关支持的目标的详细信息,请参阅 在事件流中添加和管理目标。
直接引入到 Eventhouse 中的 KQL 数据库
数据还可以直接引入到 Eventhouse 中的 KQL(Kusto 查询语言)数据库中。 数据引入源的一些示例包括:本地文件、Azure 存储、Amazon S3、Azure 事件中心、OneLake 等。 可以使用 连接器 或通过 KQL 数据库中的 “获取数据 ”选项来配置数据引入,如下图所示。
包含更新策略的 Eventhouse 中 KQL 数据库中的数据转换
将数据直接引入 KQL 数据库时,数据首先会登陆数据库中,然后可以使用 更新策略进行转换。 这与在流处理 期间 发生的事件流转换不同,在将数据路由到目标之前。
更新策略是在将新数据写入表时触发的自动化机制。 它们运行查询来转换引入的数据,并将结果保存到目标表。