Complex Event Processing (CEP) from Microsoft
Recently in a GASP (Grupo de Arquitectura de Software Português) we had a presentation regarding the need and the usage of CEP in solutions and the implementation presented was NESPER – Esper Complex Event Processing for .NET that is an Open-Source software available under GNU General Public License (GPL) v2. From what I saw there it’s very interesting and also not that difficult to use, but I always thought that it was strange that Microsoft was doing nothing regarding this subject that is so important in Event-Driven Architectures (EDA) or even called Advanced SOA.
Our wait is reaching an end, because Microsoft is already working on this and even already has a CTP version that can be downloaded here and that is called Microsoft® SQL Server® StreamInsight CTP2.
But what is Microsoft® SQL Server® StreamInsight CTP2?
“Microsoft® SQL Server® StreamInsight is a platform for the continuous and incremental processing of unending sequences of events (event streams) from multiple sources with near-zero latency. These requirements, shared by vertical markets such as manufacturing, oil and gas, utilities, financial services, health care, web analytics, and IT and data center monitoring, make traditional store and query techniques impractical for timely and relevant processing of data.
StreamInsight allows software developers to create innovative solutions in the domain of Complex Event Processing that satisfy these needs. It allows to monitor, mine, and develop insights from continuous unbounded data streams and correlate constantly changing events with rich payloads in near real time. Industry specific solution developers (ISVs) and developers of custom applications have the opportunity to innovate on and utilize proven, flexible, and familiar Microsoft technology and rely on existing development skills when using the StreamInsight platform.
Some of the key feature areas are:
- Derive meaningful and relevant information from data/events streams through complex patterns. These patterns can be defined using a declarative query paradigm based on well-defined streaming semantics with LINQ as query language.
- For the development of applications, adapters, and analytics, the user can rely on well-established and powerful development frameworks and tools such as .NET, LINQ, and Microsoft Visual Studio.
- The platform integrates with various data sources and sinks through input and output adapters. The framework to build domain-specific adapters utilizes a .NET API to make adoption of the platform easy. Independence between adapters and queries facilitates seamless integration of real-time and historical analysis.
- The platform architecture supports a variety of deployment options, from scenarios with a low-footprint embedded option to high-end server deployments.
- A rich set of manageability features such as a management interface, a diagnostic interface and a debugging tool are provided as part of the platform. “ (from the Microsoft site)
To know more about the licensing terms of this new product, check here.
From what I’ve checked there are some interesting comments regarding this subject like this Richard Seroter’s post in the “Low Latency Data and Event Processing with Microsoft SQL Server “ part of that post.
Another comment about this is from Charles Young in this post.
I’ll investigate a little bit more and I’ll give more information’s afterwards.