分布式檔案系統HDFS 相關概念知識

2021-09-26 23:05:41 字數 1640 閱讀 4928

一、hdfs的侷限性:

1.不支援實時處理的任務需求。但hbase滿足實時處理需求。

2.無法高效儲存大量的小檔案,因為是以索引結構儲存到記憶體當中去。

3.不支援多使用者寫入以及任意修改檔案、只允許追加不允許修改。

二、hdfs的相關概念

1.塊: 塊儲存,就是把乙個物體分成很多塊的意思。

2.採用塊設計的好處:

支援大規模檔案儲存(把其切割然後儲存);方便元資料的管理(因為塊的大小是固定的);比較適合備份。

3.名稱節點(主節點)和資料節點:

在整個hdfs檔案系統當中,包含非常多的機器(也就是非常多的節點),其中乙個是主節點,其他節點是從節點。主節點是名稱節點,名稱節點是整個hdfs集群的管家,相當於資料目錄,表面那些資料儲存在**,提供元資料服務。而datanode(資料節點)負責儲存實際資料。

4.元資料:名稱節點要儲存元資料。其內容包含:

(1)檔案是什麼(檔名)

(2)檔案被分成多少塊

(3)每個塊和檔案是怎麼對映的

(4)每個塊被儲存在哪個伺服器上面

5.資料節點:(負責資料的存和取)

(1)儲存實際的資料。

(2)資料被儲存到本資料節點本地的linux檔案系統當中。

6.名稱節點:

塊到底具體儲存在哪個節點地資訊不是由fsimage儲存的,而是單獨在記憶體中某個區域單獨維護的,是通過名稱節點和資料節點不斷地互動溝通連線來實時地維護這些資訊、儲存在記憶體當中。

名稱節點包含fsimage、editlog兩個核心資料結構。

(1)fsimage:儲存系統檔案樹以及檔案樹中所有的檔案和資料夾的元資料。

(2)editlog:記錄對資料進行的諸如建立、刪除、重新命名等操作,相當於日誌。

(3)名稱節點的兩大資料結構處理流程:

shell命令啟動系統。然後把fsimage檔案從底層磁碟載入到記憶體當中,名稱節點的所有元資料的資訊都是儲存在記憶體當中,每次啟動時首先把底層fsimage裡面的內容全部載入到記憶體裡。當對fsimage進行修改之後,就會把修改的操作寫到editlog裡面去,然後把fsimage和editlog合併之後得到最新的元資料,此時名稱節點會把新版的fsimage保留下來、把舊版的刪掉,然後建立生成乙個空的edilog檔案。此時,所有資料結構資訊都儲存在fsimage中,editlog會不斷的清空和根據往後地操作不斷地儲存修改資訊。

editlog會不斷增大!後面會影響整個系統地效能!

(4). 如何解決editlog不斷增大影響系統效能地問題?

解決方法:第二名稱節點(secondary namenode),不僅可以解決editlog增大占用空間影響效能地問題(對e ditlog的處理),還起到了冷備份的作用(名稱節點的冷備份、因為名稱節點可能會出現問題)。

分布式檔案系統 HDFS

hdfs源於google發表的乙份gfs hdfs是hadoop專案的核心子專案,是分布式計算中資料儲存管理的基礎,可以執行在廉價機器上,具有高容錯 高可靠性 高可擴充套件性 高獲得性 高吞吐率等特性,為超大資料集的應用處理帶來極大便利。1 hdfs的優點 1 高容錯性 資料自動儲存多個版本,通過增...

分布式檔案系統HDFS

以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...

分布式檔案系統HDFS

以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...