Hadoop2.6.0版本MapReudce示例之WordCount(二)

《Hadoop2.6.0版本MapReudce示例之WordCount(一)》之后,我们继续看MapReduce的WordCount示例,看看如何监控作业运行或查看历史记录,以及作业运行时的文件目录及列表。

        1、监控作业运行或查看历史记录

        在WordCount的输出内容中,有这么一句:The url to track the job: http://server2:8088/proxy/application_1459913635503_0004/,这个是追踪作业运行的意思,登录后,可以查看Job整体情况、配置信息Configuration、Map Tasks情况、Reduce Tasks情况、Job计数器Counters、作业历史JobHistory等情况,分别如下图所示:

        1.1、Job整体情况

        Job整体情况包括作业名、提交用户名、作业队列、作业状态、提交时间、开始时间、完成时间、耗时、平均Map耗时、平均Shuffle耗时、平均合并耗时、平均聚合耗时、Map、Reduce任务各自总数及完成数、Map、Reduce任务尝试运行各自总数、失败数、杀死数、成功数等内容。

        1.2、配置信息Configuration

        1.3、Map Tasks情况

        Map Tasks情况包括Map Task的Task名称name、Task状态state、Task整体开始时间Start Time、Task整体完成时间Finish Time、Task整体耗时Elapsed Time、成功运行尝试Successful Attempt开始时间Start Time、成功运行尝试Successful Attempt完成时间Finish Time、成功运行尝试Successful Attempt耗时Elapsed Time等。

        我们知道,MapReduce的Task的每次尝试运行,称为Task Attempt,并且MapReduce有推测执行原理,对于拖后腿的Map Task,会尝试同时运行多个任务运行尝试Attempt,哪个先完成就用哪个,并且,即便没有推测执行原理,任务也很有可能运行失败,为了确保高容错性,对于失败任务还是需要多次尝试运行直到成功的。

        1.4、Reduce Tasks情况

        Reduce Tasks情况

        1.5、Job计数器Counters

        1.6、作业历史JobHistory

        2、作业运行时的文件目录及列表

        MapReduce的作业Job在运行时,会将配置文件、Jar等上传至HDFS指定工作目录,下面我们看下这个工作目录的情况。针对在Yarn上运行的MapReduce作业,Job运行的指定工作目录这样被定义的:

        参数yarn.app.mapreduce.am.staging-dir指定的路径/作业所属用户user/.staging/作业ID

        参数yarn.app.mapreduce.am.staging-dir未配置的话,默认为/tmp/Hadoop-yarn/staging;通过上面的作业查看中配置信息得知,本例中参数配置值为/user,如图所示:

        而作业所属用户取自作业参数mapreduce.job.user.name,本例中参数配置值为hdfs,如图所示:

        最后一个作业ID为job_1459913635503_0005(请原谅,不是本例的JobId,因为之前没有专门截图,所以又运行了一次示例,产生了一个新的JobId)

        所以,完整的作业工作目录为/user/hdfs/.staging/job_1459913635503_0005,查看路径下的文件列表,如图所示:

        其中,job.jar是执行job任务的那个jar文件,job.split是分片信息,job.splitmetainfo是分片元数据信息,job.xml是配置信息。

posted @ 2016-06-03 15:07  吉日木图  阅读(190)  评论(0编辑  收藏  举报