一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Hadoop是什么?一句話理解

 愛(ài)吃魚(yú)的俊懶貓 2019-05-28

 Hadoop(MapReduce&HDFS)

1.學(xué)習(xí)目的(前言)

  在從業(yè)了六年IT生涯里,做個(gè)實(shí)施顧問(wèn)、業(yè)務(wù)顧問(wèn)、BA需求分析師、項(xiàng)目經(jīng)理,現(xiàn)在重新定位自己,在新公司做起了開(kāi)發(fā)顧問(wèn),雖然經(jīng)歷過(guò)很多轉(zhuǎn)折、跨度也有點(diǎn)大。但是抓住了機(jī)會(huì),開(kāi)始接觸大數(shù)據(jù)行業(yè)了。雖然目前工作中的都是使用Hive SQL進(jìn)行開(kāi)發(fā),沒(méi)有涉及太多真正大數(shù)據(jù)的東西,但是覺(jué)得學(xué)習(xí)大數(shù)據(jù)還是很有必要,所以利用項(xiàng)目的空余時(shí)間對(duì)Hadoop進(jìn)行了學(xué)習(xí)整理,內(nèi)容可能對(duì)于現(xiàn)在的Hadoop來(lái)說(shuō)已經(jīng)有點(diǎn)過(guò)時(shí)了,但是我覺(jué)得老知識(shí)還是根基,于是便有了以下的文章,用于以后自己備忘和要學(xué)習(xí)Hadoop的小伙伴一起學(xué)習(xí)進(jìn)步。

2.Hadoop核心思想

  Hadoop是在分布式服務(wù)器集群上存儲(chǔ)海量數(shù)據(jù)并運(yùn)行分布式分析應(yīng)用的一個(gè)平臺(tái),其核心部件是HDFS與MapReduce

  HDFS是一個(gè)分布式文件系統(tǒng):傳統(tǒng)文件系統(tǒng)的硬盤尋址慢,通過(guò)引入存放文件信息的服務(wù)器Namenode和實(shí)際存放數(shù)據(jù)的服務(wù)器Datanode進(jìn)行串接。對(duì)數(shù)據(jù)系統(tǒng)進(jìn)行分布式儲(chǔ)存讀取。

  MapReduce是一個(gè)計(jì)算框架:MapReduce的核心思想是把計(jì)算任務(wù)分配給集群內(nèi)的服務(wù)器里執(zhí)行。通過(guò)對(duì)計(jì)算任務(wù)的拆分(Map計(jì)算\Reduce計(jì)算)再根據(jù)任務(wù)調(diào)度器(JobTracker)對(duì)任務(wù)進(jìn)行分布式計(jì)算。

3.HDFS文件系統(tǒng)和MapReduce計(jì)算框架在Hadoop生態(tài)圈中的應(yīng)用

  HDFS負(fù)責(zé)Hadoop生態(tài)圈的數(shù)據(jù)存取工作

  MapReduce負(fù)責(zé)Hadoop生態(tài)圈的數(shù)據(jù)運(yùn)算工作

  Hadoop生態(tài)圈使用HDFS文件系統(tǒng)進(jìn)行存取數(shù)據(jù),數(shù)據(jù)被分散的保存在集群的各個(gè)服務(wù)器上,在計(jì)算數(shù)據(jù)時(shí)使用MapReduce結(jié)合HDFS進(jìn)行邏輯運(yùn)算取出數(shù)據(jù)。

4.Master/Slave的架構(gòu)理念

  Hadoop使用(Master/Slave)主從架構(gòu)進(jìn)行分布式儲(chǔ)存和分布式計(jì)算。Master負(fù)責(zé)分配和管理任務(wù),Slave負(fù)責(zé)實(shí)際執(zhí)行任務(wù)。

  MapReduce中裝載有JobTracker的服務(wù)器負(fù)責(zé)進(jìn)行Master任務(wù),裝載有TaskTracker的服務(wù)器負(fù)責(zé)進(jìn)行Slave任務(wù)。

  HDFS中裝載有Namenode的服務(wù)器負(fù)責(zé)進(jìn)行Master任務(wù),裝載有Datanode的服務(wù)器負(fù)責(zé)進(jìn)行Slave任務(wù)。

5.HDFS&MapReduce的設(shè)計(jì)思路

  HDFS:

    將文件進(jìn)行切塊處理,再通過(guò)文件信息服務(wù)器Namenode存放切塊的文件信息存放地址,實(shí)際存放數(shù)據(jù)的服務(wù)器Datanode存在切塊后的數(shù)據(jù)。

    系統(tǒng)默認(rèn):每個(gè)片塊大小為64M,以保證尋址速度;數(shù)據(jù)會(huì)寫(xiě)入3個(gè)Datanode中,以保證更高的容錯(cuò)性;

    HDFS還設(shè)計(jì)了Secondary Namenode來(lái)更新Namenode,以避免日志文件過(guò)大

    HDFS Client幫助Namenode對(duì)寫(xiě)入讀取數(shù)據(jù)進(jìn)行預(yù)處理,進(jìn)行文件的分塊與發(fā)送讀取操作。Namenode負(fù)責(zé)為數(shù)據(jù)任務(wù)尋址

  MapReduce:

    通過(guò)JobClient生成任務(wù)運(yùn)行文件,并在JobTracker進(jìn)行調(diào)度指派TaskTracker完成任務(wù)。

    JobTracker分為把任務(wù)文件進(jìn)行分解并派送到TaskTracker的程序JobinProgress和執(zhí)行調(diào)度器的TaskScheduler

    JobinProgress把作業(yè)分解成Map計(jì)算和Reduce計(jì)算并放置到TaskTracker服務(wù)器中

6.HDFS&MapReduce組件介紹

  HDFS:

    Namenode(Master):管理著每個(gè)文件中各個(gè)塊所在的數(shù)據(jù)節(jié)點(diǎn)的位置信息

    Namespace image:記錄每個(gè)文件的存在位置信息

    Edit log:記錄每個(gè)文件的位置移動(dòng)信息

    Datanode(Slave):記錄著服務(wù)器內(nèi)所儲(chǔ)存的數(shù)據(jù)塊的列表

    Secondary Namenode:更新并備份Namenode

    HDFS Client:進(jìn)行文件的分塊與文件的發(fā)送讀取

  MapReduce:

    JobClient:用于把用戶的作業(yè)任務(wù)生成Job的運(yùn)行包,并存放到HDFS中。

    JobinProgress:把Job運(yùn)行包分解成MapTask和ReduceTask并存放于TaskTracker中

    JobTracker(Master):進(jìn)行調(diào)度管理TaskTracker執(zhí)行任務(wù)

    TaskTracker(Slave):執(zhí)行分配下來(lái)的Map計(jì)算或Reduce計(jì)算任務(wù)

7.Hadoop運(yùn)行機(jī)制

  HDFS:

    Namenode使用鏡像文件(Namespace image)和操作日志文件(edit log)對(duì)數(shù)據(jù)進(jìn)行記錄。(保存在緩存和磁盤中)

    Secondary Namenode進(jìn)行更新時(shí)的操作:

      1.在Namenode創(chuàng)建一個(gè)新的操作日志,將新的操作記錄寫(xiě)入到新的操作日志中;

      2.將Namenode的鏡像文件和操作日志拷貝到Secondary Namenode中;

      3.在Secondary Namenode中讀取鏡像文件到內(nèi)存,并執(zhí)行日志文件中的所有操作,生產(chǎn)新的鏡像文件;

      4.把Secondary Namenode中創(chuàng)建的鏡像文件拷貝到Namenode中;

      5.Namenode中使用新的鏡像文件和操作日志替代原來(lái)的文件;

  存數(shù)據(jù):

      1.HDFS Client對(duì)文件分塊并向Namenode發(fā)送寫(xiě)數(shù)據(jù)請(qǐng)求

      2.Namenode把block信息記錄下來(lái),并返回可寫(xiě)入的Datanode

      3.HDFS Client向指定的Datanode傳送數(shù)據(jù)

      4.傳送成功后,Datanode會(huì)向Namenode和HDFS Client發(fā)送成功通知

  讀數(shù)據(jù):

      1.HDFS Client從Namenode中獲取文件塊的位置

      2.HDFS Client根據(jù)Namenode返回的文件信息去Datanode相關(guān)位置中讀取

  MapReduce:

    通過(guò)JobClient把用戶的作業(yè)任務(wù)轉(zhuǎn)換成job.xml、job.jar、job.split,適合JobTracker執(zhí)行的文件

      1.job.xml文件記錄了Job的詳細(xì)配置信息

      2.job.jar保存了用戶定義的關(guān)于job的map、reduce操縱

      3.job.split保存了job任務(wù)的切片信息

    JobClient會(huì)為作業(yè)向JobTracker申請(qǐng)Jobid,并以Jobid命名把xml、jar、split文件放置進(jìn)HDFS中

    JobinProgress會(huì)把JobClient創(chuàng)建的Job拷貝到JobTracker本地文件系統(tǒng),并創(chuàng)建JobStatus和Job的mapTask、reduceTask隊(duì)列來(lái)跟蹤Job的狀態(tài)信息。

    JobTracker默認(rèn)執(zhí)行一下調(diào)度法則

      1.先進(jìn)先出:集群內(nèi)的資源統(tǒng)一進(jìn)行使用,執(zhí)行先進(jìn)隊(duì)列先執(zhí)行的原則。

      2.公平調(diào)度:按用戶分配集群內(nèi)的資源,每個(gè)用戶只能在指定的資源內(nèi)運(yùn)行調(diào)度。

      3.隊(duì)列調(diào)度:可以設(shè)置多個(gè)隊(duì)列,每個(gè)隊(duì)列都可以進(jìn)行置頂?shù)馁Y源調(diào)度

    TaskTracker向JobTracker發(fā)送心跳報(bào)告及執(zhí)行命令

8.MapReduce集群的配置

服務(wù)器     守護(hù)進(jìn)程                 說(shuō)明     

server1    namenode           namenode節(jié)點(diǎn)    

server2    jobtracker                     任務(wù)主節(jié)點(diǎn)      

server3    secondary namenode     secondary namenode

dserver1    datanode tasktracker     數(shù)據(jù)節(jié)點(diǎn) 

dserver2    datanode tasktracker     數(shù)據(jù)節(jié)點(diǎn)

dsdrver3    datanode tasktracker     數(shù)據(jù)節(jié)點(diǎn) 

后感:

  在寫(xiě)這篇文章的時(shí)候,知識(shí)點(diǎn)不斷在更新(ps:甚至大v們對(duì)同一個(gè)事情的理解也有不太一致的地方,再ps:上述文章內(nèi)容完全是小粉的個(gè)人理解),甚至連文章架構(gòu)也改了很多次。但是對(duì)于學(xué)習(xí)來(lái)說(shuō),我覺(jué)得這個(gè)是一件好事兒,建議也在學(xué)習(xí)hadoop的小伙伴也可以對(duì)自己的知識(shí)進(jìn)行整理學(xué)習(xí),有自己的理解。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    久久99青青精品免费| 99免费人成看国产片| 精品久久少妇激情视频| 中文字幕日韩无套内射| 亚洲中文字幕在线视频频道| 高清国产日韩欧美熟女| 91久久国产福利自产拍| 欧美中文字幕日韩精品| 日本精品中文字幕在线视频| 成年午夜在线免费视频| 手机在线观看亚洲中文字幕| 亚洲精品一区三区三区| 亚洲乱妇熟女爽的高潮片| 91亚洲精品亚洲国产| 日本高清加勒比免费在线| 亚洲视频一级二级三级| 免费特黄欧美亚洲黄片| 国产一区二区精品丝袜| 欧美精品二区中文乱码字幕高清| 白白操白白在线免费观看| 色哟哟在线免费一区二区三区| 日本加勒比在线观看一区| 日韩欧美亚洲综合在线| 不卡一区二区高清视频| 日韩少妇人妻中文字幕| 区一区二区三中文字幕| 激情丁香激情五月婷婷| 99久久人妻中文字幕| 亚洲精品福利入口在线| 欧美一区二区三区视频区| 午夜精品久久久99热连载| 欧美日韩国产综合特黄| 亚洲精品福利入口在线| 蜜桃传媒视频麻豆第一区| 久热人妻中文字幕一区二区| 欧美日韩综合免费视频| 国产精品免费视频视频| 国产黑人一区二区三区| 国产农村妇女成人精品| 三级高清有码在线观看| 99久久精品视频一区二区|