CEP or complex event processing is a set of methods to track, process and analize atomic, time managed events from different sources to infer events or patterns that suggest more complicated circumstances in real time. Applications of CEP tools varies a lot: they can be used in regular business applications, monitoring and analyzing tools, IT operating systems, fraud detection softwares, and CEP is fundamental in the scope of IoT as well.
Lots of different academical and commercial CEP tools are available on the market. The operating principles, the applications, and other additional features of these softwares show great diversification.
The main goal of this paper is to compare three different CEP tools: Drools, Esper and BeepBeep3. The comparison is based on the DEBS2015 Grand Challenge competition, which is a public benchmark in the scope of CEP. All of three softwares can be integrated with Java applications, therefore, with a common executing framework, measuring results can be considered valid.
Public expected outputs are not available for the benchmark, so the functional validation of the solutions has a high priority. I have applied three levels of validation: unit testing of more complex and critical parts of the framework, functional testing of implemented rule logics, and comparing the outputs of the solutions with each other.
The comparison of the CEP tools in the scope of the tasks of DEBS2015 Grand Challenge is based on the complexity and the required time of planning and developing solutions, and the measured delay, execution time, and consumed memory during the processing of test inputs available on the website of DEBS2015 Grand Challenge.