vincent
Thu, 03 Jul 2008 17:19:31 +0000
Next from the
Distributed Event Based Systems conference: the CQL tutorial by Dieter Gawlick and Shailendra Mishra, covering Oracle’s version of a continuous query language [*1]. What was interesting was their defense of the claim that “your database server can do your CEP” [*2], supposedly reinforced by the observation that “you get all the (usual) DB management functions for free” [*3]. The traditional 3-tier, database-persistence-as-a-core-service, architectural design pattern is of course perfectly fine for, er, moderate-to-high latency projects with stovepipe services requiring minimal changes over their lifetime. Indeed, many current CEP applications augment, rather than replace, such existing architectures. But presumably you also have to consider run-time performance effects [*4] on your operational data store. Also some CQL examples display impressive contempt for the
KISS principle - being of such complexity that they will undoubtedly frighten small children as well as experienced DBAs. Maybe Oracle will plan some nifty design tool for their CQL implementation, and if so, this would surely be a good topic for some future DEBS conference…
Of course, “real” ESP and CEP engines also support continuous queries -
TIBCO BusinessEvents included; hence at least one answer to Hans Gilde’s recently asked
question on why rule-based (monitoring) systems do not include some SQL-based Event Processing Language* is: actually some already do).
Notes.
[1] Probably, at some point,
EPTS will need to publish a comparison of all the different CQL implementations and their semantics. After that, we can discuss”standardization”…* one gets the impression that Oracle would prefer to claim that their implementation *is* the de facto standard, but unlike their SQL implementation they likely don’t have anywhere near the installed base for CQL to justify such a claim.
[2] Note that a continuous query is not the same as CEP. A continuous query running against a high-latency database, for example, may just buy you a more efficient trigger representation.
[3] Presumably,
not literally…
[4] I saw these
cartoons in a blog recently and thought their similarity to CQL / database issues to good to pass up!
Source...