Complex Event Processing:Ten Design Patterns

by Mark Tsimelzon, Coral8

Complex Event Processing (CEP) engines have received a lot of attention lately. Understanding CEP on a high level is easy: a CEP engine is a platform for building and running applications, used to process and analyze large numbers of real-time events. These applications come up in a number of domains: algorithmic trading and execution, risk management, compliance monitoring, supply chain management, click-stream analysis, network intrusion detection, business process monitoring, logistics, power grid monitoring, infrastructure monitoring, military and intelligence, and others.
CEP engines are so new, however, that many application developers are struggling to understand the new capabilities. There is a certain disconnect between the producers and consumers of CEP technology. While the potential for the implementation of CEP engines seems perfectly obvious to those who build and market them, the most frequent question from potential users is: “What can I do with a CEP engine?” This paper is intended to provide the answers to this question.
This document describes ten fundamental CEP design patterns1 that appear repeatedly in CEP applications, listed below in order of complexity, from the simplest to the most sophisticated. These basic patterns may be thought of as building blocks that can be combined to create complete applications. Download pdf version

  • Share/Bookmark

Leave a Reply

You must be logged in to post a comment.

.