JobClient應用概述

一、應用背景

由於在設計中有一個模塊是對Job的管理,所以,在這裏我採用了JobClinet來進行簡單的控制。

二、應用點

JobClient指的是org.apache.hadoop.mapred.JobClient這個類。裏面有不少的方法,我這裏列舉一些我用到的和一些需要注意的方法。

1、JobClient的實例化。這裏有2中方法,一種是new JobClient(new JobConf);另外一種是實例化IP地址和端口。

2、通過JobClient獲取Job列表。

JobClient.jobsToComplete()返回沒有完成和沒有失敗的Job。換句話說就是在運行的Job。

JobClient.getAllJobs()返回所有的Job,不管是失敗還是成功的。

3、獲取JobID

JobID是一個Job的唯一標識,如果要獲取指定的JobID,那麼需要有根據,例如UserName。我這裏是通過User來獲取JobID。方法是遍歷Job,然後找到名稱相匹配的Job,然後取出ID。

4、通過線程阻塞的模式來等待Job執行完成。

JobClient.getJob(JobID).waitForCompletion();

三、總結

1、JobClient的應用很簡單,總的說來就那麼幾種,細緻看一下API就會大部分的應用。

2、通過JobClient還可以對task進行監控,也可以獲取Job的進度百分比。

3、寫的比較簡單,寫的不對或是有疑問可以發郵件[email protected]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章