Hadoop的核心组件之er: mapreduce

目前的计算框架
mapreduce
spark
storm
flink(阿里)

mapreduce的核心理念:

移动计算, 而不是移动数据(reducetask中仍然有移动数据的情况)

分而治之

split: 切分hadoop上传的block

map: 对split后的结果进行分组

shaffer: 对map后的键值对进行排序, 分组, 合并, (根据键)x

shuffle过程详解:

、    Shuffle
a) 分区(partition,HashPartition:根据key的hashcode值 和 Reduce的数量 模运算),可以自定义分区,运算速度要快。一定要解决数据倾斜和reduce的负载均衡。
b) 排序:默认按照字典排序。WriterCompartor(比较)
c) 合并:减少当前mapper输出数据,根据key相同(比较),把 value 进行合并。
d) 分组(key相同(比较),value组成一个集合)(merge)

reduce: 对结果进行计算, 输出

执行过程并不是非常严格, 就是切分后可能不会等切分完成, 就开始map的过程了

yarn安装

hadoop2.x以后, 计算框架放在在yarn上

1, yarn-site.xml

 <property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarncluster</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>192.168.208.106</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>192.168.208.107</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>192.168.208.106:,192.168.208.107:,192.168.208.108:</value>
</property>

2, mapred-stie.xml, 把mapreduce的环境放在yarn中

    <property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

3, yarn-site.xml, 制定mapreduce运行在哪个框架上

    <property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

NodeManager 和 Datanode在一块, 不需要配置, 自动分辨并启动

4, 启动, 在NN上启动

start-yarn.sh

5, 手动启动备用ResourceManger

yarn-daemon.sh start resourcemanager

6, 访问

wenbronk.hdfs.com:/cluster

打开standby, 会立马重定向到active

全部启动执行

start-all.sh

12-mapReduce的简介和yarn搭建的更多相关文章

  1. 【转】ibatis的简介与初步搭建应用

    [转]ibatis的简介与初步搭建应用 一.ibatis的简介 ibatis是什么东西就不介绍了,自己去找谷老师. 这里讲下自己的使用体会.之前自己学过Hibernate,是看尚学堂的视频教学的,看完 ...

  2. Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程

    Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程Linux版本:Ubuntu 12.04 内核版本:Linux 3.5.0 交叉编译器版本:arm-linux-gcc-4. ...

  3. 简介vsftpd及搭建配置 关闭selinux 不能创建文件

    简介vsftpd及搭建配置一.简介 FTP(文件传输协议)全称是:Very Secure FTP Server. Vsftpd是linux类操作系统上运行的ftp服务器软件. vsftp提供三种登陆方 ...

  4. Hadoop MapReduce八大步骤以及Yarn工作原理详解

    Hadoop是市面上使用最多的大数据分布式文件存储系统和分布式处理系统, 其中分为两大块分别是hdfs和MapReduce, hdfs是分布式文件存储系统, 借鉴了Google的GFS论文. MapR ...

  5. 1.7-1.12 MapReduce Wordflow

    一.案例运行MapReduce Wordflow 1.准备examples [root@hadoop-senior oozie-4.0.0-cdh5.3.6]# pwd /opt/cdh-5.3.6/ ...

  6. 简介及环境搭建跑通Hello

    简介及环境搭建跑通Hello Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开 ...

  7. 石川es6课程---1-2、ES6简介

    石川es6课程---1-2.ES6简介 一.总结 一句话总结: 从ECMAScript的历史发展来看,太顺了的时候总会遇到一挫折,比如ecma4 1.ECMAScript 和 JavaScript关系 ...

  8. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  9. mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid

    15/07/01 20:14:41 FATAL containermanager.AuxServices: Failed to initialize mapreduce.shuffle java.la ...

随机推荐

  1. 16、Docker的网络-host和none

    16.1 none   创建一个容器使用网络none: [root@docker ~]# docker run -d --name test1 --network none busybox /bin/ ...

  2. cocos studio

    用了几天,和之前用的cocos creator以及unity的编辑器一对比,很多地方都挺反人类的哈... 拖拽和放大场景元素竟然还要切换一下编辑模式... 移动场景元素竟然没有单独控制x或者y方向的移 ...

  3. Spring框架事务支持模型的优势

    全局事务 全局事务支持对多个事务性资源的操作,通常是关系型数据库和消息队列.应用服务器通过JTA管理全局性事务,API非常烦琐.UserTransaction通常需要从JNDI获取,意味着需要与JND ...

  4. 挂载Linux云主机硬盘到本地计算机

      现在移动硬盘已经是每个人的生活必需品了,当然网络也是我们生活的必需品,我们现在就是要用网络存储代替硬盘存储,当然再实际使用过程中需要考虑到以下两个问题: 网络延迟 云主机磁盘IO   以上两个关键 ...

  5. 执行Docker命令报错解决办法

    shim error: docker-runc not installed on system   服务器重启以后,执行docker命令报以上错误,解决办法如下: cd /usr/libexec/do ...

  6. c3p0----获取不到链接

    最近别人的项目,因为经常获取不到链接出错,我好奇也就跟着摆弄了一把,使用的插件是:c3p0+spring+ibatiS,当然事务管理部分也配置上了配置如下: <bean id="dat ...

  7. Send or receive files via Xshell

    1. install lrzsz $ sudo apt-get install lrzsz 2. If you want to send file from your pc to pi, just d ...

  8. linux系统编程之文件与IO(四):目录访问相关系统调用

    1. 目录操作相关的系统调用     1.1 mkdir和rmdir系统调用     1.1.1 实例     1.2 chdir, getcwd系统调用     1.2.1 实例     1.3 o ...

  9. Java编程中获取键盘输入实现方法及注意事项

    Java编程中获取键盘输入实现方法及注意事项 1. 键盘输入一个数组 package com.wen201807.sort; import java.util.Scanner; public clas ...

  10. max渲染通道元素的范例

    renderElementManager = MaxOps.GetCurRenderElementMgr() renderElementManager.Removeallrenderelements( ...