




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Hadoop大數(shù)據(jù)項目開發(fā)——單詞統(tǒng)計分析代碼-Driver實現(xiàn)目錄content02Reducer類的編寫01Mapper類的編寫03Driver類的編寫Driver類的編寫編寫完Mapper類和Reducer類之后,需要編寫Driver類,啟動程序。自定義WordCountdDriver類指定了輸入文件位置輸入文件格式類自定義Mapper類自定義Reducer類自定義OutputFormat類及輸出文件的位置;WordCountDriver類的代碼如下:本案例中的測試數(shù)據(jù)位于“G:/wordcount/input”的文件夾中。Driver類的編寫importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.fs.Path;importorg.apache.hadoop.io.IntWritable;importorg.apache.hadoop.io.Text;importorg.apache.hadoop.mapreduce.Job;importorg.apache.hadoop.mapreduce.lib.input.FileInputFormat;importorg.apache.hadoop.mapreduce.lib.output.FileOutputFormat;publicclassWordCountDriver{ publicstaticvoidmain(String[]args)throwsException{ //Job Jobjob=Job.getInstance(); //1、封裝參數(shù),驅(qū)動類對應(yīng)的字節(jié)碼對象 job.setJarByClass(WordCountJob.class); //2、封裝參數(shù),job調(diào)用Mapper和Reducer實現(xiàn)類 job.setMapperClass(WordCountMapper.class); job.setReducerClass(WordCountReducer.class); //3、封裝參數(shù),job調(diào)用的Mapper和Reducer實現(xiàn)類中key和value數(shù)據(jù)類型Driver類的編寫 //3、封裝參數(shù),job調(diào)用的Mapper和Reducer實現(xiàn)類中key和value數(shù)據(jù)類型 job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(IntWritable.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class); //4、封裝參數(shù),處理的數(shù)據(jù)和最終結(jié)果數(shù)據(jù)路徑 FileInputFormat.setInputPaths(job,newPath("G:\\wordcount\\input"));//G:\\wordcount\\input為文件所存放的路徑 FileOutputFormat.setOutputPath(job,newPath("G:\\wordcount\\output"));//G:\\wordcount\\output為文件中單詞出現(xiàn)的次數(shù)。 //5、可以設(shè)置啟動的reduce數(shù)量 job.setNumReduceTasks(2); //6、提交job給YARN booleanres=job.waitForCompletion(true); System.exit(res?0:-1); }}Driver類的編寫上述代碼中,setJarByClass(WordCountJob.class)方法指定job調(diào)用的驅(qū)動類;setMapperClass(WordCountMapper.class)方法和setReducerClass(WordCountReducer.class)方法指定job調(diào)用的Mapper和Reducer實現(xiàn)類;setMapOutputKeyClass(Text.class)方法、setMapOutputValueClass(IntWritable.class)方法、setOutputKeyClass(Text.class)方法和setOutputValueClass(IntWritable.class)方法指定job調(diào)用的Mapper和Reducer實現(xiàn)類中key和value數(shù)據(jù)類型;FileInputFormat.setInputPath和FileOutputFormat.setOutputPath指定處理的數(shù)據(jù)和最終結(jié)果數(shù)據(jù)路徑;提交job給YARN。Driver類的編寫處理的數(shù)據(jù)來自于G:/wordcount/input文件夾,最終輸出結(jié)果位于G:/wordcount/output文件夾,運行結(jié)果文件名如圖所示:Driver類的編寫在Windows10下運行MapReduce程序,必須在Windows10操作系統(tǒng)上配置Hadoop的Hadoop_HOME和Path路徑。運行結(jié)果如圖所示:課外拓展在上面代碼中,實現(xiàn)了本地測試功能,處理的數(shù)據(jù)來源本地,但是實際生產(chǎn)環(huán)境中,數(shù)據(jù)位于HDFS上,那么該如何解決?本地直接提交給集群運行生成Jar包提交給YARN運行課外拓展System.setProperty("HADOOP_USER_NAME","hadoop");Configurationconf=newConfiguration();//設(shè)置job運行時要訪問的默認(rèn)文件系統(tǒng)conf.set("fs.defaultFS","hdfs://hdp-01:9000");Jobjob=Job.getInstance(conf);1.本地直接提交給集群,添加代碼如下:課外拓展除了需要增加上述代碼之外,還需要將處理的數(shù)據(jù)和最終結(jié)果數(shù)據(jù)路徑修改為HDFS上的位置,如下所示:FileInputFormat.setInputPaths(job,newPath("/wordcount/input"));FileOutputFormat.setOutputPath(job,newPath("/wordcount/output"));1.本地直接提交給集群,添加代碼如下:課外拓展該方式中,只需
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖北省鄂東南省級示范高中教育教學(xué)改革聯(lián)盟學(xué)校2024-2025學(xué)年高一下學(xué)期期中聯(lián)考化學(xué)試卷 含解析
- DB41∕T 1807-2019 紫花苜蓿生產(chǎn)技術(shù)規(guī)程
- 燃油的限制船舶高級消防課件
- 汽車空調(diào)的四種分類方式汽車空調(diào)系統(tǒng)維修課堂課件
- 人力資源管理導(dǎo)論課件
- 橋涵工程定額套用課件
- 17《我們都是少先隊員》第一課時 教學(xué)設(shè)計-2023-2024學(xué)年道德與法治一年級下冊統(tǒng)編版
- 任務(wù)二判斷貨物列車技術(shù)作業(yè)的種類任務(wù)介紹乙丙丁甲戊下行
- 汽車售后服務(wù)接待汽車工程27課件
- 4《氣味告訴我們》教學(xué)設(shè)計-2024-2025學(xué)年科學(xué)一年級上冊教科版
- 汽車制造業(yè)配件供貨應(yīng)急預(yù)案
- 食品安全學(xué)化學(xué)物質(zhì)危害
- 【MOOC】老子的人生智慧-東北大學(xué) 中國大學(xué)慕課MOOC答案
- 2024-2025學(xué)年北京西城區(qū)北京四中高二(上)期中物理試卷(含答案)
- 技術(shù)轉(zhuǎn)移案例
- 旅游公司抖音代運營合同范本
- 高鐵課件教學(xué)課件
- 光影中國學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024年7月1日實施新版醫(yī)療器械采購、收貨、驗收、貯存、銷售、出庫、運輸和售后服務(wù)工作程序
- 護(hù)理教學(xué)查房肺結(jié)節(jié)
- 減數(shù)分裂和受精作用-2025年高考生物一輪復(fù)習(xí)練習(xí)(新人教新高考)
評論
0/150
提交評論