发现 Azure 事件中心
Azure 事件中心是云中的一种原生数据流式处理服务,它能够以较低的延迟每秒将数百万个事件从任何源流式传输到任何目标。 事件中心与 Apache Kafka 兼容。 它使你无需进行任何代码更改即可运行现有的 Kafka 工作负载。
使用事件中心,你可以实时引入、缓冲、存储和处理流,以获取具有操作性的见解。 事件中心使用分区的使用者模型。 它可让多个应用程序同时处理流,并允许你控制处理速度。 事件中心还与 Azure Functions 集成,以实现无服务器体系结构。
有广泛的生态系统可用于行业标准 AMQP 1.0 协议。 这些 SDK 以 .NET、Java、Python 和 JavaScript 等语言提供,因此你可以从事件中心开始处理流。 所有支持的客户端语言提供低级别集成。
关键功能
在以下部分中了解 Azure 事件中心的主要功能。
Azure 事件中心上的 Apache Kafka
事件中心是一个多协议事件流式处理引擎,它原生支持高级消息排队协议 (AMQP)、Apache Kafka 和 HTTPS 协议。 因为它支持 Apache Kafka,所以你无需进行任何代码更改,即可将 Kafka 工作负载引入事件中心。 无需设置、配置或管理你自己的 Kafka 群集,也不需要使用非 Azure 原生的 Kafka 即服务产品。
事件中心内的架构注册表
事件中心内的 Azure 架构注册表提供了一个集中式存储库,用于管理事件流式处理应用程序的架构。 架构注册表随每个事件中心命名空间免费提供。 它与 Kafka 应用程序或基于事件中心 SDK 的应用程序集成。
使用流分析实时处理流事件
事件中心与 Azure 流分析集成,以实现实时流处理。 借助内置的无代码编辑器,可以使用拖放功能轻松开发流分析作业,无需编写任何代码。
或者,开发人员可以使用基于 SQL 的流分析查询语言来执行实时流处理,并利用各种函数来分析流数据。
关键概念
事件中心包含以下关键组件:
- 生成者应用程序:这些应用程序可以使用事件中心 SDK 或任何 Kafka 生成者客户端将数据引入事件中心。
- 命名空间:用于一个或多个事件中心或 Kafka 主题的管理容器。 管理任务(例如分配流式处理容量、配置网络安全、启用异地灾难恢复)是在命名空间级别处理的。
- 事件中心/Kafka 主题:在事件中心内,可以将事件组织到事件中心或 Kafka 主题中。 它是仅进行追加的分布式日志,可以包含一个或多个分区。
- 分区:它们用来缩放事件中心。 他们就像高速公路里的车道。 如果需要更多流式处理吞吐量,则可以添加更多分区。
- 使用者应用程序:这些应用程序可以通过在事件日志中查找数据以及维护使用者偏移量来使用数据。 使用者可以是 Kafka 使用者客户端,也可以是事件中心 SDK 客户端。
- 使用者组:此使用者实例逻辑组从事件中心或 Kafka 主题中读取数据。 它使多个使用者能够按照自己的节奏及其偏移量独立读取事件中心中的相同流数据。