LF Edge eKuiper 是物联网数据分析和流式计算引擎。它是一个通用的边缘计算服务或中间件,为资源有限的边缘网关或设备而设计。
eKuiper 设计的一个主要目标就是将在云端运行的实时流式计算框架(比如 Apache Spark,Apache Storm 和 Apache Flink 等)迁移到边缘端。eKuiper 参考了上述云端流式处理项目的架构与实现,结合边缘流式数据处理的特点,采用了编写基于源 (Source)
,SQL (业务逻辑处理)
, 目标 (Sink)
的规则引擎来实现边缘端的流式数据处理。
在物联网时代,制造业、石油和天然气、运输业的公司,以及那些构建智能城市和智能建筑的公司不断产生数十亿的流媒体数据。这些数据是海量的、连续的,如果不对其进行分析,难以发掘数据的价值。由于数据量和延迟要求,用传统的批处理方法处理流数据几乎是不可能的。流处理被用来分析流数据,而且由于延迟、数据安全和节省带宽成本的要求,流处理在边缘侧变得更加重要。
为了应对这些挑战,eKuiper提供了一个专为边缘计算设计的流处理引擎,具有以下优势:
它可以在各种物联网边缘使用场景中运行,一些常见的使用场景如下。
eKuiper规则的使用案例包括。
在eKuiper中,一项计算工作以[规则](rules.md)的形式呈现。该规则将流数据源定义为输入,通过SQL定义计算逻辑,将动作定义为输出。
一旦定义了一个规则,它将持续运行。它将不断从源头获取数据,根据SQL逻辑进行计算,并根据结果触发行动。
eKuiper是一个长期运行的服务,有多个计算作业(规则)同时运行。用户可以通过 REST API 、命令行和管理控制台界面提交和管理这些规则。
eKuiper被设计为在边缘侧运行,可部署在边缘网关或者在内存超过 128MB 的边缘设备上。在云端运行也无妨。目前,eKuiper只能以单实例模式运行。