1.yarn(yet another resource negotiator)分布式資源管理系統(tǒng)
1.作業(yè)(job)包含多個(gè)任務(wù)(task)
2.container封裝了cpu的各種資源
2.yarn的結(jié)構(gòu)
1.ResouceManager(全局資源管理)
系統(tǒng)資源管理分配 處理客戶端請(qǐng)求,健康檢查namenode
2.nodemanager(當(dāng)前節(jié)點(diǎn)資源管理)
3.applicationMaster(發(fā)送心跳RM.二次分配資源給container,跟蹤任務(wù)情況,每個(gè)客戶端申請(qǐng)的都生成一個(gè)am)
3.mapreduce(解決計(jì)算問題) 改進(jìn)版spark更簡(jiǎn)單和流行,Flink可以實(shí)時(shí)處理,前兩個(gè)不可以
- 應(yīng)用場(chǎng)景(略)
- 分為2個(gè)階段 map(映射)(之間有整體shuffle排序)和reduce(規(guī)約) 分而治之(半成品,需要自己加代碼)(落地,內(nèi)存到磁盤)
大任務(wù)分為小任務(wù)到不同機(jī)器,然后任務(wù)匯總(數(shù)蘋果,分幾個(gè)人數(shù),然后匯總數(shù)量)
!!!考試 map的數(shù)量由split決定的- 工作流程
0. 輸入和分片Split, InputFormat處理輸入的格式(默認(rèn)一行一行處理)
1. map 在數(shù)據(jù)中選擇<k,v> 如輸入1行為 hello,key為第一行為1,value為hello
2. shuffle 先整合( mysql group by) 歸并排序(order by) 后排序(助手sorter) (對(duì)key排序,字母順序或者數(shù)字順序)
<k,<v1,v2,v3>>
3. reduce
<k2,v2> #為map階段處理后的結(jié)果
4.怎么打包jar
項(xiàng)目運(yùn)行后export runnable jar
圖形界面Scala IDE直接運(yùn)行代碼,在args加參數(shù)
5.mapreduce輸出存儲(chǔ)在日志 /usr/local #把yarn日志聚合配置好
6.winrar先以管理員打開 后解壓
7.,mapreduce的輸入輸出格式
默認(rèn)TextInputFormat key編號(hào) value為文本行
SequentFormat ??我也沒有用過 二進(jìn)制格式
8.mapreduce
1.map
2.reduce
3.driver初始化的通用模塊在main函數(shù)
9.excel數(shù)據(jù)用, 逗號(hào)分割,也可以處理訪問量統(tǒng)計(jì)
10.Combiner 是迷你的reduce 在map本地進(jìn)行合并(局部合并)避免網(wǎng)絡(luò)傳輸慢(可有可無(wú))
使用情況: 不影響最終數(shù)據(jù),比如求平均值時(shí),默認(rèn)不打開
11.Partitioner分區(qū)器(必須有的) Hash數(shù)字指紋(輸入一個(gè)文件,生成多個(gè)文件)文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-474609.html
//2月份的用戶在一個(gè)文件 1月份的用戶在另外一個(gè)文件
//幾個(gè)reduce決定幾個(gè)分區(qū)
//需要單獨(dú)寫個(gè)分區(qū)類,判斷放到哪個(gè)分區(qū),先分區(qū)---->Combiner->reduce文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-474609.html
到了這里,關(guān)于05.hadoop上課筆記之hadoop5mapreduce和yarn的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!