成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Hadoop核心機制詳細解析

運維 系統運維 Hadoop
Hadoop的核心機制是通過HDFS文件系統和MapReduce算法進行存儲資源、內存和程序的有效利用與管理。在現實的實例中,通過Hadoop,可以輕易的將多臺普通的或低性能的服務器組合成分布式的運算-存儲集群,提供大數據量的存儲和處理能力。

Hadoop的核心機制是通過HDFS文件系統和MapReduce算法進行存儲資源、內存和程序的有效利用與管理。在現實的實例中,通過Hadoop,可以輕易的將多臺普通的或低性能的服務器組合成分布式的運算-存儲集群,提供大數據量的存儲和處理能力。

知其然,知其所以然。要想深入學習和理解Hadoop的核心機制,還要從MapReduce和HDFS的原理入手。

MapReduce的“大事化小”

作為Google提出的架構,MapReduce通過Map(映射)和Reduce(化簡)來實現大規模數據(TB級)的并行計算。可以簡單理解為,通過Map(映射)函數,把一組鍵值對映射成一組新的鍵值對;指定并發的Reduce(化簡)函數,用來保證所有映射的鍵值對中的每一個共享相同的鍵組。

MapReduce是一種大數據計算的開發模式和思想方法。開發人員先分析需求所提出問題的解決流程,找出數據可以并發處理的部分(Reduce),也就是那些能夠分解為小段的可并行處理的數據,再將這些能夠采用并發處理的需求寫成Map程序(Map)。

然后就可以使用大量服務器來執行Map程序,并將待處理的龐大數據切割成很多的小份數據,由每臺服務器分別執行Map程序來處理分配到的那一小段數據,接著再將每一個Map程序分析出來的結果,透過Reduce程序進行合并,最后則匯整出完整的結果。

MapReduce的整個流程就像…

MapReduce是Hadoop分布式計算的關鍵技術,將要執行的問題,拆解成Map和Reduce的方式來執行,以達到分散運算的效果。例如要搜尋網頁中的“In Big Data”這個詞,可以先用Map程序,來計算出所有網頁中,每一個詞的位置。再使用Reduce程序,在每一個字的清單中,檢索出“In Big Data”所對應的URL,您就來到了這個博客。MapReduce程序的執行過程如下:

MapReduce運作流程 

MapReduce運行流程

MapReduce的運作方式就像快遞公司一樣。物流部門會將發往各地的包裹先運送到各地的物流分站,再由分站派出進行派送;快遞員等每個包裹的用戶簽單后將數據反饋給系統匯總,完成整個快遞流程。在這里,每個快遞員都會負責配送,所執行的動作大致相同,且只負責少量的包裹,最后由物流公司的系統進行匯總(而不是從一個庫房一個快遞員直接發往各地;這樣的話估計順風、京東神馬的會被人罵死)。

在Hadoop集群架構中,服務器依據用途可分成Master節點和Worker節點,Master負責分配任務,而Worker負責執行任務。

Hadoop中的Master與Worker

Hadoop運算集群中的服務器依用途分成Master節點和Worker節點。Master節點中含有JobTracker、NameNode、TaskTracker和DataNode程序;Worker節點含有TaskTracker和DataNode。另外在系統的架構上,最簡單的Hadoop架構,可以分成上層的MapReduce運算層以及下層的HDFS數據層。

在Master節點的服務器中會執行兩套程序:一個是負責安排MapReduce運算層任務的JobTracker,以及負責管理HDFS數據層的NameNode程序。而在Worker節點的服務器中也有兩套程序,接受JobTracker指揮,負責執行運算層任務的是TaskTracker程序,與NameNode對應的則是DataNode程序,負責執行數據讀寫操作以及執行NameNode的副本策略。

在MapReduce運算層上,擔任Master節點的服務器負責分配運算任務,Master節點上的JobTracker程序會將Map和Reduce程序的執行工作指派給Worker服務器上的TaskTracker程序,由TaskTracker負責執行Map和Reduce工作,并將運算結果回復給Master節點上的JobTracker。

在HDFS數據層上,NameNode負責管理和維護HDFS的名稱空間、并且控制檔案的任何讀寫動作,同時NameNode會將要處理的數據切割成一個個檔案區塊(Block),每個區塊是64MB,例如1GB的數據就會切割成16個檔案區塊。NameNode還會決定每一份檔案區塊要建立多少個副本,一般來說,一個檔案區塊總共會復制成3份,并且會分散儲存到3個不同Worker服務器的DataNode程序中管理,只要其中任何一份檔案區塊遺失或損壞,NameNode會自動尋找位于其他DataNode上的副本來回復,維持3份的副本策略。

在一套Hadoop集群中,分配MapReduce任務的JobTracker只有1個,而TaskTracker可以有很多個。同樣地,負責管理HDFS文件系統的NameNode也只有一個,和JobTracker同樣位于Master節點中,而DataNode可以有很多個。

不過,Master節點中除了有JobTracker和NameNode以外,也會有TaskTracker和DataNode程序,也就是說Master節點的服務器也可以在本地端扮演Worker角色的工作。

在部署上,因為Hadoop采用Java開發,所以Master服務器除了安裝操作系統如Linux之外,還要安裝Java執行環境,然后再安裝Master需要的程序,包括了NameNode、JobTracker和DataNode與TaskTracker。而在Worker服務器上,則只需安裝Linux、Java環境、DataNode和TaskTracker。

在之后的文章中將詳細說明Hadoop安裝部署方面的問題。這里只針對Hadoop的運行機制及內部細節做了討論;在實際的應用中雖然還需要很多知識,但就理解Hadoop和MapReduce核心思想來說,以上的內容值得反復推敲。對技術,要知其然,知其所以然!

責任編輯:黃丹 來源: InBigData
相關推薦

2024-07-30 12:24:23

2011-12-15 09:33:19

Java

2025-04-27 02:33:00

epoll核心機制服務器

2011-04-07 17:54:22

Policing

2011-04-07 17:27:52

Policing

2011-04-07 17:39:57

Shapping

2011-04-07 17:43:37

Shapping

2024-04-01 08:29:09

Git核心實例

2024-09-02 09:00:59

2025-06-05 02:22:00

2010-04-26 10:44:27

Oracle SCN

2024-02-21 12:14:00

Gochannel?panic?

2014-07-15 11:15:44

hadoop分布式部署

2025-04-07 11:10:00

Python列表開發

2013-07-08 09:59:47

思科核心機箱思科交換機思科

2015-06-17 11:27:47

Hadoop集群管理安全機制

2011-07-13 09:12:36

2017-07-04 09:53:49

機房運維機房電源

2025-05-07 01:20:11

SpringMVC核心機制

2024-10-12 12:55:26

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 全免费a级毛片免费看视频免 | 国产 欧美 日韩 一区 | 99爱免费 | av网站免费在线观看 | 亚洲第一av | 亚洲精品一 | 日韩在线国产精品 | 亚洲免费三区 | 亚洲天堂精品久久 | 狠狠色综合欧美激情 | 岛国精品 | 男人天堂网站 | 欧美精品久久久 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 成年人视频免费在线观看 | 中文字幕1区 | 精品视频一区二区在线观看 | 九色在线 | 999久久久久久久久6666 | 日本视频免费观看 | 精品日韩一区 | 国产精品精品视频一区二区三区 | 欧美中文字幕在线观看 | 久久精品国产一区二区电影 | 一级黄片一级毛片 | 亚洲97| 91看片免费 | 亚洲性人人天天夜夜摸 | 久草新在线 | 色综合一区 | 欧美精品久久久 | 欧美精品一区二区三区四区 | 狠狠干网站 | 日本大片在线播放 | 国产韩国精品一区二区三区 | 国产高清在线观看 | 精品国产精品三级精品av网址 | 精品精品 | 久热爱| 欧美日韩亚洲国产综合 | 神马久久久久久久久久 |