Comparison to Microsoft's CCR
Posted December 26th, 2006 by raghu
Hi,
How does DataRush compare to Microsoft's Co-ordination Concurrency Runtime (CCR) library, which was released as part of Microsoft's Robotics 1.0.
Here is the link to what CCR is all about:
http://channel9.msdn.com/ShowPost.aspx?PostID=222512
The CCR seemed to have similarity to DataRush technology.
Thanks.
Raghu/..
Trackback URL for this post:
http://www.pervasivedatarush.com/trackback/52





CCR is a message-passing library for C#. It's ports are FIFO queues just like those in DataRush. However, DataRush does not distinguish between arbiters and receivers; the ideas are merged in a process.
Also note that DataRush is designed to specify networks of processes. CCR can certainly do such a thing, but it does not facilitate it or make it easier. CCR is more general in the sense that its receivers could issue messages to a downstream network of arbiters/receivers but do not have to; the library is merely a way to structure concurrent programs. DataRush is designed around process networks: source processes read in data and push it to their output ports, various processes in the pipeline/network process the data, then sink processes receive the data and (typically) persist it to disk, update a database, etc.
DataRush provides a Java library for creating processes. These make constructing elaborate networks a simple matter of gluing the right pieces together, rather than orchestrating the interactions yourself.
Hey;
I read the Wiki here: Wiki
And found words like "ports", which we use. But I also found a key quote from Microsoft:
This is absolutely NOT the primary objective of DataRush. It was built to crunch bulk data (most likely from a high perf. RAID array). So any "messages" passed to/from DataRush ports in our case are actually in-memory chunks of data moving extremely quickly between parallel processing operators. We don't allow operators/ports to span across networks (SOA patterns).
We feel there are plenty of add-ons to J2EE out there and EE gets better/bigger every year so any message-oriented framework anyone builds will be useful for a short period of time while the JCP catches up. Then there are the ESB vendors and open source frameworks ... SOA is a crowded tools market.
If you find any openly available algorithm benchmarks with CCR that are more bulk data-intensive, feel free to post them so we can take a look.
Chief Evangelist
DataRush Product Group