基于Hadoop生態(tài)系統(tǒng)的大數(shù)據(jù)解決方案TP07_第1頁(yè)
基于Hadoop生態(tài)系統(tǒng)的大數(shù)據(jù)解決方案TP07_第2頁(yè)
基于Hadoop生態(tài)系統(tǒng)的大數(shù)據(jù)解決方案TP07_第3頁(yè)
基于Hadoop生態(tài)系統(tǒng)的大數(shù)據(jù)解決方案TP07_第4頁(yè)
基于Hadoop生態(tài)系統(tǒng)的大數(shù)據(jù)解決方案TP07_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第七章天氣查詢系統(tǒng)

項(xiàng)目案例預(yù)習(xí)檢查HBase適合實(shí)時(shí)查詢嗎?為什么?MapReduce適合實(shí)時(shí)查詢嗎?為什么?為什么在Mapper或Reducer類中定義的System.out.println()語(yǔ)句不會(huì)在客戶端中輸出?請(qǐng)解釋配置項(xiàng)“io.serializations”的作用集中測(cè)試2/33訓(xùn)練的技能點(diǎn)會(huì)使用HDFSFS命令能夠進(jìn)行MapReduce編程能夠讓Mapper輸出到HBase能夠讓Reducer輸出到HBase會(huì)使用HBaseJavaAPI進(jìn)行內(nèi)容查詢能夠使用HBase過(guò)濾器進(jìn)行內(nèi)容查詢能夠部署作業(yè)驅(qū)動(dòng)客戶端3/33系統(tǒng)概述任務(wù)描述2-1天氣查詢系統(tǒng)天氣數(shù)據(jù)導(dǎo)入查詢某一天的天氣數(shù)據(jù)查詢每年的最高氣溫查詢每年的最低氣溫查詢每年的平均氣溫查詢每年下雨天數(shù)預(yù)測(cè)明天氣溫4/33任務(wù)描述2-2用例圖演示案例:天氣查詢系統(tǒng)5/33問(wèn)題分析1:整體開發(fā)思路系統(tǒng)開發(fā)步驟明確需求準(zhǔn)備氣象數(shù)據(jù)創(chuàng)建項(xiàng)目編碼順序測(cè)試作業(yè)驅(qū)動(dòng)主程序查詢某天天氣數(shù)據(jù)查詢每年最高(最低、平均)氣溫查詢每年的下雨天數(shù)預(yù)測(cè)明天的氣溫231546/33問(wèn)題分析2:界面交互設(shè)計(jì)界面交互設(shè)計(jì)的原則易用性原則操作方式自然、易理解友好性原則輸入錯(cuò)誤或系統(tǒng)發(fā)生錯(cuò)誤有及時(shí)的提示7/33問(wèn)題分析3:技術(shù)分析技術(shù)實(shí)現(xiàn)中需要考慮的問(wèn)題原始數(shù)據(jù)格式數(shù)據(jù)存儲(chǔ)設(shè)計(jì)導(dǎo)入數(shù)據(jù)工具選擇離線計(jì)算:MapReduce實(shí)時(shí)查詢:HBase統(tǒng)計(jì)年最高、最低、平均氣溫年下雨天數(shù)天氣預(yù)測(cè)8/33難點(diǎn)分析:理解業(yè)務(wù)統(tǒng)計(jì)年最高氣溫、最低氣溫、平均氣溫map階段:依次讀取每一條氣象數(shù)據(jù),分別輸出MAX、MIN、TEMP值,key應(yīng)為年份reduce階段:分別求出最大值、最小值、平均值統(tǒng)計(jì)一年中下雨天數(shù)統(tǒng)計(jì)記錄字段FRSHTT,如果R為1則計(jì)數(shù)一次天氣預(yù)測(cè)功能根據(jù)歷史氣象數(shù)據(jù),統(tǒng)計(jì)不同年的同一日期的TEMP、MAX、MIN,再分別求得平均數(shù)模擬預(yù)測(cè)功能9/33開發(fā)計(jì)劃準(zhǔn)備數(shù)據(jù)

[30分鐘]用例1:查詢某一天的天氣數(shù)據(jù) [30分鐘]用例2:查詢每年的最高氣溫 [50分鐘]用例3:查詢每年的最低氣溫 [25分鐘]用例4:查詢每年的平均氣溫 [25分鐘]用例5:查詢每年下雨的天數(shù) [30分鐘]用例6:預(yù)測(cè)明天的氣溫 [50分鐘]10/33準(zhǔn)備數(shù)據(jù)使用Mapper逐條導(dǎo)入解析氣象數(shù)據(jù)格式使用TableOutputFormat格式輸出輸出鍵:“STN+YEARMODA”輸出值:解析后的Put實(shí)例Configurationconf.setStrings("io.serializations",conf.get("io.serializations"), MutationSerialization.class.getName(), ResultSerialization.class.getName(), KeyValueSerialization.class.getName());使得MapTask可以對(duì)TableOutputFormat的輸出鍵/值類型進(jìn)行序列化演示案例:導(dǎo)入數(shù)據(jù)完成時(shí)間:30分鐘11/33用例1:查詢某一天的天氣數(shù)據(jù)2-1需求說(shuō)明用戶選擇功能【1】,系統(tǒng)提示用戶輸入日期格式根據(jù)輸入日期返回天氣數(shù)據(jù)方法一使用Get對(duì)象查詢行鍵“STN+YEARMODA”方法二使用Scan對(duì)象對(duì)表掃描為Scan添加過(guò)渡器SingleColumnValueFilter指導(dǎo)講解需求說(shuō)明分析完成時(shí)間:30分鐘scan.setFilter(newSingleColumnValueFilter(Bytes.toBytes(“info”),

Bytes.toBytes(“YEARMODA”),

CompareOp.EQUAL,Bytes.toBytes(“20080808”)));12/33啟動(dòng)后是否正確顯示菜單輸入“0”,程序關(guān)閉輸入除“0”以外的操作編號(hào),是否繼續(xù)顯示菜單輸入“1”并輸入正確日期,結(jié)果是否達(dá)到預(yù)期要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例1:查詢某一天的天氣數(shù)據(jù)2-213/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解14/33用例2:查詢每年的最高氣溫2-1需求說(shuō)明用戶選擇功能【2】,作業(yè)被提交到Hadoop,并將統(tǒng)計(jì)結(jié)果輸出到“results”表的列“statistic:max”作業(yè)結(jié)束后,查詢表并輸出實(shí)現(xiàn)Mappermap():獲得每一天的最高氣溫,作為本年度最高氣溫的候選項(xiàng)實(shí)現(xiàn)Reducerreduce():從本年度每天的最高溫度中選擇最大值,作為本年度最高氣溫輸出指導(dǎo)講解需求說(shuō)明完成時(shí)間:50分鐘分析15/33輸入“2”,是否正確顯示結(jié)果要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例2:查詢每年的最高氣溫2-216/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解17/33用例3:查詢每年的最低氣溫2-1需求說(shuō)明用戶選擇功能【3】,作業(yè)被提交到Hadoop,并將統(tǒng)計(jì)結(jié)果輸出到“results”表的列“statistic:min”作業(yè)結(jié)束后,查詢表并輸出實(shí)現(xiàn)Mappermap():獲得每一天的最高氣溫,作為本年度最低氣溫的候選項(xiàng)實(shí)現(xiàn)Reducerreduce():從本年度每天的最低溫度中選擇最小值,作為本年度最低氣溫輸出講解需求說(shuō)明完成時(shí)間:25分鐘練習(xí)提示18/33輸入“3”,是否正確顯示結(jié)果要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例3:查詢每年的最低氣溫2-219/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解20/33用例4:查詢每年的平均氣溫2-1需求說(shuō)明用戶選擇功能【4】,作業(yè)被提交到Hadoop,并將統(tǒng)計(jì)結(jié)果輸出到“results”表的列“statistic:avg”作業(yè)結(jié)束后,查詢表并輸出實(shí)現(xiàn)Mappermap():獲得每一天的平均氣溫,作為本年度平均氣溫的候選項(xiàng)實(shí)現(xiàn)Reducerreduce():從本年度每天的平均溫度中再求平均值,作為本年度平均氣溫輸出講解需求說(shuō)明完成時(shí)間:25分鐘練習(xí)提示21/33輸入“4”,是否正確顯示結(jié)果要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例4:查詢每年的平均氣溫2-222/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解23/33用例5:查詢每年的下雨天數(shù)2-1需求說(shuō)明用戶選擇功能【5】,作業(yè)被提交到Hadoop,并將統(tǒng)計(jì)結(jié)果輸出到“results”表的列“statistic:rain”作業(yè)結(jié)束后,查詢表并輸出實(shí)現(xiàn)Mappermap():輸出的前提條件是該行的“FRSHTT”中第1位(由0開始)為1實(shí)現(xiàn)Reducerreduce():對(duì)輸入key的所有值求和,并按“results”表的行鍵key輸出該求和值到列“statistic:rain”講解需求說(shuō)明完成時(shí)間:30分鐘練習(xí)提示24/33輸入“5”,是否正確顯示結(jié)果要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例5:查詢每年的下雨天數(shù)2-225/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解26/33用例6:預(yù)測(cè)明天的氣溫2-1需求說(shuō)明用戶選擇功能【6】,作業(yè)被提交到Hadoop,并將統(tǒng)計(jì)結(jié)果輸出到“forecast”表的列族“item”作業(yè)結(jié)束后,查詢表并輸出列族“item”所有列實(shí)現(xiàn)Mappermap():獲得每年“明天”天氣數(shù)據(jù),以MapWritable封裝后輸出輸出鍵/值:<STN+明天日期,{TEMP,MAX,MIN}>實(shí)現(xiàn)Reducerreduce():統(tǒng)計(jì)所有當(dāng)天的TEMP、MAX、MIN,并分別求出平均值指導(dǎo)講解需求說(shuō)明分析完成時(shí)間:50分鐘27/33輸入“6”,是否正確顯示結(jié)果要求互相驗(yàn)證完成的程序功能小組長(zhǎng)檢查本組完成情況功能測(cè)試用例6:預(yù)測(cè)明天的氣溫2-228/33共性問(wèn)題集中講解常見問(wèn)題及解決辦法代碼規(guī)范問(wèn)題調(diào)試技巧共性問(wèn)題集中講解29/33項(xiàng)目總結(jié)講解要點(diǎn)完成情況、技能總結(jié)、經(jīng)驗(yàn)分享、項(xiàng)目收獲表達(dá)要求清晰流暢、有條理、重點(diǎn)突出作品展示30/33技能總結(jié)技術(shù)實(shí)現(xiàn)靈活利用Hadoop提供的MapReduce編程模型Mapper在多節(jié)點(diǎn)間并行、逐行分解數(shù)據(jù)原始記錄Reducer合并

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論