Home > Complex Event Processing > ETALIS – A new Declarative CEP Rule Language

ETALIS – A new Declarative CEP Rule Language

June 2nd, 2010

Many new developments in the CEP space seems to be searching for other types of languages than the popular streaming extension to SQL. 

ETALIS is one of them, it is an open source engine for event processing based on the Logic Programming paradigm.

ETALIS engine implements a corresponding “ETALIS Language for Events” that is a rule-based declarative language. ETALIS is a research prototype created by Darko Anicic at FZI Forschungszentrum Informatik an der Universität Karlsruhe.

The ETALIS project is founded on novel algorithms, and implementing event-driven backward chaining rules. The rules enable derivation of complex events in a data-driven fashion. Apart from event processing, ETALIS features strong inference capabilities as well as easy integration with databases and transactions.

Future plans include to develop some unique features of ETALIS that can be particularly efficient or easy implemented in a *logic-based* EP.

For instance, event-driven workflows that are dynamically modified while executing can be one area of research. Workflow modifications, being done on-the-fly, need also to be verified at run time (as changes can disable workflow executions or make it infinite though workflows featured the finite termination property). This is one example where a logic approach can help. Event-driven dynamic workflows are useful in many areas including edBPM, Cloud Computing etc.

Another use of ETALIS logic approach in EP is related to event revision and world of database transactions. ETALIS can handle transactions in a logic framework. When transactions are mixed with event processing, event revision become necessary. Transaction are executed in the all-or-nothing fashion. Now events that are triggered during executions of some transactions, that later turned out to be unsuccessful, need to be retracted (in the same vain as transactions are rolled back). These events can be already used in building more complex events. This implies that also these complex events should be retracted too. ETALIS is using the logic to find out the consequences of events retractions on other more complex events.

It’s nice to seen the addition of another declarative CEP rule languate apart from the Reakt language implemented by the ruleCore CEP Server. Even though both languages are rule based and declarative it shows that ETALIS comes from a more formal and theorethically correct research world whereas the Reakt language was designed by software developers without too much concerns of formal correctness.

I will follow ETALIS with great interest as I think it could evolve into a really powerful language.

 

 

 

Share/Save/Bookmark

Complex Event Processing

  1. Mark T
    June 2nd, 2010 at 18:55 | #1

    Are there any simple code samples available? I find it hard to think about a programming language without code samples :)

  2. June 7th, 2010 at 10:14 | #2

    I think you can find samples here: http://code.google.com/p/etalis/

  1. No trackbacks yet.
Comments are closed.