首页
/ Ekuiper 2.1.0 版本发布:流处理引擎的重大升级

Ekuiper 2.1.0 版本发布:流处理引擎的重大升级

2025-06-30 05:20:02作者:余洋婵Anita

项目简介

Ekuiper 是一款轻量级的物联网边缘流处理引擎,由 LF Edge 基金会孵化。它能够在资源受限的边缘设备上高效运行,提供实时数据处理能力。Ekuiper 支持 SQL 语法进行流处理,使得开发者可以用熟悉的 SQL 方式处理数据流,大大降低了物联网边缘计算的开发门槛。

2.1.0 版本核心特性

增量窗口计算优化

2.1.0 版本引入了增量窗口计算功能,这是流处理领域的一项重要创新。传统流处理引擎在处理时间窗口时,需要保存窗口内的所有数据,当窗口较大时(如1小时窗口),会消耗大量内存资源。而增量窗口计算则能够在不保存原始数据的情况下,通过增量计算的方式持续更新窗口结果。

例如,计算1小时窗口的平均值时,传统方法需要保存1小时内的所有数据点,而增量窗口计算只需要维护当前的总和和数据点数量,大大降低了内存占用。这种优化特别适合资源受限的边缘计算场景。

数据处理能力增强

新版本在数据处理方面做了多项改进:

  1. sendNilField 选项:允许输出中包含空值字段,避免了CSV格式输出时因空值导致的键变化问题。
  2. 属性函数支持:现在可以在SQL查询和数据模板中使用属性函数,提供了更灵活的数据处理方式。
  3. reverse函数:新增的reverse函数可以方便地反转字符串或数组。
  4. 阻塞模式(实验性功能):在规则选项中增加了阻塞模式,当缓冲区满时不会丢弃数据而是阻塞等待,适用于对数据完整性要求高的场景。

输入输出系统升级

2.1.0 版本对IO系统进行了全面升级:

  1. EdgeX V4支持:完全适配EdgeX Foundry最新版本的数据格式和接口。
  2. MQTT 5支持:新增对MQTT 5协议的支持,包括属性配置等功能。
  3. 文件源改进:除了原有的周期性检查外,现在支持文件系统事件通知(inotify),能够更及时地发现文件变化。
  4. 二进制格式支持:新增对二进制格式数据的处理能力。
  5. Kafka增强:Kafka sink现在支持流模式和压缩功能。
  6. HTTP改进:HTTP源和接收器现在支持在认证请求中设置自定义头部。
  7. XML支持:新增对XML格式数据的解析和生成能力。
  8. 加密增强:加密器现在支持AES GCM模式。

运维监控改进

新版本在运维监控方面也有显著提升:

  1. 指标导出:支持将运行时指标导出,便于长期存储和分析。
  2. Prometheus指标增强:改进了Kafka接收器和SQL源的Prometheus指标,提供更详细的监控数据。
  3. 状态转储:在规则停止前会自动转储状态,便于故障恢复和调试。

性能优化

2.1.0 版本在性能方面做了多项优化:

  1. 窗口GC优化:改进了窗口垃圾回收机制,提升了处理性能。
  2. 别名引用计算开关:可以控制是否进行别名引用计算,在特定场景下提升性能。
  3. SQL源优化:减少了热点路径的日志输出,降低了I/O开销。

兼容性说明

需要注意的是,2.1.0 版本有一些不兼容的变更:

  1. EdgeX支持:现在仅支持V4版本,不再兼容旧版EdgeX。
  2. 文件源:移除了parallel属性配置。
  3. Prometheus指标:将标签"instance"重命名为"op_instance",以避免潜在的命名冲突。

总结

Ekuiper 2.1.0 版本在流处理能力、IO系统支持和运维监控等方面都有显著提升,特别是增量窗口计算功能的引入,使得在资源受限的边缘设备上处理大时间窗口成为可能。这些改进进一步巩固了Ekuiper作为轻量级边缘流处理引擎的领导地位,为物联网边缘计算提供了更加强大和灵活的数据处理能力。

登录后查看全文
热门项目推荐
相关项目推荐