MapReduce执行wordcount案例分析

1、先将磁盘中的文件读入到内存,按行读取,如图所示

2、将文件分割成每个一行一行数据之后,MapReduce框架会自动将我们的一行一行数据转化为<key,value>形式,这个key默认的就是该行数据的首字符在之前文本中的位置,value就是该行字符串,如图所示。

3、将分割好的<key,value>对交给用户定义的map方法进行处理,生成新的<key,value>对,如图

4、得到map方法输出的<key,value>对后,Mapper会执行Combine过程,将key至相同value值累加,得到Mapper的最终输出结果,如图所示。

5、Reducer先对从Mapper接收的数据进行排序,再交由用户自定义的reduce方法进行处理,得到新的<key,value>对,并作为WordCount的输出结果

spark运行wordcount案例分析

在一个统计词数的程序中,首先读取数据,在执行两次map操作,和一个reduce操作,最好保存结果,在这个过程中,一共生成了6个RDD,在读取数据的时候,生成了两个RDD,经过两次map,又生成了两个RDD,在reduce时生成了一个RDD,在执行saveAsTextFile时又生成了一个RDD。

reduce时的过程也称为shuffle,一共有两个步骤,第一步是进行局部聚合,第二步是进行全局聚合

一个分区对应一个task(在同一个stage),一个分区对应的task只能在一台机器上(在executor中),一台机器上可以有多个分区对应的task
一共有两个阶段(stage),在shuffle时是一个分水岭,shuffle,shuffle前的task称为shufflemaptask,shuffle后的task成为resulttask.所以,WordCount执行过程中,一共生成了2种task,4个task。

MapReduce和sparks运行wordcount案例过程分析相关推荐

  1. MapReduce综合学习含Wordcount案例

    文章目录 MapReduce简介 MapTask ReduceTask Mapper阶段解读 Reducer阶段解读 MapReduce适用的问题 MapReduce的特点 MapReduce基本思想 ...

  2. 第一章,安装spark集群,测试和运行wordcount 案例

    1.1下载spark 地址:https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-2.3.0/ 1.2上传解压: xiaoye@ubuntu: ...

  3. 在Hadoop系统中运行WordCount案例失败解决方法

    报错提示: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid 请在yarn-site.xml中添加 <prope ...

  4. Spark快速上手-WordCount案例

    在此之前,我已经用MapReduce 框架实现了WordCount案例,接下来,我开始学习数据处理的另外一个非常重要的方法:Spark.首先,使用WordCount案例实现Spark快速上手. 创建M ...

  5. MapReduce流程(WordCount案例实现)

    文章目录 1 MapReduce概述 设计构思 实例进程 实例进程分类 完整执行过程 总结 2 MapReduce编程规范 Map阶段2个步骤 Shuffle阶段4个步骤 Reduce阶段2个步骤 3 ...

  6. hadoop学习笔记:运行wordcount对文件字符串进行统计案例

    我最近使用四台Centos虚拟机搭建了一套分布式hadoop环境,简单模拟了线上上的hadoop真实分布式集群,主要用于业余学习大数据相关体系. 其中,一台服务器作为NameNode,一台作为Seco ...

  7. MapReduce之WordCount案例

    前言 学习大数据框架通常都是从wordcount案例开始的,也是学习框架的基础,wordcount虽然简单,如果能彻底搞清楚其运行原理,对后续深入学习和掌握MapReduce非常有帮助的,本篇以一个w ...

  8. MapReduce入门(一)—— MapReduce概述 + WordCount案例实操

    MapReduce入门(一)-- MapReduce概述 文章目录 MapReduce入门(一)-- MapReduce概述 1.1 MapReduce 定义 1.2 MapReduce 优缺点 1. ...

  9. mapreduce程序本地运行,单词统计案例

    mapreduce程序本地运行单词统计案例,输入输出数据放在本地 集群模式运行:https://blog.csdn.net/weixin_43614067/article/details/108400 ...

最新文章

  1. integer比较_Java整数缓存Integer.valueOf(127)==Integer.valueOf(127)为True
  2. 生成服务器密码的shell脚本
  3. curl命令的超时时间
  4. Day4-Springmvc表单数据
  5. TorgoiseGit配置ssh密钥
  6. 水晶易表调用C#的WebService,返回数据集合
  7. 使用自定义断言丰富测试代码
  8. ICCV2021多模态视频分析与推理比赛参赛邀请
  9. 高中计算机算计Access怎么做,Access非常简单实用的计算器
  10. 【java】swing窗口及继承的应用
  11. 网站html静态化 教程,新云CMS网站内容管理系统生成HTML静态化教程
  12. GoogleNet家族
  13. PHP正则匹配html标签
  14. javascript 计时器,消失计时器
  15. linux内核怎么变化,Linux内核中CPU状态变化机制简介
  16. 怎么在Excel中快速将英文翻译为中文
  17. 八种语言最新毕业文献参考
  18. IEEE格式如何使用在线参考文献生成器
  19. 有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。
  20. 解决火狐,谷歌,ie兼容性问题

热门文章

  1. Android中设置显示文本,Android文本显示控件-TextView属性详解
  2. 凯撒密码中有数字怎么办_破解犯罪大师8.25突发事件中医生的密码(未解慎入)...
  3. 学习JS的第六天之字符串
  4. 基于麻雀搜索算法优化的lssvm回归预测
  5. VS Code 运行App.js文件
  6. 用内存映射文件实现进程间通信
  7. 深度学习-Transformer详解
  8. 2022暑期杭电第四场
  9. 【会议邀请】第二十届中国计算语言学大会(CCL 2021)早鸟票倒计时8天!
  10. 做人的底线:不忘恩情,不失诚信,不伤人心