On the Maturity of CEP
Deciphering the Myths Around Complex Event Processing by Ivy Schmerken stimulated a recent flurry of blog posts about the maturity of CEP, including; Mark Palmer’s CEP Myths: Mature or Not? and Opher Etzion’s On Maturity.
I agree with Ivy. CEP is not yet a mature technology by any stretch of the imagination. In fact, I agree with all three of Ivy’s main points about CEP.
In 1998 David C. Luckham and Brian Frasca published a paper, Complex Event Processing in Distributed Systems on a new technology called complex event processing, or CEP (Postscript Version). In that seminal paper on CEP, the authors said, precisely:
“Complex event processing is a new technology for extracting information from message-based systems.”
Ten years later there are niche players, mostly self-proclaimed CEP vendors, whom do very little in the way of extracting critical, undiscovered, information from message-based, or event-based, systems.
A handful of these niche players have informally redefined CEP as “performing low latency calculations across streaming market data.” The calculations they perform are still relatively straight forward and they focus on how to promote white-box algo trading with commercial-off-the-shelf (COTS) software. In this domain, we might be better off not using the term CEP at all, as this appears to be simply a type of new-fangled COTS algo trading engine.
The real domain of CEP, we thought, was in detecting complex events, sometime referred to as situations, from your digital event-driven infrastructure – the “event soup” for a lack of a better term. In this domain, CEP, as COTS software, is still relatively immature and the current self-styled COTS CEP software on the market today is not yet tooled to perform complex situational analysis.
This perspective naturally leads to more energy flowing in-and-around the blogosphere, as folks “dumb down” CEP to be redefined as it benefits their marketing strategy, causing more confusion with customers who want CEP capabilties that have zero to do with low latency, high throughput algo trading, streaming market data processing, which maybe we should call “Capital Market Event Stream Processing” or CESP – but wait we don’t really need more acronyms!
Hold on just a minute! Wasn’t it just a short couple of years ago that folks were arguing that, in capital markets, it was really ESP, not CEP, remember? Now folks are saying that it is really CEP and that CEP is mature?
CEP is mature? CEP is really not ESP? CEP is really event-driven SOA? CEP is really real-time BI? CEP is really low latency, high throughput, white-box COTs algo trading? CEP is really not a type of BPM? CEP is not really for detecting complex events? Complex does not really mean complex?
Come on guys, give us a break!
(Anyway, no one is going to give us a break…. so stay tuned!)