PLINQ可以轻松实现MapReduce编程模式

Map (映射)  Reduce (规约) 编程模型:

 

 常用于统计词频(也就是统计单词的使用数量)

具体实现演变:

复制代码

 

public partial class Program
{
  public static void Sample05()
  {
    var words = File.ReadAllText("Data.txt").Split(' ');
    var map = words.AsParallel().ToLookup(p => p, k => 1);
    var reduce = from IGrouping<string, int> wordMap in map.AsParallel()
    where wordMap.Count() > 1
    select new {Word = wordMap.Key, Count = wordMap.Count()};

    foreach (var word in reduce)
    {
     Console.WriteLine($"Word: {word.Word},Count:{word.Count}");
    }
  }
}


复制代码

 注意:PLINQ 是不支持 LINQ to SQL 都是需要加载到内存中处理的

posted @   根仔  阅读(37)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示