亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

基于Hadoop分布式文件系統(tǒng)的單點(diǎn)問題的研究論文

時間:2022-12-17 01:05:06 其他類論文 我要投稿
  • 相關(guān)推薦

基于Hadoop分布式文件系統(tǒng)的單點(diǎn)問題的研究論文

  1 引言

基于Hadoop分布式文件系統(tǒng)的單點(diǎn)問題的研究論文

  如今網(wǎng)絡(luò)的飛速發(fā)展,數(shù)據(jù)量的增多,這就要求數(shù)據(jù)庫能夠具有處理超大規(guī)模數(shù)據(jù)的能力。Hadoop分布式平臺的出現(xiàn),很好地解決了處理海量數(shù)據(jù)的難題。Hadoop集群架構(gòu)有兩個核心的設(shè)計(jì),分別是HDFS(Hadoop Distributed FileSystem)和MapReduce。由于HDFS只有一個元數(shù)據(jù)服務(wù)器NameNode,導(dǎo)致HDFS存在單點(diǎn)故障,單點(diǎn)內(nèi)存不足等問題。本文在分析研究HDFS單點(diǎn)問題的基礎(chǔ)上,針對單點(diǎn)內(nèi)存瓶頸問題,提出了一種新型的上層歸檔文件系統(tǒng),用來優(yōu)化海量小文件的處理,可有效地解決單點(diǎn)內(nèi)存瓶頸問題。

  2 HDFS架構(gòu)

  Hadoop分布式文件系統(tǒng)(HDFS)是Hadoop分布式平臺的一個核心組件,其設(shè)計(jì)目的是為了解決超大文件存儲難題。HDFS是由一個主節(jié)點(diǎn)和多個子節(jié)點(diǎn)構(gòu)成的主從結(jié)構(gòu)。主節(jié)點(diǎn)被稱為名稱節(jié)點(diǎn)(NameNode),子節(jié)點(diǎn)被稱為數(shù)據(jù)節(jié)點(diǎn)(DataNode)。

  名稱節(jié)點(diǎn)主要負(fù)責(zé)管理分布式文件系統(tǒng)中的元數(shù)據(jù)信息,處理用戶文件訪問操作請求等。而被上傳到Hadoop分布式文件系統(tǒng)中的大數(shù)據(jù)則保存在數(shù)據(jù)節(jié)點(diǎn)中。通過心跳機(jī)制,每隔一段時間數(shù)據(jù)節(jié)點(diǎn)與名稱節(jié)點(diǎn)進(jìn)行信息交互。

  Hadoop分布式文件系統(tǒng)包含名稱節(jié)點(diǎn)、數(shù)據(jù)節(jié)點(diǎn)、數(shù)據(jù)塊、數(shù)據(jù)包等組件。

  名稱節(jié)點(diǎn)(NameNode)是HDFS的主節(jié)點(diǎn),負(fù)責(zé)管理并維護(hù)整個分布式文件系統(tǒng)的元數(shù)據(jù)信息,即:FSImage信息和EditLog信息。NameNode又決定了大數(shù)據(jù)文件與數(shù)據(jù)塊之間的映射,數(shù)據(jù)塊與數(shù)據(jù)節(jié)點(diǎn)之間的映射,處理客戶端發(fā)來的文件操作訪問請求。

  數(shù)據(jù)節(jié)點(diǎn)(DataNode)主要負(fù)責(zé)存儲數(shù)據(jù)文件,并且每隔一段時間向主節(jié)點(diǎn)發(fā)送存儲數(shù)據(jù)映射列表。

  數(shù)據(jù)塊(Data Block)。分布式文件系統(tǒng)存儲的數(shù)據(jù)都存儲在數(shù)據(jù)塊中。上傳的數(shù)據(jù)文件首先被分割成默認(rèn)大小64MB的數(shù)據(jù)塊,然后文件以數(shù)據(jù)塊的形式存放在不同的DataNode節(jié)點(diǎn)上,是分布式文件系統(tǒng)存儲數(shù)據(jù)的基本單位。為了防止數(shù)據(jù)塊丟失,每塊默認(rèn)復(fù)制三塊,其中兩個數(shù)據(jù)塊存儲在一個機(jī)架中,另一個數(shù)據(jù)塊則被存儲在其他的機(jī)架中,大大提高了HDFS數(shù)據(jù)的可用性。

  數(shù)據(jù)包(Data Packet)。在執(zhí)行寫操作時,需要將上傳的數(shù)據(jù)先保存在本地目錄中,待累計(jì)到系統(tǒng)規(guī)定值后才將數(shù)據(jù)一次寫入到Hadoop分布式文件系統(tǒng)中。這樣,每次上傳的數(shù)據(jù)稱為一個數(shù)據(jù)包。

  3 NameNode單點(diǎn)問題分析

  3.1 單點(diǎn)故障

  單點(diǎn)故障是指引起系統(tǒng)整體失效的部件,當(dāng)該部件失效時,會造成整個系統(tǒng)無法工作。Hadoop分布式文件系統(tǒng)由一個主節(jié)點(diǎn)和多個子節(jié)點(diǎn)構(gòu)成的。NameNode節(jié)點(diǎn)負(fù)責(zé)管理和維護(hù)所有的命名空間和元數(shù)據(jù)信息,名稱節(jié)點(diǎn)主要負(fù)責(zé)管理分布式文件系統(tǒng)中的元數(shù)據(jù)信息,處理用戶文件訪問操作請求等。一旦發(fā)生主節(jié)點(diǎn)故障會使整個系統(tǒng)無法正常工作,這對于使用者來說是災(zāi)難性的。

  3.2 性能瓶頸

  NameNode節(jié)點(diǎn)主要負(fù)責(zé)管理并維護(hù)整個分布式文件系統(tǒng)的元數(shù)據(jù)信息,處理用戶文件訪問操作請求。每次用戶發(fā)出文件訪問操作請求時,NameNode節(jié)點(diǎn)都需要響應(yīng)客戶端的請求。由于HDFS僅有一個名稱節(jié)點(diǎn),當(dāng)大量客戶端同時發(fā)出文件訪問操作請求,單一的名稱節(jié)點(diǎn)無法及時一一做出響應(yīng),這必然會對HDFS正常運(yùn)行造成嚴(yán)重的影響,是HDFS的性能瓶頸。

  3.3 內(nèi)存瓶頸

  NameNode節(jié)點(diǎn)中保存了整個系統(tǒng)的命名空間,負(fù)責(zé)管理并維護(hù)整個分布式文件系統(tǒng)的元數(shù)據(jù)信息,即:FSImage信息和EditLog信息。對于每個上傳的文件,NameNode節(jié)點(diǎn)會為其自動生成相應(yīng)的元數(shù)據(jù)信息,而這些元數(shù)據(jù)信息會占用少許的主節(jié)點(diǎn)內(nèi)存空間。HDFS適合存儲大數(shù)據(jù)文件,一般情況下,NameNode節(jié)點(diǎn)存儲的元數(shù)據(jù)信息不會對整個Hadoop集群造成影響。上傳文件后,用戶更多的是與數(shù)據(jù)節(jié)點(diǎn)進(jìn)行訪問交互,不會對訪問性能造成影響。然而用戶選擇上傳海量的小文件時,元數(shù)據(jù)節(jié)點(diǎn)需要為每個小文件生成對應(yīng)的元數(shù)據(jù)信息,這勢必對NameNode單點(diǎn)內(nèi)存性能造成影響,從而對整個Hadoop集群的擴(kuò)展性造成影響。一般,當(dāng)用戶上傳小文件數(shù)量達(dá)到一億,相應(yīng)的元數(shù)據(jù)信息約占主節(jié)點(diǎn)20G的存儲空間。若上傳的小文件以指數(shù)級增長,HDFS集群將不足以支持海量文件的存儲。同樣,NameNode內(nèi)存瓶頸嚴(yán)重制約了集群的擴(kuò)展。

  4 對小文件存儲優(yōu)化的實(shí)現(xiàn)

  上傳小文件前,首先對海量小文件進(jìn)行預(yù)處理,將本地目錄中需要處理的小文件寫入HashMap集合中,同時通過格式轉(zhuǎn)換生成文件流式集合,其中小文件文件名作為key,文件內(nèi)容作為value。然后以SequenceFile作為容器,再將HashMap中存儲的海量小文件進(jìn)行歸檔合并成一個大文件。最后,將合并后的大文件上傳Hadoop服務(wù)器序列化存儲在HDFS中,從而緩解了NameNode節(jié)點(diǎn)內(nèi)存瓶頸問題。

  SmallFilesWrite類中,成員變量有兩個,就是String類型的靜態(tài)成員變量SOURCE_PATH和TARGET_PATH,SOURCE_PATH變量表示源路徑,即預(yù)上傳文件本地目錄路徑。TARGET_PATH表示目標(biāo)路徑,即上傳到指定Hadoop分布式文件系統(tǒng)路徑。成員方法主要有readFiles方法、file2Bytes方法和main方法。

  5 結(jié)論

  本文針對Hadoop分布式文件系統(tǒng)的單點(diǎn)內(nèi)存瓶頸問題,提出了采用小文件歸并的優(yōu)化算法。根據(jù)Hadoop存儲數(shù)據(jù)特點(diǎn),利用小文件合并大文件,可有效減少元數(shù)據(jù)的生成,解決了單點(diǎn)內(nèi)存瓶頸問題。在Hadoop分布式文件系統(tǒng)單點(diǎn)內(nèi)存瓶頸優(yōu)化的基礎(chǔ)上,對Hadoop分布式文件系統(tǒng)的性能瓶頸的優(yōu)化將是本人未來主要研究的內(nèi)容。

【基于Hadoop分布式文件系統(tǒng)的單點(diǎn)問題的研究論文】相關(guān)文章:

基于問題導(dǎo)引的探究式教學(xué)研究論文08-03

高職院;趩栴}模式的高等數(shù)學(xué)教學(xué)的研究論文05-06

基于渠道建設(shè)的體育用品營銷創(chuàng)新問題的研究論文04-28

基于幼兒園日常問題的項(xiàng)目式研究的組織與實(shí)施論文04-25

電壓跌落問題的研究論文05-05

淺談急診急救的問題的研究論文04-27

成本核算的問題研究論文05-01

企業(yè)債務(wù)重組問題的研究論文06-05

基于單片機(jī)監(jiān)控系統(tǒng)的研究畢業(yè)論文06-14