HDFS優缺點

HDFS架構簡述node

1、HDFS簡介安全

HDFS(Hadoop distributed File System):Hadoop分佈式文件系統。是基於流數據模式訪問和處理超大文件的須要而開發的,能夠運行於廉價的服務器上。它所具備的高容錯,高可靠性,高可擴展性,高得到性,高吞吐率等特徵爲海量數據提供了不怕故障的存儲,爲超大數據集的應用帶來了不少便利。簡單來講就是把一個超大號文件按必定大小分割並放置在多臺服務器上,這樣多臺服務器同時工做,效率超高,並且安全性也會提升。服務器

2、HDFS組成結構以及各部分做用架構

HDFS主要由四個部分組成,分別爲Client,nameNode、DataNode、以及Secondary NameNode組成。
2.1Client(客戶端)分佈式

  • 文件切分:文件上傳HDFS的時候,client根據需求將文件切分紅一個一個的小數據塊(block),而後進行存儲。
  • 每一個小數據塊(block)在其餘服務器上都有副本,client會與namenode進行通訊,獲取文件及其副本位置,爲之後作打算。
  • 與DataNode進行通訊,讀取或寫入數據。
  • client能夠管理HDFS,好比啓動或關閉。

2.2nameNode(管理者)
nameNode在HDFS是管理者的做用,相似於現實世界中的國王地位,客戶端和secondary nameNode都是與他進行通訊,而後由他發號施令來操做DataNode。主要做用有:oop

  • 管理HDFS的名稱空間
  • 管理數據塊(block)映射信息
  • 配置副本策略
  • 處理客戶端請求

2.3DataNode(執行者)
DataNode在文檔中的角色是slave,翻譯過來就是奴隸的意思(因此你們知道他的地位了吧),主要就是存儲數據塊和讀寫數據塊用的:大數據

  • 存儲實際的數據塊(block)
  • 執行數據塊的讀寫操做

2.4secondary nameNode
他是nameNode的死忠,幫助nameNode完成一些工做,而且在nameNode要掛的時候給他續命,主要做用以下:.net

  • 按期合併nameNode中的fsimage(映像文件)和fsedits(日誌),並推送給nameNode,避免nameNode中的fsedits過大。
  • 在緊急狀況下,可輔助恢復nameNode。

3、副本放置策略翻譯

第一個副本:放置在上傳文件的DN;若是是集羣外提交,則隨機挑選一臺磁盤不太滿,CPU不太忙的節點。
第二個副本:放置在於第一個副本不一樣的 機架的節點上。日誌

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

以上轉載自 https://blog.csdn.net/a15732111571/article/details/89570865

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

優勢:

數據冗餘,硬件容錯

適合存儲大文件

處理流式數據

可構建在廉價機器上

缺點:

不能低延遲的數據訪問

不適合存儲小文件(緣由及解決方法:存儲每份數據文件對應一個元數據,多份文件須要存儲多份元數據,耗費進程,解決方法:Hadoop Archive 將小文件打包成xxx.har,對於hadoop只有一份元數據,每一個文件的名字由har自管理)

相關文章
相關標籤/搜索