Java中的mapreduce没了_MapReduce的过程总结

MapReduce 分为:

1) MapTask :

1.Read阶段:逻辑切片 128M / Maptask 读数据解析出一个个key/value。

2.Map阶段: 把key/value 写入到map中去(处理业务逻辑)

3.Collect阶段:将生成的key/value分区(调用Partitioner)排序,并写入一个环形内存缓冲区中。

4.溢写阶段:分区写入到文件且有序。

5.Combine阶段:归并排序,把众多小文件合并成大文件。

一个大文件逻辑切分成好多片(128mb一片),一片启动一个map, 多个map之间处理的数据有相同的分区但是处理的不同。有可能第二片里面也有分区1的数据。第一片里也有。

2)Shuffer:Map方法之后,Reduce方法之前的数据处理过程称之为Shuffle。(和两个有重合部分)

1.Map的shuffer过程:就是从Map里面写入到环形缓冲区中要先进行分区然后排序再百分之80的时候溢写到磁盘中,接着把map之间分区数据归并排序 (多个有序的小文件形成一个大的有序的文件)然后可压缩后 再溢写到磁盘对应的分区上。

2.Reduce的shuffer过程: 把分区数据拷贝到内存缓冲区中(如果不够就溢写到磁盘中 )然后进行归并排序,生成一个大的有序的文件。按照相同key分成一组!之后放到reduce里面去。   (进入到reduce里面的数据,key必须相同)

3)ReduceTask

1.Copy阶段:将对应分区下的数据拷贝到reduce,没有达到内存上限就存到内存当中,如果超过了就存到磁盘中。

2.Merge阶段:  多个文件合并成一个大的文件。

3.Sort阶段:然后将大文件排序。

4.Reduce阶段:将相同key的拷贝到一个reduce文件里面去,最终处理完输出。

数据倾斜:就是其他人忙的要死,他闲的要命。

db2d746d463d93414c324d58f1b26a6b.png

c424619af4e22b4011ad9ed2ea85f783.png

4ced3f076e8e62f7ffe4ac3587345692.png

ca05ed1a9c76b044496ae74e93f717d4.png

combiner :在MAPtask的局部汇总操作,父类是Reducer 区别是combiner在map操作  reducer在reduce操作。(不适合求平均值  适合累加汇总操作)。

169d109deb93fbfafb702a52afcea515.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496405.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

酒桌上的规矩,社会的潜规则

(一)如果自己真不能喝,丫就别开第一口,端着饭碗夹了菜一边吃着去(二)如果确信自己要喝,就别装墨迹,接下来就是规矩了  规矩一:酒桌上虽然“感情深,一口闷;感情浅,舔一舔”但是喝酒…

7个方面读懂6月的5G标准

来源:5G丨公众号作为IMT2020主要的候选技术, 5GNR在3GPP的快马加鞭地统一协调下急速前行,按照计划,今年第一个5G标准会冻结,将为运营商提供一套5G初期部署的可行方案。5GNR 是5G New Radio的简称,是当今通信…

专家谈计算机体系架构研究获“图灵奖”

来源:科学网 作者:王佳雯 韩扬眉近日,有着“计算机界的诺贝尔奖”之称的“图灵奖”揭开面纱。国际计算机协会宣布,美国科学家约翰轩尼诗和大卫帕特森获得2017年度图灵奖,以表彰二人开创了一种系统的、可量化的方法用…

编译和使用APUE的源码

From:http://blog.csdn.net/mitesi/article/details/19015397 APUE说明及源码下载地址 :http://www.apuebook.com/ APUE 电子版 PDF 下载地址:http://download.csdn.net/download/freeking101/10012610 1. 介绍 总结:APUE是一本…

java标签用法详解_介绍一个javaWeb自定义标签的用法详解

这篇文章主要介绍了javaWeb自定义标签用法,结合实例形式分析了javaweb自定义标签的功能、定义方法及执行原理,需要的朋友可以参考下本文实例讲述了javaWeb自定义标签用法。分享给大家供大家参考,具体如下:自定义标签创建自定义标签主要用于移除Jsp页面中…

由partition看窗口函数

最近要完成一个项目,有一个查询可难住了笔者,无论是子查询还是分组,都没弄出来,还是基础知识不行啊。不过呢,可以查资料,最后用一个窗口函数解决了问题。由于开始的数据库是Access,后来笔者导成…

AI版「盗梦空间」?谷歌大脑「世界模型」可实现在其梦境中对智能体进行训练

图源:pixabay原文来源:arXiv原文链接:https://arxiv.org/pdf/1803.10122.pdf作者:David Ha、Jurgen Schmidhuber「雷克世界」编译:嗯~是阿童木呀、KABUDA我们探索构建通用强化学习环境中的生成式神经网络模型。我们的世…

Linux文件空洞与稀疏文件

From:http://www.topjishu.com/8277.html From:http://blog.csdn.net/clamercoder/article/details/38361815 Linux_File_Hole_And_Sparse_Files 参考unix环境高级编程第三版 54页和90页!!! ( 文件I/O章节 lseek…

西人马聂泳忠:打造机器神经系统,成为中国的特斯拉

作者:于绍洋 来源:投资家网经常穿梭于几个城市,一手拉着行李箱,一手忙于回复工作上的事务,这可能已经成为西人马FATRI(下称,西人马)创始人聂泳忠博士的日常状态。他给人的第一印象…

Linux dd 命令

From:http://www.cnblogs.com/jikexianfeng/p/6103500.html Linux/UNIX: 使用 dd 命令创建 1GB 大小的二进制:http://www.linuxidc.com/Linux/2014-12/110147.htm 菜鸟教程 Linux dd命令:http://www.runoob.com/linux/linux-comm-dd.html …

Nature 首度揭示大脑传递信息的真正逻辑

我们对于大脑的理解还停留在极为初步的阶段(图片来源:Pixabay)来源:生物360摘要:我们过去对于大脑处理信息的理解,其实是非常片面和不准确的。今日,一项重量级的研究刊登在了最新一期的《自然》…

Linux 用户 和 用户组 管理 (添加、删除、修改)及说明

From:http://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html 鸟哥官网 Linux 帐号管理与 ACL 权限设定:http://linux.vbird.org/linux_basic/0410accountmanager.php 鸟哥官网(简体中文):http://cn.linux.…

IBM Watson将成为失败的投资?分析师眼里, IBM AI过度乐观, 夸大宣传

来源:36Kr 作者:石筱玉IBM Watson是在医疗领域最早布局的AI之一。在36Kr此前的盘点中,我们也知道Watson希望参与患者诊疗中的每一个步骤:导医用智能音箱、Watson诊断工具、住院看护辅助,还有病患心理疏导……Watson已…

linux 文件系统详解

From:http://soysauce93.blog.51cto.com/7589461/1715655 From:http://blog.csdn.net/new0801/article/details/63687127 Linux 的虚拟文件系统(强烈推荐):http://blog.csdn.net/heikefangxian23/article/details/51579971 鸟哥 Linux 磁盘…

国际互联网协会(ISOC)提出未来互联网十项原则

来源:腾讯研究院此前,国际互联网协会(Internet Society,简称ISOC)发布了题为《通往数字化未来之路(Paths to Our Digital Future)》的报告,就数字化未来的道路进行了探索。ISOC认为&…

Spring Data JPA 从入门到精通~javax.persistence概况介绍

虽然 Spring Data JPA 已经对数据的操作封装的很好了,约定大于配置的思想,帮我们默认了很多东西。JPA(Java 持久性 API)是存储业务实体关联的实体的来源,它显示了如何定义一个面向普通 Java 对象(POJO&…

Linux安装配置类似mac下的docky

百度经验:ubuntu安装配置类似mac下的docky 亲手打造自己的Linux桌面环境:http://os.51cto.com/art/201510/493896_all.htm Dock是一种图形用户界面元素,允许用户一键访问常用的应用程序,在应用程序之间快速切换,以及…

埃森哲:2018年科技愿景

来源:199IT互联网数据中心埃森哲近日发布了新报告“2018年科技愿景”,分析了五大技术趋势让企业能够挖掘潜力,创造新的商业机会并帮助改变我们所知道的世界。1公民AI(人工智能)AI随处可见,在整个社会范围内…

java 导出excel教程_Java导出Excel表格

Java导出Excel表格 导出Excel表格需要一个poi-3.9.jar的包,该包在网上可以找到。第一步,创建Excel对象。 HSSFWorkbook workbook new HSSFWorkbook();创建一个工作表。 HSSFSheet sheet workbook.createSheet("日常收入报表");创建合并单元格…

大数据竞赛平台——Kaggle 入门

From:http://blog.csdn.net/u012162613/article/details/41929171 大数据竞赛平台——Kaggle 入门篇 这篇文章适合那些刚接触Kaggle、想尽快熟悉Kaggle并且独立完成一个竞赛项目的网友,对于已经在Kaggle上参赛过的网友来说,大可不必耗费时间…