|
HDFS中的基本概念 塊(Block):HDFS的文件被分成塊進(jìn)行存儲,HDFS塊的默認(rèn)大小是64MB。塊是文件存儲處理的邏輯單元 NameNode:NameNode是管理節(jié)點(diǎn),存放文件元數(shù)據(jù) (1)文件與數(shù)據(jù)塊的映射表 (2)數(shù)據(jù)塊與數(shù)據(jù)節(jié)點(diǎn)的映射表 DataNode:DataNode是HDFS的工作節(jié)點(diǎn),存放數(shù)據(jù)塊 HDFS體系結(jié)構(gòu) HDFS的數(shù)據(jù)管理與容錯 (1)每個數(shù)據(jù)塊3個副本,分布在兩個機(jī)架內(nèi)的三個節(jié)點(diǎn) (2)DataNode定期向NameNode發(fā)送心跳消息 (3)二級NameNode定期同步元數(shù)據(jù)映像文件和修改日志。NameNode發(fā)生故障時,備胎轉(zhuǎn)正 HDFS讀取文件的流程: HDFS 特點(diǎn) (1)數(shù)據(jù)冗余,硬件容錯 (2)流式的數(shù)據(jù)訪問(一次寫入多次讀?。?/p> (3)適合存儲大文件 (4)適合數(shù)據(jù)批量讀寫,吞吐量高 (5)適合一次寫入多次讀取,順序讀寫。不支持多用戶并發(fā)寫相同文件 HDFS命令操作演示
MapReduce原理 分而治之,一個大任務(wù)分成多個小的子任務(wù)(map),并行執(zhí)行后,合并結(jié)果(reduce) MapReduce運(yùn)行流程 Job & Task:一個Job可以分成多個map task和 reduce task JobTracker:作業(yè)調(diào)度、分配任務(wù)、監(jiān)控任務(wù)執(zhí)行進(jìn)度、監(jiān)控TaskTracker的狀態(tài) TaskTracker:執(zhí)行任務(wù)、匯報任務(wù)狀態(tài) MapReduce應(yīng)用案例--WordCount單詞計數(shù) 計算文件中出現(xiàn)的每個單詞的頻數(shù),輸入結(jié)果按照字母的順序排序 首先編寫好代碼(編寫WordCount.java,里面包含Mapper類和Reducer類) 編譯
打包
創(chuàng)建輸入和輸出文件file1和file2 將filhe1 和 file2提交至 hdfs中去
可以通過 hadoop fs -ls 命令查看 input_wordcount文件夾的位置 提交
查看結(jié)果
|
|
|
來自: 昵稱11935121 > 《未命名》