在cdh执行hive聚合数据的脚本时,发现cpu及资源池时利用率比较低,执行脚本的效率不高,脚本执行一次要16小时,严重不满足应用需求。
2.分析经过查看日志及分析cdh环境状态图表,发现集群资源没有充分利用,脚本执行时,cpu及IO都没有达到使用峰值,后来发现可能是配置的问题。
3.yarn参数配置说明yarn.scheduler.minimum-allocation-mb 分配给AM单个容器可申请的最小内存 yarn.scheduler.maximum-allocation-mb 分配给AM单个容器可申请的最大内存 yarn.nodemanager.resource.memory-mb 节点最大可用内存 yarn.nodemanager.vmem-pmem-ratio 虚拟内存率,默认2.1 mapreduce.map.memory.mb 分配给map Container的内存大小 mapreduce.reduce.memory.mb 分配给reduce Container的内存大小 mapreduce.map.java.opts 运行map任务的jvm参数,如-Xmx,-Xms等选项 mapreduce.reduce.java.opts 运行reduce任务的jvm参数,如-Xmx,-Xms等选项 yarn.scheduler.minimum-allocation-mb:最小可申请内存量,默认是1024 yarn.scheduler.maximum-allocation-mb:最大可申请内存量,默认是8096 yarn.scheduler.minimum-allocation-vcores:最小可申请CPU数,默认是1 yarn.scheduler.maximum-allocation-vcores:最大可申请CPU数,默认是44.参数修改
根据自己服务器参数,我选择配置如下:
mapreduce.map.memory.mb = 2 mapreduce.reduce.memory.mb = 2 yarn.scheduler.minimum-allocation-vcores = 4



