Download presentation
Presentation is loading. Please wait.
1
Unit 05 雲端分散式Hadoop實驗 -I M. S. Jian
Department of Computer Science and Information Engineering National Formosa University Yunlin, Taiwan, ROC
2
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Hadoop and MapReduce 軟體平台 就是將一個工作分成多個並傳送到多個節點(Node)處理 將各個Node的結果再重新結合統整成最後的結果 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
3
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Java開發 自由軟體 為Apache軟體基金會的top level project 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
4
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
MapReduce Algorithm Method Hadoop Map/Reduce是一個易於使用的軟體平台,以MapReduce為基礎的應用程序 能夠運作在由上千台PC所組成的大型叢集上,並以一種可靠容錯的方式平行處理上Peta-Bytes數量級的資料集 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
5
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
特徵 巨量 –擁有儲存與處理大量資料的能力 •經濟 –可以用在由一般PC所架設的叢集環境內 •效率 –籍由平行分散檔案的處理以致得到快速的回應 •可靠 –當某節點發生錯誤,系統能即時自動的取得備份資料以及佈署運算資源 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
6
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
特徵 大規模資料集 可拆解 Text tokenization Indexing and Search Data mining machine learning 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
7
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
MapReduce理論觀念 Functional Programming : Map Reduce –map(...) : [ 1,2,3,4 ] – (*2) -> [ 2,4,6,8 ] –reduce(...): [ 1,2,3,4 ] - (sum) -> 10 對應演算法中的Divide and conquer 將問題分解成很多個小問題之後,再做總和 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
8
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Google v.s. Apache Develop Group Google Apache Sponsor Resource Open Document Open Source File System GFS HDFS Storage System Big-Table Hbase Algorithm Method MapReduce O.S Linux Linux/ GPL 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
9
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
HDFS(HadoopDistributed File System) GFS, DFS (Distributed File System) 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
10
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Job –任務 • Task –工作 • JobTracker –任務分派者 • TaskTracker –工作的執行者 • Client –發起任務的客戶端 • Map –對應 • Reduce –彙整 Namenode –名稱節點 •Datanode –資料節點 •Namespace –名稱空間 •Replication –副本 •Blocks –檔案區塊 (64M) •Metadata –屬性資料 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
11
Hadoop Package Topology
資料夾名稱 說明 bin 各執行檔,例如: start-all.sh conf 預設的設定檔目錄(可更改),例如: hadoop-env.sh docs Hadoop API與說明文件 contrib 額外套件,例如: Eclipse外掛 lib 相關函式庫(主要函式庫位於hadoop_home) src Hadoop原始碼 build 編譯後的資料夾(搭配ant程式與build.xml) logs 預設日誌檔目錄(可更改) 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
12
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
資料管理 Namenode Master、管理HDFS的名稱空間、控制對檔案的讀/寫、配置副本策略、對名稱空間作檢查及紀錄、只能有一個 Datanode Workers、執行讀/寫動作、執行Namenode的副本策略、可多個 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
13
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
分派程序 Jobtracker Master、使用者發起工作、指派工作給Tasktrackers、排程決策、工作分配、錯誤處理、只能有一個 Tasktrackers Workers、運作 Map 與 Reduce的工作、管理儲存、回覆運算結果、可多個 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
14
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Namenode JobTracker Data Task JAVA Linux Datanode Datanode Datanode TaskTracker TaskTracker TaskTracker Data Task Data Task Data Task JAVA JAVA JAVA Linux Linux Linux 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
15
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Get Block Location Namenode JobTracker Submit Job Data Task JAVA HTTP Monitor UI Linux Datanode Datanode Datanode TaskTracker TaskTracker TaskTracker Data Task Data Task Data Task JAVA JAVA JAVA Linux Linux Linux 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
16
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
硬體錯誤容忍能力 –硬體錯誤是正常而非異常 –迅速地自動恢復 串流式的資料存取 –批次處理多於用戶交互處理 –高Throughput > 低Latency 大規模資料集 –支援Perabytes等級的磁碟空間 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
17
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
一致性模型 –一次寫入,多次存取 –簡化一致性處理問題 在地運算 –移動到資料節點計算 > 移動資料過來計算 異質平台移植性 –即使硬體不同也可移植、擴充 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
18
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
檔案一致性機制 –刪除檔案\新增寫入檔案\讀取檔案皆由Namenode負責 巨量空間及效能機制 –以Block為單位: 64M為單位 –在HDFS上得檔案有可能大過一顆磁碟 –大區塊可提高存取效率 –區塊均勻散佈各節點以分散讀取流量 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
19
Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
目的:提高系統的可靠性與讀取的效率 可靠性:節點失效時讀取副本以維持正常運作 讀取效率:分散讀取流量(但增加寫入時效能瓶頸) 4/20/2019 Cloud Operating System - Unit 05: 雲端分散式Hadoop實驗 -I
Similar presentations