1.能否總結出mapreduce設計思路?
2.hadoop1遇到了什麼問題?
3.hadoop2做了什麼改進,具體哪些變化?
對 hadoop1 和 hadoop 2 做了乙個解釋 不錯 拿來看看
從上圖中可以清楚的看出原 mapreduce 程式的流程及設計思路:
可以看得出原來的 map-reduce 架構是簡單明瞭的,在最初推出的幾年,也得到了眾多的成功案例,獲得業界廣泛的支援和肯定,但隨著分布式系統集群的規模和其工作負荷的增長,原框架的問題逐漸浮出水面,主要的問題集中如下:
從業界使用分布式系統的變化趨勢和 hadoop 框架的長遠發展來看,mapreduce 的 jobtracker/tasktracker 機制需要大規模的調整來修復它在可擴充套件性,記憶體消耗,執行緒模型,可靠性和效能上的缺陷。在過去的幾年中,hadoop 開發團隊做了一些 bug 的修復,但是最近這些修復的成本越來越高,這表明對原框架做出改變的難度越來越大。
為從根本上解決舊 mapreduce 框架的效能瓶頸,促進 hadoop 框架的更長遠發展,從 0.23.0 版本開始,hadoop 的 mapreduce 框架完全重構,發生了根本的變化。新的 hadoop mapreduce 框架命名為 mapreducev2 或者叫 yarn,
上圖中 resourcemanager 支援分層級的應用佇列,這些佇列享有集群一定比例的資源。從某種意義上講它就是乙個純粹的排程器,它在執行過程中不對應用進行監控和狀態跟蹤。同樣,它也不能重啟因應用失敗或者硬體錯誤而執行失敗的任務。
resourcemanager 是基於應用程式對資源的需求進行排程的 ; 每乙個應用程式需要不同型別的資源因此就需要不同的容器。資源包括:記憶體,cpu,磁碟,網路等等。可以看出,這同現 mapreduce 固定型別的資源使用模型有顯著區別,它給集群的使用帶來負面的影響。資源管理器提供乙個排程策略的外掛程式,它負責將集群資源分配給多個佇列和應用程式。排程外掛程式可以基於現有的能力排程和公平排程模型。
上圖中 nodemanager 是每一台機器框架的**,是執行應用程式的容器,監控應用程式的資源使用情況 (cpu,記憶體,硬碟,網路 ) 並且向排程器匯報。
Hadoop1 x集群安裝
主機環境為 準備用虛擬機器實現 hdoop 集群,hdoop01 06.1cpu,1g menory,20 g disk 虛擬機器 為兩種vamemare oracle vm 作業系統為 ubuntu 12.04.1 desktop amd64.iso hadoop11,12,13 hadoop 1...
Hadoop1 x與Hadoop2 x的區別?
hadoop 解讀大資料雪崩的解決方案,從谷歌2003年發布 和2004年mapreduce 開始已經走過了漫長的道路。它通過橫向擴充套件而不是擴充套件戰略創造了波瀾。來自doug cutting以及雅虎和apache hadoop專案團隊的進展推動了mapreduce程式設計的普及 這種程式設計適...
Hadoop1 x與Hadoop2 x的區別解析
hadoop 解讀大資料雪崩的解決方案,從谷歌2003年發布 和2004年mapreduce 開始已經走過了漫長的道路。它通過橫向擴充套件而不是擴充套件戰略創造了波瀾。來自doug cutting以及雅虎和apache hadoop專案團隊的進展推動了mapreduce程式設計的普及 這種程式設計適...