一、查询MapReduce任务。
例:调用Hadoop的示例程序包,采用Quasi-Monte Carlo算法来估算PI的值。命令如下:
hadoop jar /usr/local/hadoop-2.6.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar pi 10 100
其中,命令后面的两个参数代表Map数量与每个Map的测算次数,数值越大,结果精准度越高。
在运行过程中,打开集群的资源管理器的监控服务主界面(http://master:8088/),再单击左侧菜单栏中的“Nodes”,也可以直接访问链接:“http://master:8088/cluster/nodes"进入Nodes of the cluster主页面
当开始运行时,内存会发生变化
此时,可用内存被使用了5.5GB,剩余512MB,可用CPU核心共3个,全被使用。由此可以看出,这个MapReduce任务占用了当前集群的大部分计算资源。
点击左侧菜单栏的”Applications“,显示的结果如图
可以看出第一个就是我们刚才运行的MapReduce任务,名称为QuasiMonteCarlo,运行完状态显示FINISHED,正在运行时状态则为RUNNING,当状态为ACCEPTED时,表示已被资源管理器YARN接受,等待分配计算资源,只有当计算资源满足后,才会开始执行。单击这个任务ID可以获取此任务更详细的信息
二、中断MapReduce任务
对于已经提交的MapReduce任务,在某些特殊情况下需要中断,比如发现程序有异常,某个任务执行时间过长、占用大量计算资源等。而执行中断的操作就比较简单了。
例:统计本地目录上/root/install.log文件中所有单词的平均长度,在此过程进行中断。
命令行如下:hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar wordmean /user/root/install.log /user/root/wordmean
在运行过程中,点击对应的ID超链接,再点击界面上的Kill Application选项,弹出对话框点击确定即可完成中断。
如图:此时状态(YarnApplicationState)为KILLED表明已被中断。
在Application界面中,此任务(第二个)的状态也已经显示KILLED(被中断)。
以上便是我自行总结的关于管理MapReduce任务的各种操作,希望可以给大家带来帮助!



