Reading an interesting report on the recent Microsoft Research event (TechFest), I noticed a few projects that are relevant to Complex Event Processing:
- Tools and Services for Data Intensive Research – this was by the Dryad distributed computing research project team, and makes an interesting contrast with commercial distributed event processing platforms. Dryad seems to position itself as next-generation map reduce, being “more generic”, with tools for mapping single threads (presumably non-interfering) to multiple agents. TIBCO BusinessEvents, on the other hand, uses larger-granularity event processing agents without the need for explicit process orchestrations (although you could use a state model to model orchestration, if needed).
- Predicting Performance Problems and FingerPrints in the Data Center – this reminded me of TIBCO ActiveMatrix Service Performance Manager (try saying THAT 3 times really fast, and you’ll realize why it’s usually just called SPM), a tool built using CEP technology. The Microsoft research may do some more sophisticated metrics analysis over SPM, but probably nothing that a few TIBCO Spotfire S+ procedures couldn’t provide…
- Concurrency Analysis Platform and Tools – an interesting (if maybe heavyweight) toolset for checking concurrency issues, which are also possible (:)) in multi-agent CEP platforms. These mostly seem to be validation tools – there is no mention of verification approaches via model + code analysis as well, although it could be their target domain is too broad (and code too low-level) for that to be effective.
- Solver Framework – Microsoft’s entry into constraints (a type of rule programming and processing) for optimization. Per one report this works just fine! The connection with CEP here is that optimization solutions like this are invoked when some complex event occurs (like: weather causes airline schedule disruption, or new load manifest for ship arrives).
- Profiling the Performance of Distributed Systems – another system-level tool, this time for analyzing the performance of different agents in a system. Again, this overlaps with the aforementioned SPM, although it is also relevant to monitoring multi-agent CEP platforms.