[英]Java MapReduce Counters - Oozie
Java應用程序在Hadoop集群中作為map-reduce任務與單個Mapper任務一起執行。 如果java mapreduce作業(不是配置單元或任何其他作業,只是直接mapreduce作業)是oozie的一部分,我們將獲得一個單獨的mapper啟動器,並且實際的mapreduce作業將獨立運行。 那么,有沒有辦法將啟動器和實際的mapreduce作業鏈接起來? 像使用啟動器jobid獲取運行的實際操作的jobid? 有什么命令要知道嗎?
我們可以從以下日志鏈接中獲取任何子ID的啟動器ID:
http://<rm httpaddress:port>/ws/v1/history/mapreduce/jobs/<jobid>/jobattempts
在那里,我們得到一個包含日志鏈接的xml。 如果我們通過該鏈接中的syslog進行解析,我們將得到一個類似
Service: job_
使用此正則表達式找出啟動器ID。 如果有啟動器,那么我們可以從這里獲取它。(即使是oozie工作流中的java操作)實際的行也將是這樣的
INFO [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Kind: mapreduce.job, Service: <jobid>
Service:
之后的Jobid是啟動器Job ID
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.