Hadoop文件系統(tǒng)使用分布式文件系統(tǒng)設(shè)計(jì)開發(fā)。它是運(yùn)行在普通硬件。不像其他的分布式系統(tǒng),HDFS是高度容錯(cuò)以及使用低成本的硬件設(shè)計(jì)。
HDFS擁有超大型的數(shù)據(jù)量,并提供更輕松地訪問。為了存儲(chǔ)這些龐大的數(shù)據(jù),這些文件都存儲(chǔ)在多臺(tái)機(jī)器。這些文件都存儲(chǔ)以冗余的方式來拯救系統(tǒng)免受可能的數(shù)據(jù)損失,在發(fā)生故障時(shí)。 HDFS也使得可用于并行處理的應(yīng)用程序。
下面給出是Hadoop的文件系統(tǒng)的體系結(jié)構(gòu)。
HDFS遵循主從架構(gòu),它具有以下元素。
名稱節(jié)點(diǎn)是包含GNU/Linux操作系統(tǒng)和軟件名稱節(jié)點(diǎn)的普通硬件。它是一個(gè)可以在商品硬件上運(yùn)行的軟件。具有名稱節(jié)點(diǎn)系統(tǒng)作為主服務(wù)器,它執(zhí)行以下任務(wù):
Datanode具有GNU/Linux操作系統(tǒng)和軟件Datanode的普通硬件。對于集群中的每個(gè)節(jié)點(diǎn)(普通硬件/系統(tǒng)),有一個(gè)數(shù)據(jù)節(jié)點(diǎn)。這些節(jié)點(diǎn)管理數(shù)據(jù)存儲(chǔ)在它們的系統(tǒng)。
一般用戶數(shù)據(jù)存儲(chǔ)在HDFS文件。在一個(gè)文件系統(tǒng)中的文件將被劃分為一個(gè)或多個(gè)段和/或存儲(chǔ)在個(gè)人數(shù)據(jù)的節(jié)點(diǎn)。這些文件段被稱為塊。換句話說,數(shù)據(jù)的HDFS可以讀取或?qū)懭氲淖钚×勘环Q為一個(gè)塊。缺省的塊大小為64MB,但它可以增加按需要在HDFS配置來改變。
故障檢測和恢復(fù):由于HDFS包括大量的普通硬件,部件故障頻繁。因此HDFS應(yīng)該具有快速和自動(dòng)故障檢測和恢復(fù)機(jī)制。
巨大的數(shù)據(jù)集:HDFS有數(shù)百個(gè)集群節(jié)點(diǎn)來管理其龐大的數(shù)據(jù)集的應(yīng)用程序。
數(shù)據(jù)硬件:請求的任務(wù),當(dāng)計(jì)算發(fā)生不久的數(shù)據(jù)可以高效地完成。涉及巨大的數(shù)據(jù)集特別是它減少了網(wǎng)絡(luò)通信量,并增加了吞吐量。