Drools 5 – Complex Event Processing

From Drools version 4 to version 5, the framework has undergone quite a few improvements. These include support for three additional business modeling techniques. So today, Drools is not only a rule engine, but much more than that.

One of these techniques is event processing. The module that added event processing capabilities to the framework is called Drools Fusion. It supports Complex Event Processing (CEP) and Event Stream Processing (ESP).

“…Complex Event Processing, or CEP, is primarily an event processing concept that deals with the task of processing multiple events with the goal of identifying the meaningful events within the event cloud. CEP employs techniques such as detection of complex patterns of many events, event correlation and abstraction, event hierarchies, and relationships between events such as causality, membership, and timing, and event-driven processes…”

http://en.wikipedia.org/wiki/Complex_Event_Processing

Drools Fusion utilizes event processing architecture that adds loose coupling to its components. In other words, one party can publish events and other party can listen to those events while unaware of the publishing party.

Event can represent a change in state, for example banking transaction or insurance claim that was processed. CEP deals with complex event processing. Complex event is a collection of simpler events. Please refer to the diagram below:

Drools - complex event processing

In my next post Drools 5 Case Study 2 – Complex Event Processing, I talk about CEP and how Drools applies its processing power to solve complex event problems.

More from Alexander Zagniotov:

  1. Drools 5 Case Study 1- Writing DSL for DRL rule
    One of the blog readers, who posted a comment in my previous post Drools – tutorial on writing DSL template...
  2. Hibernate Event Interceptor
    Its quite common when you create an application, there is a need to create an audit trail on the application...
  3. Feedback by the Drools Team
    Today while checking my blog’s referrers, to my pleasant surprise I discovered that few Drools articles I have published on...
  4. Drools – Tutorial on Writing DSL Template
    Few months ago I wrote a post that describes an example that uses source DRL in conjunction with DSL template....
  5. Drools – Stop Executing Current Agenda Group and All Rules
    Sometimes, depends on your business rules in your application, there is a need to stop current agenda group or all...