Siddhi
What it is
Siddhi is a free, open-source stream and complex event processing engine for building event-driven applications. It processes incoming data with Siddhi Streaming SQL, a SQL-like language that can consume, transform, integrate, and publish events. Logic can be written in a source editor or graphical query editor, with an event simulator for working through applications. Documented processing includes filtering, preprocessing, event-time and time windows, aggregations, pattern detection, sequences, rules, and online or pretrained machine-learning models. Siddhi connects with Kafka, NATS, RabbitMQ, JMS, MQTT, HTTP, gRPC, Amazon SQS, Google Pub/Sub, email, files, and WebSocket. It supports JSON, XML, Avro, Protobuf, text, binary, key-value, and CSV formats, plus numerous databases and data stores. Deployment options include Java or Python libraries, bare-metal or virtual-machine microservices, Docker, and Kubernetes. Siddhi is self-hosted and licensed under Apache License 2.0. The project says future releases will be made as part of WSO2 Enterprise Integrator.
For and against
For
- Free and open-source under Apache License 2.0
- Siddhi Streaming SQL with graphical and text editors
- Connectors for messaging, databases, services, and files
- Supports event windows, patterns, rules, and aggregations
- Runs from libraries to Kubernetes deployments
Against
- Self-hosted deployment requires your own infrastructure
- Documentation specifies JDK 8 or 11 execution modes
- PySiddhi download lists macOS and Linux support
The verdict
Siddhi provides a broad event-processing toolkit with SQL-like logic, many connectors, and several deployment models. Its self-hosted design is suited to teams managing their own runtime and integrations.
Who it suits
Siddhi suits developers building event-driven applications, real-time analytics, data integration, notification, or rule-processing systems. It fits teams comfortable with self-hosted Java, Python, Docker, or Kubernetes deployments.
On the record
- Analytics and rules
- Features include event-window and time-based aggregation, complex event patterns and sequences, rule processing, and online or pretrained machine-learning models.siddhi.io · read 5 Oct 2026
- Connectors
- The site lists integrations with messaging systems including NATS, Kafka, and JMS, plus databases, HTTP and gRPC services, filesystems, and email.siddhi.io · read 5 Oct 2026
- Data formats
- The site lists JSON, XML, Avro, Protobuf, text, binary, key-value, and CSV message formats.siddhi.io · read 5 Oct 2026
- Data stores
- Listed data-store integrations include MySQL, Oracle, MSSQL, Postgre, Redis, MongoDB, HBase, Cassandra, Solr, and Elasticsearch.siddhi.io · read 5 Oct 2026
- Deployment
- Siddhi can run embedded as a Java or Python library, as a microservice on bare metal or a VM, in Docker, or on Kubernetes.siddhi.io · read 5 Oct 2026
- Deployment automation
- The site describes test framework support for unit, integration, and black-box tests as part of a CI/CD workflow.siddhi.io · read 5 Oct 2026
- Editor
- Siddhi Editor supports graphical drag-and-drop and source-based query building, event-flow visualization, syntax highlighting, auto-completion, error handling, and event simulation.siddhi.io · read 5 Oct 2026
- Formats and sources
- The features documentation lists JSON, XML, Avro, Protobuf, text, binary, key-value, and CSV formats, along with sources including RabbitMQ, MQTT, Amazon SQS, Google Pub/Sub, and WebSocket.siddhi.io · read 5 Oct 2026
- Integrations
- Supported event sources and destinations listed include Kafka, NATS, RabbitMQ, HTTP, gRPC, JMS, MQTT, Amazon SQS, Google Pub/Sub, email, files, and WebSocket.siddhi.io · read 5 Oct 2026
- License
- The Siddhi license page identifies Apache License 2.0.siddhi.io · read 5 Oct 2026
- Operating systems
- The download page lists MacOS and Linux as supported platforms for PySiddhi 5.1.0.siddhi.io · read 5 Oct 2026
- Processing features
- The features documentation lists event filtering and preprocessing, time and event windows, aggregations, pattern detection, and rule processing.siddhi.io · read 5 Oct 2026
- Product
- Siddhi is an open source stream and complex event processing engine for building event-driven applications.siddhi.io · read 5 Oct 2026
- Project status
- The homepage says Siddhi has been integrated into WSO2 Enterprise Integrator and future releases will be made as part of EI.siddhi.io · read 5 Oct 2026
- Query language
- Processing logic can be written in Siddhi Streaming SQL through a graphical editor or source editor.siddhi.io · read 5 Oct 2026
- Reliability
- The homepage claims zero event loss and exactly-once event processing.siddhi.io · read 5 Oct 2026
- Requirements
- The documentation specifies 128 MB minimum memory, recommends 500 MB and two cores, and lists JDK 8 or 11 for execution modes.siddhi.io · read 5 Oct 2026
- Security
- WSO2 asks vulnerability reports to be sent privately to its security mailing list and says initial response time will be under one hour.siddhi.io · read 5 Oct 2026