hdfs在hadoop中的作用是為海量的數據提供了存儲,能提供高吞吐量的數據訪問,HDFS有高容錯性的特點,并且設計用來部署在低廉的硬件上;而且它提供高吞吐量來訪問應用程序的數據,適合那些有著超大數據集的應用程序。
Hadoop是一個由Apache基金會所開發的分布式系統基礎架構。用戶可以在不了解分布式底層細節的情況下,開發分布式程序。充分利用集群的威力進行高速運算和存儲。
Hadoop實現了一個分布式文件系統(Hadoop Distributed File System),其中一個組件是HDFS。
HDFS有高容錯性的特點,并且設計用來部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)來訪問應用程序的數據,適合那些有著超大數據集(large data set)的應用程序。HDFS放寬了(relax)POSIX的要求,可以以流的形式訪問(streaming access)文件系統中的數據。
Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,而MapReduce則為海量的數據提供了計算。
HDFS
對外部客戶機而言,HDFS就像一個傳統的分級文件系統??梢詣摻?、刪除、移動或重命名文件,等等。但是 HDFS 的架構是基于一組特定的節點構建的(參見圖 1),這是由它自身的特點決定的。這些節點包括 NameNode(僅一個),它在 HDFS 內部提供元數據服務;DataNode,它為 HDFS 提供存儲塊。由于僅存在一個 NameNode,因此這是 HDFS 1.x版本的一個缺點(單點失?。T贖adoop 2.x版本可以存在兩個NameNode,解決了單節點故障問題。
存儲在 HDFS 中的文件被分成塊,然后將這些塊復制到多個計算機中(DataNode)。這與傳統的 RAID 架構大不相同。塊的大?。?.x版本默認為 64MB,2.x版本默認為128MB)和復制的塊數量在創建文件時由客戶機決定。NameNode 可以控制所有文件操作。HDFS 內部的所有通信都基于標準的 TCP/IP 協議。
更多相關知識,請訪問:PHP中文網!