CM记录-Hadoop参数调优
1.HDFS调优
a.设置合理的块大小(dfs.block.size)
b.将中间结果目录设置为分布在多个磁盘以提升写入速度(mapred.local.dir)
c.设置DataNode处理RPC的线程数(默认为3),大集群可适当加大点(dfs.datanode.handler.count)
d.设置NameNode能同时处理请求数(dfs.namenode.handler.count)为集群规模的自然对数lnN的20倍
2.YRAN调优
Yarn的资源表示模型Container,Container将资源抽象为两个维度,内存和虚拟CPU核(vcore)
map slot 与 reduce slot,任务槽不能混用,数量一定,不能动态分配资源
Yarn-Container兼容各种计算框架,动态分配资源,减少资源浪费
容器内存-yarn.nodemanager.resource.memory-mb
最小容器内存-yarn.scheduler.minimum-allocation-mb
容器内存增量-yarn.scheduler.increment-allocation-mb
最大容器内存-yarn.scheduler.maximum-allocation-mb
根据实际情况灵活调整,如物理机为128GB,那么容器内存要为100GB
容器虚拟CPU内核yarn.nodemanager.resource.cpu-vcores ---总量要考虑硬件,如双路四核,这里可以设置为10
最小容器虚拟CPU内核数量yarn.scheduler.minimum-allocation-vcores
容器虚拟CPU内核增量yarn.scheduler.increment-allocation-vcores
最大容器虚拟CPU内核数量yarn.scheduler.maximum-allocation-vcores
3.MapReduce调优
调优三大原则
a.增大作业并行程度---改变输入分片(input spilt)的大小,输入分片是个逻辑概念,是一个map Task的输入。在调优过程中,尽量让输入分片与块大小一样,这样就能实现计算本地化,减少不必要的网络传输。
计算公式为max(mapred.min.spilt.size,min(mapred.max.spilt.size,dfs.block.size))
mapred.min.spilt.size=1 ---最小分片大小
mapred.max.split.size=9223372036854775807 ---最大分片大小
dfs.block.size为块大小
b.给每个任务足够的资源
Map任务内存:mapreduce.map.memory.mb
Reduce任务内存:mapreduce.reduce.memory.mb
Map任务最大堆栈:mapreduce.map.java.opts.max.heap
Reduce任务最大堆栈:mapreduce.reduce.java.opts.max.heap
ApplicationMaster内存:yarn.app.mapreduce.am.resource.mb
c.在满足前两个条件下,尽可能地给shuffle(数据混洗-输入到输出整个过程)预留资源
最大洗牌连接:mapreduce.shuffle.max.connections
I/O排序内存缓存(MiB):mapreduce.task.io.sort.mb
I/O排序因子:mapreduce.task.io.sort.factor
洗牌期间并行传输的默认数量:mapreduce.reduce.shuffle.parallelcopies
压缩Map输出:mapreduce.map.output.compress
备注:其他调优参数参考官网hadoop默认配置,hadoop调优要深刻理解mapreduce
CM记录-Hadoop参数调优的更多相关文章
- hadoop 参数调优重点参数
yarn的参数调优,必调参数 28>.yarn.nodemanager.resource.memory-mb 默认为8192.每个节点可分配多少物理内存给YARN使用,考虑到节点上还 可能有其 ...
- 七、Hadoop学习笔记————调优之Hadoop参数调优
dfs.datanode.handler.count默认为3,大集群可以调整为10 传统MapReduce和yarn对比 如果服务器物理内存128G,则容器内存建议为100比较合理 配置总量时考虑系统 ...
- Hadoop参数调优
转自:http://blog.sina.com.cn/s/blog_6a67b5c50100vop9.html dfs.block.size 决定HDFS文件block数量的多少(文件个数),它会间接 ...
- emr hadoop 参数调优
set hive.merge.mapfiles=true; set hive.merge.mapredfiles=true; ; ; set hive.exec.compress.intermedia ...
- hadoop 性能调优与运维
hadoop 性能调优与运维 . 硬件选择 . 操作系统调优与jvm调优 . hadoop运维 硬件选择 1) hadoop运行环境 2) 原则一: 主节点可靠性要好于从节点 原则二:多路多核,高频 ...
- hadoop作业调优参数整理及原理(转)
1 Map side tuning参数 1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘.这中间的过程比较复杂,并且利用到了内 ...
- hadoop作业调优参数整理及原理【转】
1 Map side tuning参数 1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘.这中间的过程比较复杂,并且利用到了内 ...
- Hbase记录-client访问zookeeper大量断开以及参数调优分析(转载)
1.hbase client配置参数 超时时间.重试次数.重试时间间隔的配置也比较重要,因为默认的配置的值都较大,如果出现hbase集群或者RegionServer以及ZK关掉,则对应用程序是灾难性的 ...
- hadoop作业调优参数整理及原理
hadoop作业调优参数整理及原理 10/22. 2013 1 Map side tuning参数 1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并 ...
随机推荐
- HTML使用button的一个小坑
https://www.w3schools.com/TAGs/att_button_type.asp Definition and Usage The type attribute specifies ...
- 面象对象设计原则之二:开放封闭原则(Open-Closed Principle, OCP)
开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则.开闭原则由Bertrand Meyer于1988年提出,其定义如下: 开闭原则(Open-Closed Principle, ...
- shell获取帮助
一.內建命令与外部命令 1.內建命令 内建命令是 shell 程序的一部分,是一些比较简单的 Linux 系统命令,这些命令是写在bash源码的builtins里面的,由 shell 程序识别并在 s ...
- linux_查看磁盘与目录容量
一.查看磁盘容量命令df(report file system disk space usage) 终端运行 $ df 输出结果 我的物理主机上的 /dev/sda5 是对应着主机硬盘的分区,字母 a ...
- Highcharts之3D柱状图
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- python之json数据存储
# 数据存储:json.dump()和json.load() # date:2017-07-17 import json file_name = 'D:/json_file.txt' nums = [ ...
- NVIDIA面目生成器再做突破
导读 NVIDIA创建的AI系统“GAN”可以通过对图像数据库的学习,来随机生成超逼真人脸照片而一炮走红,经过长时间的研发与晚上目前这套系统已经有了极大的进步.除了可以自主学习之外,生成的内容逼真,让 ...
- BZOJ5101[POI2018]Powódź——并查集
题目描述 在地面上有一个水箱,它的俯视图被划分成了n行m列个方格,相邻两个方格之间有一堵厚度可以忽略不计的墙,水 箱与外界之间有一堵高度无穷大的墙,因此水不可能漏到外面.已知水箱内每个格子的高度都是[ ...
- BZOJ1131[POI2008]Sta——树形DP
题目描述 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 输入 给出一个数字N,代表有N个点.N<=1000000 下面N-1条边. 输出 输出你所找到的点,如果具有 ...
- ACG图片站\python爬虫\LAMP环境
最近突然对web很感兴趣,碰巧看到阿里云服务器学生价十块钱一个月,果断买了一个自己搭建了一个网站. 网址 这里 LAMP环境就搭建了好久,linux+apache2+mysql+php,都是开源的软件 ...