哪些情况可以保证使用" Map and Reduce "算法?
这个算法有.NET实现吗?
Linq等同于Map和Reduce:如果你有幸拥有linq,那么你不需要编写自己的地图并减少功能.C#3.5和Linq已经拥有它,虽然名称不同.
Enumerable.Range(1, 10).Select(x => x + 2);
https://www.justinshield.com/2011/06/mapreduce-in-c/
非常适合mapreduce风格解决方案的问题类别是聚合问题.从数据集中提取数据.在C#中,可以利用LINQ以这种方式编程.
来自以下文章:http: //codecube.net/2009/02/mapreduce-in-c-using-linq/
GroupBy方法充当地图,而Select方法则将中间结果减少到最终结果列表.
var wordOccurrences = words .GroupBy(w => w) .Select(intermediate => new { Word = intermediate.Key, Frequency = intermediate.Sum(w => 1) }) .Where(w => w.Frequency > 10) .OrderBy(w => w.Frequency);
对于分布式部分,您可以查看DryadLINQ:http: //research.microsoft.com/en-us/projects/dryadlinq/default.aspx