Microsoft released Microsoft StreamInsight with SQL Server 2008 R2.
This is an engine for real time data analysis. It’s an alternative to traditional BI which typically crunch replicated data. Instead, StreamInsight let’s you analyse the data as it comes to you (as a stream).
The programming model is built on top of LINQ with the twist that the collection you’re linqing against isn’t entirely materialized yet and will keep coming. Therefore, it lets you produce results from an input streams by transforming query results.
I read a bunch of articles about it and I understand the purpose of it, pretty much where it would be useful, but I never tried it nor did I fully grasp how it would really be used. Finally I found an article giving you a flavour of how a StreamInsight application would look like! It’s on MSDN, written by Rob Pierry:
It’s a great read and it goes just deep enough so that you can have a real grasp at how StreamInsight is used without getting too much into details. For instance, it does explain the concept of time Window rather succinctly and it’s the best explanation I’ve seen so far.