最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Hadoop多Job并行處理的實例詳解

 更新時間:2017年10月18日 10:16:39   作者:回首凡塵不做仙  
這篇文章主要介紹了Hadoop多Job并行處理的實例詳解的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下

Hadoop多Job并行處理的實例詳解

有關Hadoop多Job任務并行處理,經(jīng)過測試,配置如下:

首先做如下配置:

1、修改mapred-site.xml添加調度器配置:

<property>
 <name>mapred.jobtracker.taskScheduler</name>
 <value>org.apache.hadoop.mapred.FairScheduler</value>
</property>

2、添加jar文件地址配置:

<property>
 <name>hadoopTest.jar</name>
 <value>所生成jar的地址</value>
</property>

Java基本代碼如下:

// 獲取各個Job,有關Job的創(chuàng)建,這里就不貼上來了。
Job job_base = (Job) 。。。;
Job job_avg = (Job) 。。。;
Job job_runCount = (Job) 。。。;
Job job_activeUser = (Job) ....;


job_base.setJarByClass(CapuseDateTimerTask.class);
job_avg.setJarByClass(CapuseDateTimerTask.class);
job_runCount.setJarByClass(CapuseDateTimerTask.class);
job_activeUser.setJarByClass(CapuseDateTimerTask.class);


// 執(zhí)行完job_base才開始并行以下三個Job;
if (job_base.waitForCompletion(true)) {
FileUtil.hdfsFileHandle(jobBase);


// 并行Job
job_avg.submit();
job_runCount.submit();
job_activeUser.submit();
}

boolean bln1 = job_avg.isComplete();
boolean bln2 = job_runCount.isComplete();
boolean bln3 = job_activeUser.isComplete();


// 計算Job是否完成
while (!bln1 || !bln2 || !bln3) {
bln1 = job_avg.isComplete();
bln2 = job_runCount.isComplete();
bln3 = job_activeUser.isComplete();
}

最后將這些代碼組裝至Main方法,使用Hadoop執(zhí)行命令運行:

hadoop jar jar包名稱  方法入口所在的類

如:

hadoop jar hadoopTest.jar ch03.test Test

可以通過50030端口來監(jiān)控Job的并行狀態(tài),這里就不多說了??!

解釋:

1、配置Jar地址可以解決打包所生成的jar包后,運行時出現(xiàn)ClassNotFound的問題;

2、給多個Job設定setJarByClass,經(jīng)測試,如果不設定此類,運行時會出現(xiàn)ClassNotFound錯誤,其中CapuseDateTimerTask為Main方法所在的類名;

3、waitForCompletion與submit方法是有區(qū)別的,waitForCompletion是串行,而submit是并行,正是因為submit是并行所以后續(xù)的代碼操作需要取其執(zhí)行是否完成的狀態(tài)來做判斷處理即:isComplete();

4、以上Job采用的是:org.apache.hadoop.mapreduce.Job

以上代碼操作在單機/集群上測試都通過!

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • java學生信息管理系統(tǒng)源代碼

    java學生信息管理系統(tǒng)源代碼

    這篇文章主要為大家詳細介紹了java學生信息管理系統(tǒng)源代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • PowerJob的ProcessorLoader工作流程源碼解讀

    PowerJob的ProcessorLoader工作流程源碼解讀

    這篇文章主要為大家介紹了PowerJob的ProcessorLoader工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • 在Elasticsearch中添加字段的詳細步驟

    在Elasticsearch中添加字段的詳細步驟

    在ES中,增加字段相對比較容易,因為ES支持動態(tài)映射(Dynamic Mapping),這篇文章主要給大家介紹了關于在Elasticsearch中添加字段的詳細步驟,文中給出了詳細的代碼實例,需要的朋友可以參考下
    2024-07-07
  • Java設計模式之狀態(tài)模式(State模式)介紹

    Java設計模式之狀態(tài)模式(State模式)介紹

    這篇文章主要介紹了Java設計模式之狀態(tài)模式(State模式)介紹,本文講解了何時使用狀態(tài)模式、如何使用狀態(tài)模式等內容,需要的朋友可以參考下
    2015-03-03
  • java json不生成null或者空字符串屬性(詳解)

    java json不生成null或者空字符串屬性(詳解)

    下面小編就為大家?guī)硪黄猨ava json不生成null或者空字符串屬性(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • mybatis?collection和association的區(qū)別解析

    mybatis?collection和association的區(qū)別解析

    這篇文章主要介紹了mybatis?collection解析以及和association的區(qū)別,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • 基于Java實現(xiàn)一個高效可伸縮的計算結果緩存

    基于Java實現(xiàn)一個高效可伸縮的計算結果緩存

    這篇文章將通過對一個計算結果緩存的設計迭代介紹,分析每個版本的并發(fā)缺陷,并分析如何修復這些缺陷,最終完成一個高效可伸縮的計算結果緩存,感興趣的小伙伴可以了解一下
    2023-06-06
  • 從零開始:快速入門SpringBoot注解的精髓

    從零開始:快速入門SpringBoot注解的精髓

    Spring?Boot是一個用于快速構建基于Spring框架的應用程序的開源框架,它通過使用注解來簡化配置和開發(fā)過程,使開發(fā)人員能夠更加專注于業(yè)務邏輯的實現(xiàn),Spring?Boot提供了許多注解,用于定義和配置應用程序的各個方面,需要的朋友可以參考下
    2023-10-10
  • 深入探究Java線程不安全的原因與解決

    深入探究Java線程不安全的原因與解決

    線程不安全這個問題,一般在學Java時,我們老師會讓我們背誦一段長長的話。"當不同線程同時能訪問同一個變量時,可能會導致線程不安全"。實際上,這句話重點想突出的只有原子性。而我們往往考慮線程不安全的原因,會從三方面進行考慮:就是原子性,可見性,有序性
    2022-04-04
  • Spring?Get請求與post請求的實現(xiàn)

    Spring?Get請求與post請求的實現(xiàn)

    在Spring中,GET請求和POST請求是兩種常見的HTTP請求方法,用于與服務器進行交互,本文詳細的介紹一下Spring?Get請求與post請求的實現(xiàn),感興趣的可以了解一下
    2023-10-10

最新評論

衢州市| 含山县| 隆林| 札达县| 石渠县| 武功县| 武冈市| 潼关县| 息烽县| 澎湖县| 南丹县| 全南县| 义乌市| 繁峙县| 沙田区| 始兴县| 建阳市| 卢龙县| 蓬溪县| 从化市| 张家界市| 泌阳县| 达拉特旗| 大新县| 麦盖提县| 博客| 通海县| 军事| 金湖县| 邹平县| 平塘县| 任丘市| 宝山区| 虞城县| 宁晋县| 金山区| 舒城县| 比如县| 湖南省| 宜章县| 岳普湖县|