溫馨提示×

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

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

HDFS設(shè)計(jì)理念是什么

發(fā)布時(shí)間:2021-12-13 11:00:58 來源:億速云 閱讀:241 作者:小新 欄目:大數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)HDFS設(shè)計(jì)理念是什么,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

一、 HDFS介紹

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

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

HDFS設(shè)計(jì)理念是什么

二、HDFS設(shè)計(jì)理念

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

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

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

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

HDFS設(shè)計(jì)理念是什么

三、概念介紹

以下有幾個(gè)較為重要的概念需要介紹下

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

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

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

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

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

四、為什么我們需要HDFS?

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

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

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

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

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

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

6.分布后的文件系統(tǒng)有個(gè)無法回避的問題,因?yàn)槲募辉谝粋€(gè)磁盤導(dǎo)致讀取訪問操作的延時(shí),這個(gè)是HDFS現(xiàn)在遇到的主要問題。

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

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

HDFS設(shè)計(jì)理念是什么

關(guān)于“HDFS設(shè)計(jì)理念是什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

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

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

AI