Mapreduce学习指导及疑难解惑汇总
Mapreduce学习指导及疑难解惑汇总
1.思想起源:
我们在学习mapreduce,首先我们从思想上来认识。其实任何的奇思妙想,抽象的,好的想法、都来源于我们生活,而我们也更容易理解我们身边所发生事情。所以下面一篇便是从生活的角度,来让我们理解,什么是mapreduce。
Hadoop简介(1):什么是Map/Reduce
2.设计思路
我们从思想上认识了mapreduce,那么mapreduce具体是什么,我们需要看得见,摸得着。我们该如何实现这个思想,我们该如何设计mapreduce。那么现在来说说它的设计思路。
设计思路如何表示:ok下面的帖子,是通过一张图来表达的。
Mapreduce 整个工作机制图
mapreduce是hadoop的核心,正因为mapreduce,所以才产生了分布式。所以我们可能通过一张图,了解的不够清楚和详细。我们还需要了解里面的原理:
MapReduce工作原理讲解
3.模型实现
通过上面我们可能有了自己的一些看法。但是我们可能还是认识不太清楚。那么咱们在来看看编程模型,来进一步的了解。
MapReduce 编程模型概述
mapreduce编程模型
4.产生问题
我们看了上面的文章,这时候会有一些名词、概念进入我们的脑海。
除了map,reduce,task,job,shuffe,partition,combiner这些把我们给弄糊涂了。
我们产生问题如下:
map的个数由谁来决定,如何计算?
reduce个数由谁来决定,如何计算?
简单来讲map由split来决定,reduce则是由partition来决定。
详细可以查看
如何确定 Hadoop map和reduce的个数--map和reduce数量之间的关系是什么?
--------------------------------------------------------------------------------------------------
shuffle是什么?
partition是什么?
combiner是什麽?
他们三者之间的关系是什么?
mapreduce是hadoop核心,而shuffle是mapreduce的核心,shuffle个人认为它是一个动态的过程,包含了Combiner,merge等的过程,那么这里因为讲到shuffle,很多人都讲的全面,Combiner,merge,sort几乎全都讲了,这样讲是没有错误的,但是容易给初学者造成一个假象,那就是这些过程必须都是包含的,其实这些是根据个人的需求来确定的。
彻底了解mapreduce核心Shuffle--解惑各种mapreduce问题
对于Combiner的疑惑可以查看
Mapper过程中Combiner的作用
解决了下面问题
同样关于上面的问题可以参考
关于Mapper、Reducer的个人总结
5.编程实现
mapreduce是一种编程模型,我们认识了解,下面就需要编程实现了。那么mapreduce都能做些什么?下面我们可以看看
新手指导,该如何在开发环境中,创建mapreduce程序
MapReduce初级案例(1):使用MapReduce去重
MapReduce初级案例(2):使用MapReduce数据排序
MapReduce初级案例(3):使用MapReduce实现平均成绩
通过上面三个例子,也是我们验证前面所理解的内容。
同样可以参考下面内容
Hadoop mapper类的阅读
Hadoop reducer类的阅读
Mapreduce shuffle和排序
hadoop中mapreduce包及制作文档指导
Hadoop开发环境搭建及map-reduce开发实例讲解视频下载
如何进行Hadoop二次开发指导视频下载
6.mapreduce应用
上面是一些基本的知识,那么我们熟悉之后,其实有些地方,可以应用在其它方面。下面可以参考:
淘宝之HBase MapReduce实例分析
MapReduce在压力测试中的应用
这里附上一张图,想看的仔细,点击图,按住鼠标滑轮,放大即可
Mapreduce学习指导及疑难解惑汇总相关推荐
- 深度学习英文缩写_深度学习相关专业词汇简称汇总
深度学习相关专业词汇简称汇总 zoerywzhou@gmail.com 作者:Zhouw 2016-3-15 版权声明:本文为博主原创文章,未经博主允许不得转载. 作者是深度学习的初学者,经由导师指导 ...
- hadoop之MapReduce学习教程
hadoop之MapReduce学习 MapReduce概述 MapReduce定义 MapReduce是一个分布式运算程序的编程框架,是用户开发"基于Hadoop的数据分析应用" ...
- 用计算机和手算标准差不一致,统计基础知识与统计实务学习指导(2015版).doc
统计基础知识与统计实务学习指导(2015版) 统计基础知识与统计实务学习指导(2015版) 第一章 绪论 一.单项选择题 1.在实际应用中,统计的涵义是指( ).A.统计理论与统计实践 B.统计设计. ...
- MapReduce学习笔记(1)
MapReduce学习笔记 1. MapReduce编程模型- Hadoop架构 1.1 Map阶段 1.2 Reduce阶段 1.3 MapReduce模型图 2. MapReduce编程示例 2. ...
- C语言答案刘韶涛,C语言程序设计学习指导与上机实践
<c语言程序设计学习指导与上机实践>: 教学目标明确,注重理论与实践的结合 教学方法灵活,培养学生自主学习的能力 教学内容**,强调计算机在各专业中的应用 教学模式完善,提供配套的教学资源 ...
- 初窥Linux神秘面纱(壹):基本指令讲解(上)及疑难解惑(精)
目录 前情提要: ls指令: pwd指令: cd指令: whoami指令: touch指令: 疑问补充: 前情提要: 今天,我将开始新版块的书写---LInux窥境之路,神奇而又美丽的操作系统将在我的 ...
- 2018面向对象程序设计(Java)第3周学习指导及要求
2018面向对象程序设计(Java) 第3周学习指导及要求(2018.9.11-2018.9.16) 学习目标 适应老师教学方式,能按照自主学习要求完成本周理论知识学习: 掌握Java Appli ...
- 计算机电路逻辑分析基础知识答案,计算机电路基础学习指导与习题解答
出版说明 前言 第1章 电路基本分析方法 1.1 内容提要 1.1.1 电路基本物理量 1.1.2 电路元件 1.1.3 电路基本定律 1.1.4 电路基本分析方法 1.1.5 线性电路暂态分析 1. ...
- signature=42f2498bc8fd40eb63568566c79f37e7,新思维综合英语Ⅰ学习指导
摘要: 新思维综合英语是由中央广播电视大学外语部在引进美国培生教育集团出版的成人英语教材Spectunm的基础上,按照国家教育部1997年颁布的<全国成人高等教育英语专业英语教学基本要求> ...
最新文章
- 确认和回调_【短线回调,确认突破点】
- Hessian通信案例(java)
- 091101 T IModel
- .html(),.text()和.val()的差异总结
- Anaconda ubuntu16.04 Cuda 8.0安装pytorch
- SQLServe错误整理
- Memcached常用操作
- arduino液位传感器_如何使用Arduino + VL53L0X来制作液位感应设备
- 机器学习案例系列教程——优化方法总结(梯度下降法、牛顿法、拟牛顿法、共轭梯度法等)
- 我就不信发不出去,工 作 时候用的,来啊=》模板下载
- 基于java的生信软件_常用生物信息学软件介绍和文献依据.docx
- LaTeX组件:texlive2019+texstudio+sumatraPDF 安装包及学习手册
- windows下安装GCC编译器
- !peb和PEB结构
- 吉大计算机学院奖学金的分配,奖励资助_吉林大学奖学金设置_高考院校库
- 【硬件通信协议】2. 详细解析SPI通信协议(标准4线SPI)
- B站粉丝计数软件(python开发)
- 分位数回归及Stata实现
- 《非诚勿扰》原声大碟
- 找工作神器,提取各大网站有效的招聘信息(前程无忧、智联招聘、猎聘网)
热门文章
- 重邮计算机接受考研调剂吗,重庆邮电大学2019年接收硕士生调剂公告
- 3D图形学(10):游戏中的加速渲染算法
- 【CicadaPlayer】av find stream info 探测framerate 分辨率
- xxxxxxxxxxxxxxx
- “慢落地”下的AI+教育,得打技术牌还是内容牌?
- zabbix安装与部署
- 解决webpack打包文件过大的问题
- GitHub Desktop 安装和使用(附:百度云下载地址,永久有效)
- Java修饰符、Java运算符、Java循环语句、Java条件语句、Java switch case
- 企业办公用什么邮箱品牌,哪家邮箱最适合?