-大数据入门-2-Hadoop-课程整理

1.MapReduce

map 映射 行数不变

reduce 规约 行数变化       示例如MySQL中运用group by分组函数


2.版本

hadoop1.x    需部署进程  JobTrack     TaskTrack
hadoop2.x    不需要部署,提交到yarn平台,进行资源 、作业调度。

3.概念

作业 job application 应用
容器:Container          Yarn的组件,虚拟的概念 ,作任务计算的, 将一定的内存CPU :比如 1G 1vcore资源抽象为一个小房间,来运行任务。

机器的物理配置

   正常服务器 假设64G  ,安装完系统消耗掉2G,还有62G
   不要全部分配给资源计算,会引发ooM保护机制,需预留15~20%空间
         62-50= 剩下12G :DN 4G + NM 1G=5G         真正预留空间 7G
   总资源计算总内存          62*80%=50G     

理论

yarn.nodemanager.resource.memory-mb      总资源计算总内存:50
yarn.scheduler.minimum-allocation-mb      1
increment    递增参数      
yarn.scheduler.maximum-allocation-mb    不设默认	8192      (50)

container的个数的范围:1~50

CPU

vcores 虚拟core  yarn提出的
物理core:vcores=1:2       16-->32vc

yarn.nodemanager.resource.cpu-vcores:32    表示该节点上YARN可使用的虚拟CPU个数,默认是8,注意,目前推荐将该值设值为与物理CPU核数数目相同。如果你的节点CPU核数不够8个,则需要调减小这个值,而YARN不会智能的探测节点的物理CPU总数。

yarn.scheduler.minimum-allocation-vcores	1	 单个任务可申请的最小虚拟CPU个数,默认是1,如果一个任务申请的CPU个数少于该数,则该对应的值改为这个数。

yarn.scheduler.maximum-allocation-vcores	32  单个任务可申请的最多虚拟CPU个数,默认是4。
container的个数的范围:1~32

4资源调优

生产案例:

资源最大化利用:并不是100利用,而是让剩余越来越少,减少资源浪费

 物理core:vcores=1:2       16-->32vc
 
yarn.nodemanager.resource.memory-mb         50    固定经验值
 yarn.nodemanager.resource.cpu-vcores:32
 
yarn.scheduler.minimum-allocation-mb          2     (25)
 yarn.scheduler.minimum-allocation-vcores      2  (16)
 
yarn.scheduler.maximum-allocation-mb    8         (6)
yarn.scheduler.maximum-allocation-vcores	4         (8)     固定经验值

最大vcores:12vc~24vc

依据cloudera公司评测:一个container的core 正常最大不要超过5 ,不超过5性能最优。

1.只见过内存不够的时候会自动累加,没有见过vcore不够的时候会自动累加。因为是启动的时候指定(spark executor-cores:)参数控制的

2.设定的时候:以内存为主 ,cpu的vcore最大不超过5性能最优。

3裸机站在内存的角度思考。

4云主机的就要内存和CPU两者都考虑,剩余法。

yarn.nodemanager.resource.memory-mb         50    固定经验值
 yarn.nodemanager.resource.cpu-vcores:24          vcores
 
yarn.scheduler.minimum-allocation-mb          4     ( 12)
 yarn.scheduler.minimum-allocation-vcores      2    (12)
 
yarn.scheduler.maximum-allocation-mb    8           ( 6)
yarn.scheduler.maximum-allocation-vcores	4       (6)    固定经验值

 vcores:6vc~12vc

你可能感兴趣的:(若泽大数据=Hadoop)