溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

HDFS有什么用

發(fā)布時間:2022-02-19 09:54:21 來源:億速云 閱讀:148 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要為大家展示了“HDFS有什么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“HDFS有什么用”這篇文章吧。


一、 HDFS介紹

HDFS(Hadoop Distributed File System)是hadoop生態(tài)系統(tǒng)的一個重要組成部分,是Hadoop中的的存儲組件,在整個Hadoop中的地位非同一般,也是最基礎(chǔ)的一部分,因為它涉及到數(shù)據(jù)存儲,MapReduce等計算模型都要依賴于存儲在HDFS中的數(shù)據(jù)。HDFS是一個分布式文件系統(tǒng),以流式數(shù)據(jù)訪問模式存儲超大文件,將數(shù)據(jù)分塊存儲到一個商業(yè)硬件集群內(nèi)的不同機(jī)器上。HDFS在最開始是作為Apache Nutch搜索引擎項目的基礎(chǔ)架構(gòu)而開發(fā)的。HDFS是Apache Hadoop Core項目的一部分。

分布式文件系統(tǒng)解決的問題就是大數(shù)據(jù)存儲。它們是橫跨在多臺計算機(jī)上的存儲系統(tǒng)。分布式文件系統(tǒng)在大數(shù)據(jù)時代有著廣泛的應(yīng)用前景,它們?yōu)榇鎯吞幚沓笠?guī)模數(shù)據(jù)提供所需的擴(kuò)展能力。

HDFS有什么用
詳解HDFS入門詳解HDFS入門

二、HDFS設(shè)計理念

硬件出現(xiàn)故障是常態(tài),而HDFS由成百上千的服務(wù)器組成,每一個組成部分都有可能出現(xiàn)故障。因此故障的檢測和自動快速恢復(fù)是HDFS的核心架構(gòu)目標(biāo)。與一般的應(yīng)用不同,HDFS上的應(yīng)用主要是以流式讀取數(shù)據(jù)HDFS被設(shè)計成適合批量處理,而不是用戶交互式的。相較于數(shù)據(jù)訪問的反應(yīng)時間,實(shí)際上更注重數(shù)據(jù)訪問的高吞吐量。典型的 HDFS文件大小是GB到TB的級別。所以,HDFS被調(diào)整成支持大文件。它應(yīng)該提供很高的聚合數(shù)據(jù)帶寬,一個集群中支持?jǐn)?shù)百個節(jié)點(diǎn),一個集群中還應(yīng)該支持千萬級別的文件。

大部分 HDFS 應(yīng)用對文件要求的是 write-one-read-many訪問模型。一個文件一旦創(chuàng)建、寫入、關(guān)閉之后就不需要修改了。這一假設(shè)簡化了數(shù)據(jù)一致性問題,使高吞吐量的數(shù)據(jù)訪問成為可能。

移動計算的代價比之移動數(shù)據(jù)的代價低。一個應(yīng)用請求的計算,離它操作的數(shù)據(jù)越近就越高效,這在數(shù)據(jù)達(dá)到海量級別的時候更是如此。將計算移動到數(shù)據(jù)附近,比之將數(shù)據(jù)移動到應(yīng)用所在顯然更好。

在異構(gòu)的硬件和軟件平臺上的可移植性,這將推動需要大數(shù)據(jù)集的應(yīng)用更廣泛地采用 HDFS 作為平臺。

HDFS有什么用
詳解HDFS入門詳解HDFS入門

三、概念介紹

以下有幾個較為重要的概念需要介紹下:

(1)超大文件。目前的hadoop集群能夠存儲幾百TB甚至PB級的數(shù)據(jù)。

(2)流式數(shù)據(jù)訪問。HDFS的訪問模式是:一次寫入,多次讀取,更加關(guān)注的是讀取整個數(shù)據(jù)集的整體時間。

(3)商用硬件。HDFS集群的設(shè)備不需要多么昂貴和特殊,只要是一些日常使用的普通硬件即可,正因為如此,hdfs節(jié)點(diǎn)故障的可能性還是很高的,所以必須要有機(jī)制來處理這種單點(diǎn)故障,保證數(shù)據(jù)的可靠。

(4)不支持低時間延遲的數(shù)據(jù)訪問。hdfs關(guān)心的是高數(shù)據(jù)吞吐量,不適合那些要求低時間延遲數(shù)據(jù)訪問的應(yīng)用。

(5)單用戶寫入,不支持任意修改。hdfs的數(shù)據(jù)以讀為主,只支持單個寫入者,并且寫操作總是以添加的形式在文末追加,不支持在任意位置進(jìn)行修改。

四、為什么我們需要HDFS?

1.數(shù)據(jù)量巨大,磁盤開始很糾結(jié)的處理我們需要的海量信息。所以需要文件系統(tǒng)有大規(guī)模數(shù)據(jù)分布存儲能力。

2.讀取一塊磁盤的所有數(shù)據(jù)需要很長時間,寫入更是需要更長時間(寫入時間一般是讀取時間的3倍)即使有文件為1ZB,或者小點(diǎn)10EB時,這樣的磁盤也無法做到隨讀隨取。所以需要文件系統(tǒng)有高并發(fā)訪問能力。

3.當(dāng)數(shù)據(jù)集的大小超過一臺獨(dú)立物理計算機(jī)的存儲能力時,就有必要對它進(jìn)行分區(qū)并存儲到若干臺單獨(dú)的計算機(jī)上。

4.從概念圖上看,分布化的文件系統(tǒng)會因為分布后的結(jié)構(gòu)不完整,導(dǎo)致系統(tǒng)復(fù)雜度加大,并且引入的網(wǎng)絡(luò)編程,同樣導(dǎo)致分布式文件系統(tǒng)更加復(fù)雜。所以需要強(qiáng)大的容錯能力。

5.HDFS解決以上方案是分片冗余,本地校驗,需要數(shù)據(jù)塊存儲模式數(shù)據(jù)冗余式存儲,直接將多份的分片文件交給分片后的存儲服務(wù)器去校驗。冗余后的分片文件還有個額外功能,只要冗余的分片文件中有一份是完整的,經(jīng)過多次協(xié)同調(diào)整后,其他分片文件也將完整。

經(jīng)過協(xié)調(diào)校驗,無論是傳輸錯誤,I/O錯誤,還是個別服務(wù)器宕機(jī),整個系統(tǒng)里的文件是完整的。

6.分布后的文件系統(tǒng)有個無法回避的問題,因為文件不在一個磁盤導(dǎo)致讀取訪問操作的延時,這個是HDFS現(xiàn)在遇到的主要問題。

現(xiàn)階段,HDFS的配置是按照高數(shù)據(jù)吞吐量優(yōu)化的,可能會以高時間延時為代價。但萬幸的是,HDFS是具有很高彈性,可以針對具體應(yīng)用再優(yōu)化。

總結(jié)就是:可以實(shí)現(xiàn)負(fù)載均衡、提高響應(yīng)效率,因為多個服務(wù)器可以同時服務(wù),提高了效率。

以上是“HDFS有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI