博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop Map/Reduce Overview
阅读量:7047 次
发布时间:2019-06-28

本文共 863 字,大约阅读时间需要 2 分钟。

Hadoop MapReduce是一个软件框架(framwork),这个架构的目的是方便程序员在大规模集群(可大到上千台结点)上处理超大规模数据(可多到数T),而且MapReduce的可靠性和fault-tolerant特性都很好。

一个MapReduce job 会把输入数据分割成独立的若干块,这些数据块由map tasks并行处理。MapReduce framework把map task的输出进行排序,作为reduce task的输入。通常job的输入和输出都被保存在文件系统中。Framework负责调度,监控这些任务,而且会重复执行那些失败的task。

一般情况下,计算集群和存储集群是一样的,也就是说,MapReduce framework和HDFS是在同一批集群上运行的。这样配置能够让framwork在已经有数据的nodes上面调度tasks,这样使得集群的带宽得到很好的利用。

MapReduce框架由以下组件组成:single master JobTracker,加上集群的每个node上运行着一个slave TaskTracker。Master的职责是调度并监控那些在slave上运行的task,同时对于失败的task,还要尝试着重新执行。Slave只需要简单的执行master分配来的task既可。

应用程序至少要制定输入输出的路径,并且实现map和reduce接口/抽象类。还有一些其他的配置,组成了job configuration。然后Hadoop job client把job(可执行的jar包等等)提交,并且配置JobTracker使得它把jar包以及配置文件传到slave上去,并且调度和监控tasks。

尽管Hadoop框架是用JavaTM 实现的,但是MapReduce应用程序却不一定非得用Java写。

  • 是一个MapReduce工具,它可以让使用者用任何可执行文件(例如shell)作为mapper/reducer来创建运行Jobs。
  • 是一套用C++实现的MapReduce API

转载地址:http://hlzol.baihongyu.com/

你可能感兴趣的文章
3.Java网络编程之IP
查看>>
数学之树
查看>>
JAVA CAS原理深度分析
查看>>
SQL里3个表的连接查询
查看>>
Java面试题汇总(一)
查看>>
编写带有点击特效的UIButton
查看>>
ASP.NET MVC下的异步Action的定义和执行原理[转]
查看>>
什么是软件架构(转)
查看>>
ASP.NET MVC 6 一些不晓得的写法
查看>>
CAE医疗综合视听中心管理系统
查看>>
混沌图像---三体的纠结
查看>>
TFS:TF30042 数据库已满 处理方法
查看>>
lecture13-BP算法的讨论和置信网
查看>>
【分享】博客美化(5)为博客或系统添加一个强大的评论系统
查看>>
21.allegro下鼠标形状设置[原创]
查看>>
白话经典算法系列之中的一个 冒泡排序的三种实现
查看>>
Xmanager Enterprise 4 使用说明
查看>>
DUBBO安装配置注意事项
查看>>
composite
查看>>
使用Boost Regex 的regex_search进行遍历搜索
查看>>