- Hadoop 2.X HDFS源碼剖析
- 徐鵬
- 325字
- 2024-01-05 17:29:19
1.1.1 HDFS體系結(jié)構(gòu)
HDFS是一個主/從(Master/Slave)體系結(jié)構(gòu)的分布式系統(tǒng),如圖1-1所示,HDFS集群擁有一個Namenode和一些Datanode,用戶可以通過HDFS客戶端同Namenode和Datanodes交互以訪問文件系統(tǒng)。

圖1-1 HDFS體系結(jié)構(gòu)示意圖
在HDFS中,Namenode是HDFS的Master節(jié)點,負(fù)責(zé)管理文件系統(tǒng)的命名空間(namespace),以及數(shù)據(jù)塊到具體Datanode節(jié)點的映射等信息。集群中的Datanode一般是一個節(jié)點一個,負(fù)責(zé)管理它所在節(jié)點上的存儲。從內(nèi)部看,一個文件其實被分成一個或多個數(shù)據(jù)塊,這些塊存儲在一組Datanode上,Datanode會以本地文件的形式保存這些數(shù)據(jù)塊以及數(shù)據(jù)塊的校驗信息。
用戶能夠通過HDFS客戶端發(fā)起讀寫HDFS文件的請求,同時還能通過HDFS客戶端執(zhí)行文件系統(tǒng)的命名空間操作,比如打開、關(guān)閉、重命名文件或目錄。Namenode會響應(yīng)這些請求,更改命名空間以及數(shù)據(jù)塊的映射信息,然后指導(dǎo)Datanode處理文件HDFS客戶端的讀寫請求。
推薦閱讀
- JSP網(wǎng)絡(luò)編程(學(xué)習(xí)筆記)
- Mastering Entity Framework Core 2.0
- Flask Blueprints
- 編程的修煉
- 軟件界面交互設(shè)計基礎(chǔ)
- PaaS程序設(shè)計
- Selenium Design Patterns and Best Practices
- 深入理解Java7:核心技術(shù)與最佳實踐
- Building Mapping Applications with QGIS
- 人人都懂設(shè)計模式:從生活中領(lǐng)悟設(shè)計模式(Python實現(xiàn))
- 小學(xué)生C++創(chuàng)意編程(視頻教學(xué)版)
- 動手學(xué)數(shù)據(jù)結(jié)構(gòu)與算法
- Swift 4從零到精通iOS開發(fā)
- Unity&VR游戲美術(shù)設(shè)計實戰(zhàn)
- Mastering Elixir