DEV.co
Open-Source Databases · lf-edge

ekuiper

eKuiper is a lightweight, open-source stream processing engine designed for IoT edge devices. It enables real-time data analytics and rule-based processing at the edge using SQL or graph-based rules, reducing latency and bandwidth costs.

Source: GitHub — github.com/lf-edge/ekuiper
1.7k
GitHub stars
456
Forks
Go
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorylf-edge/ekuiper
Ownerlf-edge
Primary languageGo
LicenseApache-2.0 — OSI-approved
Stars1.7k
Forks456
Open issues43
Latest releasev2.4.0 (2026-05-26)
Last updated2026-07-06
Sourcehttps://github.com/lf-edge/ekuiper

What ekuiper is

Go-based event stream processor (~4.5 MB core) supporting SQL queries, 60+ functions, multiple time/count windows, and extensibility via Go/Python plugins for sources, sinks, and UDFs. Runs on constrained hardware (ARM, x86, PPC) and integrates with EMQX, Kubernetes frameworks (KubeEdge, OpenYurt, K3s, Baetyl), and EdgeX.

Quickstart

Get the ekuiper source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/lf-edge/ekuiper.gitcd ekuiper# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Industrial IoT (IIoT) Real-Time Analytics

Process production line sensor data at the edge to detect anomalies, filter noise, and reduce upstream traffic. Typical deployment on industrial gateways or MEC servers.

Connected Vehicle (IoV) Data Filtering

Analyze CAN bus data in-vehicle or at edge gateways; aggregate/filter before sending to cloud. Reduces bandwidth and latency-sensitive decisions.

Smart Energy & Renewable Monitoring

Real-time aggregation and analysis of wind turbine or energy storage sensor streams with windowing and joins; local alerting without cloud round-trip.

Implementation considerations

  • Verify target hardware compatibility (ARM/x86/PPC) and OS support (Linux variants, OpenWrt, macOS, Docker); cross-compilation may be needed.
  • Plan plugin development in Go or Python for custom sources/sinks/UDFs; ensure build toolchain and runtime availability in deployment environment.
  • Design rule lifecycle: rules can be managed via CLI, REST API, or Kubernetes ConfigMaps; choose governance model early.
  • Monitor memory and CPU per-rule (300–500 KB per rule observed); stress-test with expected rule count and message throughput before production.
  • Integrate with management dashboard (EMQX-managed or open-source ekuiper-manager) for operational visibility; REST API enables custom tooling.

When to avoid it — and what to weigh

  • Complex Machine Learning Pipelines — While eKuiper supports UDF functions for ML invocation, it is not a feature-complete ML platform. For heavy model serving, use dedicated inference engines.
  • High-Throughput Cloud Analytics — eKuiper is edge-focused. For cloud-scale stream processing (millions of events/sec), Apache Flink, Kafka Streams, or cloud-native services are more suitable.
  • Strongly Consistent Distributed State — eKuiper is single-node or lightly distributed. Applications requiring strict ACID semantics or cross-node transactional consistency should use databases or enterprise platforms.
  • Minimal Resource Constraints Are Non-Negotiable — While compact (~10 MB runtime), some embedded systems (sub-10 MB total memory) may find eKuiper still too large. Evaluate on target hardware.

License & commercial use

Licensed under Apache 2.0, a permissive open-source license. Permits commercial use, modification, and distribution with attribution and warranty disclaimer.

Apache 2.0 allows commercial use without royalty. No vendor lock-in or closed-source restrictions. Typical integration: deploy as embedded component or edge service in commercial IoT/IIoT products. Verify any plugin/extension licenses independently. Community support via Slack and GitHub; commercial support availability requires review.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

eKuiper runs on untrusted edge devices; no claims of end-to-end encryption or authentication are detailed in provided materials. Require review of: authentication/authorization for REST API and CLI, TLS for MQTT/broker connections, plugin sandboxing, and compliance needs (e.g., automotive, medical). Data processed at edge may be sensitive; isolation per rule or tenant is not clearly specified.

Alternatives to consider

Apache Flink

General-purpose distributed stream processor with stronger consistency guarantees and larger feature set, but heavier footprint (~100+ MB); better for cloud/on-prem scale.

Node-RED

Visual, low-code flow editor with similar graph-based rule paradigm and lighter weight; lacks SQL interface and advanced analytics functions; more workflow than analytics-focused.

Kafka Streams / Apache Storm

Production stream processing frameworks with distributed clustering and fault tolerance; require more infrastructure and resources; suited for cloud or large-scale deployments.

Software development agency

Build on ekuiper with DEV.co software developers

Evaluate eKuiper for your IoT/IIoT use case. Start with a 5-minute Docker quickstart, review integration with your brokers (EMQX, EdgeX, Kubernetes), and test plugin requirements. Contact us for deployment guidance.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

ekuiper FAQ

Can eKuiper run on a Raspberry Pi?
Yes. Documented support for ARM 32/64-bit, with performance benchmarks showing 12k msg/sec on Raspberry Pi 3B+ using ~20 MB memory and 70% CPU.
How do I add custom data sources or transformations?
Via plugins written in Go or Python. eKuiper provides plugin interfaces for sources, sinks, and UDF functions (e.g., AI/ML invocation). Plugins are loaded at runtime.
Is eKuiper secure for production IoT deployments?
eKuiper is production-deployed in IIoT/IoV scenarios, but security is use-case dependent. Review API authentication, broker TLS, plugin isolation, and data handling for compliance with your threat model. No security audit details provided.
How many rules can eKuiper handle?
Benchmarked at 8,000 rules with shared sources handling 150k+ msg/sec total on 2-core 4 GB systems. Per-rule memory ~400–500 KB. Actual limits depend on rule complexity and hardware.

Custom software development services

Adopting ekuiper is usually one piece of a larger software development effort. As a software development agency, DEV.co provides software development services and web development expertise — pairing senior software developers and web developers with your team to design, build, and operate open-source databases software in production.

Ready to Deploy Edge Analytics?

Evaluate eKuiper for your IoT/IIoT use case. Start with a 5-minute Docker quickstart, review integration with your brokers (EMQX, EdgeX, Kubernetes), and test plugin requirements. Contact us for deployment guidance.