大数据笔记10:大数据之Hadoop的MapReduce的原理
1. MapReduce(并行处理的框架)
思想:分而治之,一个大任务分解成多个小的子任务(map),并行执行后,合并结果(Reduce)
(1)大任务分解成多个小任务,这个过程就是map;
(2)多个小任务结果的合并,这个过程就是Reduce;
2.通过一个案例说明MapReduce思想如下:
一副牌(不含大小王)有52张,共有1000副牌,也就是说应该有52000张扑克牌,但是如果其中少了1张,也就是变成了51999张扑克牌,如下:
现在少了1张牌,我们想把它找出来,该怎么办呢?
(1)第1步:首先我们把这个51999张牌,分成5份(相当于map操作,一个大任务分解成多个小任务):
这里把51999张牌,分成5份(随机分配,可以不均等),分成给5个人去做:
(2)第2步:51999张牌,分成5份,分给5个人去做,这5个人的中每个人都执行map tasks操作,如下:
每个map tasks任务都是各自执行统计扑克牌中不同花色以及不同花色的数量(每个map tasks都是针对分配给自己那一份扑克牌进行操作)
(3)第3步:进行数据交换操作,如下:
(4)第4步:对数据进行规约操作,规约就是把上面不同map tasks得到结果" 合并同类项 ",进行再次统计,如下:
e.g:
(5)第5步:导出了统计结果。
转载于:https://www.cnblogs.com/hebao0514/p/4823038.html
大数据笔记10:大数据之Hadoop的MapReduce的原理相关推荐
- ISO认证咨询解读 ISO9001认证的7大知识点和10大认证误区
ISO认证咨询解读 ISO9001认证的7大知识点和10大认证误区 第一知识点:什么是ISO9001质量管理体系认证? ISO9001质量管理体系认证是ISO认证系列办理排在首位的ISO证书,根据官方 ...
- 【大数据笔记10】SparkStreaming——流式计算
What it is Spark Streaming类似于Apache Storm,用于流式数据的处理.根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强等特点.Spark St ...
- 大数据的10大发展趋势
如今,人们寻求获得更多的数据有着充分的理由,因为数据分析推动了数字创新.然而,将这些庞大的数据集转化为可操作的洞察力仍然是一个难题.而那些获得应对强大数据挑战的解决方案的组织将能够更好地从数字创新的成 ...
- IDC公布2017年亚太地区数据中心10大预测
IDC亚太区发布了最新题为<IDC FutureScape:2017年全球数据中心预测:APeJ影响>的报告,强调数据中心内一系列成熟的技术,对于那些寻求数字化转型的企业机构来说至关重要. ...
- 打造中国版 ChatGPT,清华大模型人才遭哄抢!盘点国内5大学术团队10大产业玩家...
来源:量子位 做类ChatGPT产品,组中国版OpenaAI恐怕是先当下最最人尽皆知的创投野心. 有人官宣标榜放话,也有VC开始把视角投向产学研转换的大模型项目--或许能更有基础一些,其中,清华大学显 ...
- 清华大模型人才遭哄抢!盘点5大学术重镇10大产业玩家
衡宇 发自 凹非寺 量子位 | 公众号 QbitAI 做类ChatGPT产品,组中国版OpenaAI恐怕是先当下最最人尽皆知的创投野心. 有人官宣标榜放话,也有VC开始把视角投向产学研转换的大模型项目 ...
- 计算机大错误,计算机10大经典错误[图解](5页)-原创力文档
计算机 10 大经典错误[图解] 10.DOS 的 Abort,Retry, Fail?错误 85 年以后出生的人可能不知道 DOS 是什么了,只有那老家伙还知道这是什么.我还记得当 时的我对于 Ab ...
- 算法大总结之----10大经典排序算法(从小到大排列)
目录 1. 冒泡排序 1.1. 算法讲解 1.2. 代码实现 2. 选择排序 2.1. 算法讲解 2.2. 代码实现 3 插入排序 2.1. 算法讲解 2.2. 代码实现 4 希尔排序 2.1. 算法 ...
- 大数据笔记10—java基础篇6(集合1-Collection)
集合 集合(Collection) 一.迭代器<iterator> 案例一 二.并发修改异常 三.Collection集合 案例一(Collection练习) 案例二(Collection ...
最新文章
- 百度离职员工吐槽:整天除了工作还要演好戏,拍马屁,心太累!
- python manager详解_Python通过Manager方式实现多个无关联进程共享数据
- KNN针对中文文本分类
- set trans 必须是事务处理的第一个语句_MySQL中特别实用的几种SQL语句送给大家
- python安装vtk_python - 安装VTK for Python - SO中文参考 - www.soinside.com
- 求二叉树中两个节点的最远距离
- Spring MVC_Hello World
- 洛谷P1482 Cantor表(升级版) 题解
- Spring Cloud Sleuth 原理简介和使用
- 项目class第十四周项目一:动物学叫
- 美元为什么能够无限超发?
- RestTemplate异常no suitable HttpMessageConverter found for request type [java.lang.Integer]
- excel使用数据字典显示数据——宏
- 罗技G304等鼠标GHUB驱动配置
- 关于新手入坑vue,页面跳转样式错位刷新又好了的情况
- 分享一个完全免费的高质量 PPT 模板下载网站
- 有一根27厘米的细木杆java_百度笔试题 蚂蚁爬杆
- linux vad检测,VAD树结构体的属性以及遍历
- docker cp传递整个目录
- 相思赋予谁 --知错
热门文章
- mysql的count()函数如何选择索引,千万级表的count()查询优化实例
- php的$_FILES如何生成以及如何与上传文件对象产生联系
- java编程器答疑z湖南岚鸿,吐血整理
- android 上拉隐藏布局,Recycleview上拉隐藏与下拉显示
- ipconfig不是内部或外部_OSPF外部路由详解-LSA4-LSA5
- java中日期计算时间差,用java计算日期/时间差
- java方法定义 与调用_Java方法的定义及调用
- php imagick 滤镜,PHP安装imagick扩展踩过的坑
- python时间序列因果检验_Python Statsmodels的时间序列Ljung_Box检验
- 如何完美隐藏Disposable的存储和销毁过程(二)