分布式儲存原理

2021-08-28 21:07:02 字數 1929 閱讀 7406

當hdfs集群啟動之時,datanode會向namenode傳送資訊,包括block儲存位置,datanode位址。client向namenode匯報當前上傳檔案的資訊(block數量、檔案上傳時間、檔案許可權、擁有著)。

2.1client將大檔案切割成乙個個的block塊(以字元為單位進行切割)。client向namenode傳送請求,獲得blockid號,儲存block。

3.1 client拿到blockid號和datanode位址開始上傳檔案。

1)namenode返回給client一批位址後,這些datanode之間形成乙個pipeline管道。

2)client把block塊切割成乙個個packet(64k)不斷地往管道中輸送。這樣可以實現併發執行儲存 ,從而提高上傳效率。考慮到資料安全問題,需要給資料進行備份,預設有兩個副本檔案。

第乙個block儲存在負載不是很高的一台伺服器上。第乙個備份檔案block儲存在與第乙個block不同的機架隨機一台伺服器上。第二個備份檔案儲存在與第乙個備份檔案相同機架上的隨機一台伺服器。防止系統故障導致資料丟失,故採用持久化機制。

在namenode啟動的過程中,生成edits和fsimage兩個空檔案;secondarynamenode拉取edits檔案進行重演從而產生元資料,然後元資料與fsimage合併完成後,將新的fsimage(fsimage.checkpoint)推送給namenode;在secondarynamenode讀取edits檔案的同時,namenode會建立edits.new這個檔案,來儲存secondarynamenode在合併過程中,其他資料的操作。安全模式是hdfs所處的一種特殊狀態,在這種狀態下,檔案系統只接受讀資料請求(能檢視檔案目錄,但是無法讀取檔案內容),而不接受刪除、修改等變更請求。

安全模式下namenode所做的工作:

client計算大檔案的block數量;client會向namenode匯報(當前大檔案的block數,當前大檔案屬主、許可權,檔案上傳時間);client切割block;client向namenode請求block塊的id號以及位址;由於namenode掌控全域性,管理所有的datanode,所以它將負載不高的datanode位址返回給client;client拿到位址後,找到data去上傳資料;data將block儲存完畢後,會向namenode匯報當前的儲存情況。client請求namenode獲得block的位置資訊,因為namenode裡存放了block位置資訊的元資料。namenode返回所有block的位置資訊,並將這些資訊返回給客戶端。客戶端拿到block的位置資訊讀取block資訊,採用就近原則。搭建集群的三種模式:

1.偽分布式:在一台伺服器上,啟動多個程序,分別表示各個角色。

2.完全分布式:在多台伺服器上,每台伺服器啟動不同角色的程序,使用多台伺服器組成hdfs集群。

3.高可用的完全分布式:多乙個namenode的備份。

分布式儲存 HDFS原理

短時間內快速產生的海量的多種多樣的有價值的資料。1 分布式儲存 2 分布式計算 1 分布式批處理 當資料積累一定的時間後 假設乙個月 進行統一的處理。2 分布式流處理分布式流處理是乙個實時的處理。即資料生成後立即處理。3 機器學習 凡是 類的都是機器學習。分布式儲存 系統學習分布式儲存 過程 hdf...

分布式儲存

塊儲存,檔案儲存,物件儲存區別 分布式儲存的應用場景相對於其儲存介面,現在流行分為三種 物件儲存 也就是通常意義的鍵值儲存,其介面就是簡單的get put del和其他擴充套件,如七牛 又拍 swift s3 塊儲存 這種介面通常以qemu driver或者kernel module的方式存在,這種...

分布式儲存

普通儲存 das 直連式儲存。nas 連線式儲存。san 儲存網路。大檔案分布儲存 gfs google file system google檔案系統 hdfs hadoop distributed file system hadoop分布式檔案系統 小檔案分布儲存 adfs ali distrib...