xml地图|网站地图|网站标签 [设为首页] [加入收藏]

大数目——MapReduce

来源:http://www.ruibiaowang.com 作者:互联网发展研究 人气:100 发布时间:2019-10-25
摘要:原标题:大数据——MapReduce ====================== MapReduce实现 ====================== MapReduce相符PB级以东京量数据的离线管理MapReduce不专长什么 Input: 一系列key/value对 实时总括 客商提供七个函数

原标题:大数据——MapReduce

====================== MapReduce实现 ======================

MapReduce相符PB级以东京量数据的离线管理MapReduce不专长什么

Input: 一系列key/value对

实时总括

客商提供七个函数实现: 

像MySQL同样,在皮秒级可能秒级内回到结果

  map(k,v) ->list(k1,v1) 

流式计算

  reduce(k1, list(v1)) -> v2 

MapReduce的输入数据集是静态的,不能够动态变化

(k1,v1) 是中间key/value结果对

MapReduce自己的准备特征决定了数据源必得是静态的

Output:一系列(k2,v2)对

DAG计算

====================== MapReduce编制程序模型 ======================

三个应用程序存在依靠关系,后一个应用程序的输入为前一个的出口

MapReduce将作业的全部运转进程分成多个阶段: Map阶段和Reduce阶段

MapReduce编制程序模型

Map阶段由必然数量的Map Task组成

MapReduce将作业job的所有事运营进程分成八个阶段:Map阶段和Reduce阶段

  输入数据格式拆解深入分析:InputFormat

Map阶段由必然数额的Map Task组成

  输入数据管理:Mapper

输入数据格式拆解分析:InputFormat

  数据分组:Partitioner

输入数据管理:Mapper

Reduce阶段由自然数量的Reduce Task组成 

数据分组:Partitioner

  数据远程拷贝

Reduce阶段由自然数额的Reduce Task组成

  数据根据key排序

多少远程拷贝

  数据管理:Reducer

数量依照key排序

  数据输出格式:OutputFormat

多少管理:Reducer

图片 1

多少输出格式:OutputFormat

====================== MapReduce编制程序模型 ======================

InputFormat

Map阶段 ------------->

文件分片(InputSplit)方法

InputFormat(默认TextInputFormat)

拍卖跨行难点

Mapper

将分片数据深入分析成key/value对

Combiner(local reducer)

暗许完成是TextInputFormat

Partitioner

TextInputFormat

Reduce阶段 ------------->

Key是行在文件中的偏移量,value是行内容

Reducer

若行被截断,则读取下二个block的前多少个字符

OutputFormat(默认TextOutputFormat)

Split与Block

 

Block

HDFS中渺小的数目存款和储蓄单位

默认是64MB

Spit

MapReduce中型小型小的的总计单元

暗中同意与Block生龙活虎大器晚成对应

Block与Split

Split与Block是对应涉及是恣意的,可由客商调控

Combiner

Combiner可做看local reducer

联合相通的key对应的value(wordcount例子)

通常与Reducer逻辑相似

好处

减去Map Task输出数据量(磁盘IO)

减掉Reduce-Map互连网传输数据量(网络IO)

何以科学利用

结果可叠合

Sum(YES!),Average(NO!)

Partitioner

Partitioner决定了Map Task输出的每条数据交到哪个Reduce Task管理

暗中认可达成:hash(key) mod 哈弗

R是Reduce Task数目

允许客商自定义

过多气象需自定义Partitioner

诸如“hash(hostname(URAV4L)) mod ENCORE”确定保障同等域名的网页交给同贰个Reduce Task管理

Map和Reduce两阶段

Map阶段

InputFormat(默认TextInputFormat)

Mapper

Combiner(local reducer)

Partitioner

Reduce阶段

Reducer

OutputFormat(默认TextOutputFormat)

MapReduce编制程序模型—内部逻辑

图片 2

MapReduce编制程序模型—外界物理结构

图片 3

MapReduce 2.0架构

图片 4

Client

与MapReduce 1.0的Client相通,客商通过Client与YASportageN交互,提交MapReduce作业,查询作业运转情形,管理作业等。

MRAppMaster

功用肖似于 1.0中的JobTracker,但不肩负财富管理;

意义包罗:职责划分、财富申请并将之三次分配个Map Task和Reduce Task、职责情状监控和容错。

MapReduce 2.0容错性

MRAppMaster容错性

要是运维退步,由YA安德拉N的ResourceManager担负重新起动,最多种启次数可由客商安装,私下认可是2次。风度翩翩旦超越最高重启次数,则作业运转退步。

Map Task/Reduce Task

Task周期性向MRAppMaster陈说心跳;

生机勃勃旦Task挂掉,则MRAppMaster将为之重新申请财富,并运维之。最多重复运维次数可由顾客设置,默许4次。

数码本地性

怎么着是数额本地性(data locality)

假使职责运转在它将处理的数量所在的节点,则称该职分具备“数据本地性”

本土性可制止跨节点或机架数据传输,升高运转效能

数码本地性分类

同节点(node-local)

同机架(rack-local)

其他(off-switch)

测算实施机制

学业做到时间决定于最慢的职分完毕时间

贰个功课由若干个Map职分和Reduce职务构成

因硬件老化、软件Bug等,某个职责恐怕运转超级慢

猜度试行机制

察觉拖后腿的职责,比方有些职务局转速度远慢于职分平均速度

为拖后腿职责运行三个备份职分,同一时间运营

什么人先运转完,则应用什么人的结果

不可能启用估计试行机制

任务间存在严重的载荷偏斜

特殊任务,比方职责向数据库中写多少

常见MapReduce应用场景

轻易的多少总结,比方网址pv、uv计算

寻觅引擎建索引 (mapreduce发生的原因)

海量数据检索

复杂数据拆解解析算法完结

聚类算法

分类算法

推荐算法

图算法归来微博,查看越来越多

主要编辑:

本文由澳门新葡萄京娱乐网站发布于互联网发展研究,转载请注明出处:大数目——MapReduce

关键词:

上一篇:滥用读写通话记录权限,强制索权

下一篇:没有了

最火资讯