您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關HDFS體系架構是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
整個Hadoop的體系結構主要是通過HDFS來實現對分布式存儲的底層支持,并通過MR來實現對分布式并行任務處理的程序支持。
HDFS采用主從(Master/Slave)結構模型,一個HDFS集群是由一個NameNode和若干個DataNode組成的(在最新的Hadoop2.2版本已經實現多個NameNode的配置-這也是一些大公司通過修改hadoop源代碼實現的功能,在最新的版本中就已經實現了)。NameNode作為主服務器,管理文件系統命名空間和客戶端對文件的訪問操作。DataNode管理存儲的數據。HDFS支持文件形式的數據。
從內部來看,文件被分成若干個數據塊,這若干個數據塊存放在一組DataNode上。NameNode執行文件系統的命名空間,如打開、關閉、重命名文件或目錄等,也負責數據塊到具體DataNode的映射。DataNode負責處理文件系統客戶端的文件讀寫,并在NameNode的統一調度下進行數據庫的創建、刪除和復制工作。NameNode是所有HDFS元數據的管理者,用戶數據永遠不會經過NameNode。
圖中涉及三個角色:NameNode、DataNode、Client。NameNode是管理者,DataNode是文件存儲者、Client是需要獲取分布式文件系統的應用程序。
文件寫入:
1) Client向NameNode發起文件寫入的請求。
2) NameNode根據文件大小和文件塊配置情況,返回給Client它管理的DataNode的信息。
3) Client將文件劃分為多個block,根據DataNode的地址,按順序將block寫入DataNode塊中。 文件讀取:
1) Client向NameNode發起讀取文件的請求。 2) NameNode返回文件存儲的DataNode信息。 3) Client讀取文件信息。
HDFS作為分布式文件系統在數據管理方面可借鑒點:
文件塊的放置:一個Block會有三份備份,一份在NameNode指定的DateNode上,一份放在與指定的DataNode不在同一臺機器的DataNode上,一根在于指定的DataNode在同一Rack上的DataNode上。備份的目的是為了數據安全,采用這種方式是為了考慮到同一Rack失敗的情況,以及不同數據拷貝帶來的性能的問題
關于“HDFS體系架構是什么”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。