1.3 MapReduce版本:
hadoop jar app.jar -D mapreduce.job.queuename=root.etl.distcp -D mapreduce.job.priority=HIGH
2、动态调整
如果是已经在运行中的任务,可以动态调整任务所属队列及其优先级。
2.1 调整优先级
hadoop1.0及以下版本:hadoop job -set-priority job_201707060942_6121418 VERY_HIGH
hadoop2.0及以上版本:yarn application -appId application_1478676388082_963529 -updatePriority VERY_HIGH
2.2 动态调整队列
hadoop2.0及以上版本可以通过下面命令
yarn application -movetoqueue application_1478676388082_963529 -queue root.etl
其中application_1478676388082_963529为yarn applition id,queue后跟的是需要move到的队列。
1. 查看spark shuffle时的数据倾斜,语句中的100是分区数量, deviceid是分区字段, 最终会得出每个分区对应的记录数
select partitionNum,count(1) from (select (hash(deviceid) % 100) + (if ((hash(deviceid) % 100) < 0, 100,0)) partitionNum from ota_events where logdate='20171022') a group by partitionNum;
2.然后根据偏斜的数据量级, 使用如下语句找出偏斜的字段值,
select deviceid,count(1) from ota_events where logdate='20171022' group by deviceid having count(1) > 100000;
查看集群存储资源等
hadoop fs -count -h hdfs://namenode.dfs.shbt.qihoo.net:9000/home/hdp-360osd/*