Esper (software)

Esper is an open-source Java-based software product for Complex event processing (CEP) and Event stream processing (ESP), that analyzes series of events for deriving conclusions from them.

Esper extends the SQL-92 standard for its engine and enterprise framework, providing Aggregate function, Pattern matching, event windowing and joining. Esper implements Event-driven programming and event-driven architecture.

Esper was created in 2006 by EsperTech Inc. It offers a Domain-specific language for processing events called Event Processing Language (EPL). EPL is a Declarative programming language for analyzing time-based event data and detecting situations as they occur.

Esper is a Java-based application but has been ported to the C# programming language and is available for the .NET Framework under the name NEsper.

EsperTech Inc. provides Esper Enterprise Edition with enterprise-ability features.

Example
This example illustrates a simple EPL query that outputs a row immediately when within a sliding window of 3 minutes the number of order events reaches 5 or more events.

Related systems

 * Rapide (Stanford)
 * StreamSQL: StreamSQL is a query language that extends SQL with the ability to process real-time data streams.