Hadoop 05_MapReduce1.0
MapReduce1.0
为什么叫MapReduce?
MR原语:map + reduce
输入(格式化k,v)数据集àmap映射成一个中间数据集(k,v)àreduce (sql)
“相同”的key为一组,调用一次reduce方法,方法内迭代这一组数据进行计算 (类似的sql)
排序
比较
遍历
计算
各种维度花销,音乐, 其他
MapReduce:MapTask & ReduceTask
拿单词统计为例:(后续我会单独拿出来说明:)
block > split
1:1
N:1
1:N
split > map
1:1
map > reduce
N:1
N:N
1:1
1:N
group(key)>partition
1:1
N:1
N:N
1:N? >违背了原语
partition > outputfile
划开分割 > 输出文件
Shuffler<洗牌>:框架内部实现机制
分布式计算节点数据流转:连接MapTask与ReduceTask
终极理解:
理解:
Map:
读懂数据
映射为KV模型
并行分布式
计算向数据移动
Reduce:
数据全量/分量加工(partition/group)
Reduce中可以包含不同的key
相同的Key汇聚到一个Reduce中
相同的Key调用一次reduce方法
排序实现key的汇聚
K,V使用自定义数据类型
作为参数传递,节省开发成本,提高程序自由度
Writable序列化:使能分布式程序数据交互
Comparable比较器:实现具体排序(字典序,数值序等)
1.0运行架构:体现计算向数据移动
计算框架Mapper
Map:“在本地数据上运行此计算”作业跟踪器将Java代码交付给带有本地数据的节点
计算框架Reducer
Reduce:“跨Map结果运行此计算”。Map任务通过网络将输出数据发送到Reduce,减少从HDFS写入和读取的任务数据输出
MRv1角色:
JobTracker
核心,主,单点
调度所有的作业
监控整个集群的资源负载
TaskTracker
从,自身节点资源管理
和JobTracker心跳,汇报资源,获取Task
Client
作业为单位
规划作业计算分布
提交作业资源到HDFS
最终提交作业到JobTracker
弊端:
JobTracker:负载过重,单点故障
资源管理与计算调度强耦合,其他计算框架需要重复实现资源管理
不同框架对资源不能全局管理
Hadoop 05_MapReduce1.0相关推荐
- hadoop 2.0 详细配置教程
作者:杨鑫奇 PS:文章有部分参考资料来自网上,并经过实践后写出,有什么问题欢迎大家联系我. update: 20130518 大家可以尝试下Ambari来配置Hadoop的相关环境 快速的部署Ha ...
- Hadoop 2.0(YARN/HDFS)学习资料汇总
本文档整理了迄今为止Hadoop 2.0(包括YARN和HDFS2)相关的一些学习资料,包括文档.技术博客.Hadoop书籍等,欢迎大家补充,我将持续更新这个页面. 1. PDF资料 (1)" ...
- Hadoop从0开始 (安装配置:转) (一) - 沐魇
之前一直在找安装教程 都是0.20版本的 弄了好久没有弄出来..我下载的是0.23.11 后来发现是新版跟旧版有很大的不同.官方文档都不更新简直是丧心病狂.. 今天终于找到新版的安装配置方法.多次失败 ...
- Apache Hadoop 3.0.0 GA版正式发布,可以部署到线上
今天凌晨 Apache Hadoop 3.0.0 GA 版本正式发布,这意味着我们就可以正式在线上使用 Hadoop 3.0.0 了!这个版本是 Apache Hadoop 3.0.0 的第一个稳定版 ...
- Hadoop 06_MapReduce2.0(YARN)
Hadoop YARN (MRv2) MapReduce2.0 MRv2:On YARN YARN:解耦资源与计算 ResourceManager -主,核心 -集群节点资源管理 NodeManag ...
- Hadoop 04_Hadoop2.0
Hadoop1.0的弊端导致人们再次改进技术 Hadoop 2.0产生背景 Hadoop 1.0中HDFS和MapReduce在高可用.扩展性等方面存在问题 HDFS存在的问题(2个) NameNo ...
- Hadoop 2.0 中的资源管理框架 - YARN(Yet Another Resource Negotiator)
1. Hadoop 2.0 中的资源管理 http://dongxicheng.org/mapreduce-nextgen/hadoop-1-and-2-resource-manage/ Hadoop ...
- Hadoop 2.0.0-alpha尝鲜安装和hello world
仅供测试学习的文章,不推荐在生产环境使用2.0,因为2.0采用YARN,hive,hbase,mahout等需要map/reduceV1的可能无法使用hadoop 2.0或者会出现意外情况. 5月23 ...
- 适用于Apache Hadoop 2.0 M5的Spring
Spring高兴地宣布了Spring for Apache Hadoop 2.0 M5里程碑版本,同时它们也越来越接近候选版本. 在Spring博客中 ,新版本2.0与1.0版本之间有很好的比较. 根 ...
最新文章
- 2018-2020年Gartner战略科技发展趋势一览!
- [Nhibernate]对象状态
- access 合并多行字符串_第20p,什么是字符串?Python中的str
- RIS实现系统的远程安装之三使用远程安装
- python3.7.2版本怎么安装ipython_Linux升级安装python2.7版本至python3.6版本,系统centos7...
- python循环结构语句_python控制语句---循环结构语句
- 读者诉苦:Redis 宕机,数据丢了,老板要辞退我
- go接收文件服务器,请教:html5批量文件上传,服务端go怎么接收多个文件?
- 用cxf编写基于spring的webservice之上篇
- 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_08.RequestMapping注解的作用
- (转)递归算法的时间复杂度终结篇与Master method
- Android gpuimage美颜滤镜,GPUImage图片美颜
- matlab中si是什么意思,Sitsang是什么意思
- MPP文件怎么打开?五种方法总有最合适!
- 由磁场数据和加速度数据计算初始姿态角
- 基于Python的指数基金量化投资 - 指数的净资产收益率计算
- AMCL代码详解(二)位姿初始化
- java-net-php-python-springboot学校在线作业考试系统计算机毕业设计程序
- 软件测试-黑盒测试方法(二)---正交实验法、场景图、错误推测法
- puts()函数详解
热门文章
- CodeForces - 1419E Decryption(质因子分解+构造)
- 洛谷 - P2770 航空路线问题(最大费用最大流+路径打印)
- HDU - 6393 Traffic Network in Numazu(线段树+LCA+树链剖分+并查集)
- php滚动公告源码,JavaScript_jquery垂直公告滚动实现代码,复制代码 代码如下: !DOCTYPE - phpStudy...
- 滚动图片广告_张韶涵霸屏兴发广场,户外LED大屏广告:投放价值在哪?
- 程序实现php文件上传,PHP实例:实现文件上传的程序源码_php
- UVA10173(求凸包的面积最小外接矩形)
- 反汇编最基础知识(段寄存器和寄存器的说明)
- NAT类型及检测方法
- WinDbg学习笔记(一)--认识WinDbg