專(zhuān)利名稱(chēng):基于Hadoop的磁盤(pán)配置系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型涉及服務(wù)器技術(shù)領(lǐng)域,特別涉及一種基于Hadoop的磁盤(pán)配置系統(tǒng)。
背景技術(shù):
Hadoop是一個(gè)分布式系統(tǒng)基礎(chǔ)架構(gòu)。用戶(hù)可以在不了解分布式底層細(xì)節(jié)的情況下,開(kāi)發(fā)分布式程序。充分利用集群的威力高速運(yùn)算和存儲(chǔ)。Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng)(Hadoop Distributed File System,HDFS)。HDFS具有著高容錯(cuò)性的特點(diǎn),并且設(shè)計(jì)用來(lái)部署在低廉的硬件上。并且,其可以提供高傳輸率(high throughput)來(lái)訪問(wèn)應(yīng)用程序的數(shù)據(jù),適合超大數(shù)據(jù)集(largedata set)的應(yīng)用程序。在基于DFS(Distributed File System,分布式文件系統(tǒng))和 MapReduce 的 Hadoop集群中,每個(gè)物理節(jié)點(diǎn)同時(shí)承擔(dān)著兩份用戶(hù)角色。其中DFS用戶(hù)對(duì)數(shù)據(jù)進(jìn)行分布式存儲(chǔ),并且為上層的Mapreduce計(jì)算層提供支持,MapReduce用戶(hù)對(duì)存儲(chǔ)在DFS上的數(shù)據(jù)進(jìn)行分布式·計(jì)算。所以DFS用戶(hù)和Mapreduce用戶(hù)在執(zhí)行任務(wù)過(guò)程中,產(chǎn)生的IO都會(huì)共同作用在同一塊磁盤(pán)上,尤其是在計(jì)算的shuffle階段,存在大量的隨機(jī)IO讀寫(xiě),不僅導(dǎo)致易出現(xiàn)IO性能瓶頸,增加任務(wù)執(zhí)行時(shí)間,而且還會(huì)增高硬盤(pán)的故障率。如圖I所示,傳統(tǒng)的Hadoop磁盤(pán)配置系統(tǒng)包括12塊磁盤(pán),且磁盤(pán)為7200轉(zhuǎn)的近線SATA (Serial Advanced Technology Attachment,串行高級(jí)技術(shù)附加裝置)硬盤(pán)。其中,12
塊磁盤(pán)分別為disk0、diskl、disk2......diskll,每塊磁盤(pán)均同時(shí)承載DFS和Mapreduce兩
種配置方式。這種配置方式的隨機(jī)IO性能較差,故障率較高,并且對(duì)Mapreduce用戶(hù)、DFS用戶(hù)和磁盤(pán)本身的性能均有影響。具體地,對(duì)于Mapreduce用戶(hù),在執(zhí)行任務(wù)過(guò)程中,如果產(chǎn)生大量的隨機(jī)10,則會(huì)出現(xiàn)10性能瓶頸。如果磁盤(pán)空間被DFS的存儲(chǔ)數(shù)據(jù)占滿(mǎn),會(huì)導(dǎo)致計(jì)算任務(wù)異常中止。而對(duì)于DFS用戶(hù),數(shù)據(jù)存儲(chǔ)的磁盤(pán)會(huì)因?yàn)镸apreduce的頻繁讀寫(xiě)而增高故障率。DFS的性能并不隨著磁盤(pán)的數(shù)量線性增長(zhǎng),沒(méi)有必要在同一物理節(jié)點(diǎn)上配置過(guò)多的硬盤(pán)用于 DFS。對(duì)于磁盤(pán)本身,同時(shí)執(zhí)行Mapreduce的隨機(jī)10和DFS的順序10,則性能會(huì)明顯下降。
實(shí)用新型內(nèi)容本實(shí)用新型的目的旨在至少解決上述技術(shù)缺陷之一,特別提出一種基于Hadoop的磁盤(pán)配置系統(tǒng),該磁盤(pán)配置系統(tǒng)對(duì)計(jì)算和存儲(chǔ)用戶(hù)獨(dú)立配置相應(yīng)的磁盤(pán),可以明顯提升Hadoop集群的10性能,并且可以有效降低磁盤(pán)的故障率。為實(shí)現(xiàn)上述目的,本實(shí)用新型實(shí)施例提供了一種基于Hadoop的磁盤(pán)配置系統(tǒng),包括分布式文件系統(tǒng)DFS接口,用于與DFS用戶(hù)層相連;分布式計(jì)算框架Mapreduce接口,用于與Mapreduce用戶(hù)層相連;多個(gè)第一類(lèi)磁盤(pán),所述多個(gè)第一類(lèi)磁盤(pán)分別與所述DFS接口相連,用于為所述DFS用戶(hù)層提供數(shù)據(jù)的分布式存儲(chǔ);多個(gè)第二類(lèi)磁盤(pán),所述多個(gè)第二類(lèi)磁盤(pán)分別與所述Mapreduce接口相連,用于為所述Mapreduce用戶(hù)層的分布式計(jì)算數(shù)據(jù)提供存儲(chǔ)。根據(jù)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng),基于Mapreduce用戶(hù)和DFS用戶(hù)的不同IO需求,對(duì)計(jì)算和存儲(chǔ)用戶(hù)獨(dú)立配置相應(yīng)的磁盤(pán),可以顯著提高Hadoop集群的IO吞吐率,尤其是隨機(jī)IO的性能,進(jìn)而有效提升CPU的使用率,使得計(jì)算任務(wù)執(zhí)行的更快。并且,可以并有效降低磁盤(pán)的故障率。在本實(shí)用新型的一個(gè)實(shí)施例中,所述第一類(lèi)磁盤(pán)為串行高級(jí)技術(shù)附加裝置磁盤(pán)。在本實(shí)用新型的一個(gè)實(shí)施例中,所述第二類(lèi)磁盤(pán)為串行連接SCSI接口磁盤(pán)、基于閃存的固態(tài)磁盤(pán)或Flash磁盤(pán)。在本實(shí)用新型的一個(gè)實(shí)施例中,所述第一類(lèi)磁盤(pán)的個(gè)數(shù)與所述第二類(lèi)磁盤(pán)的個(gè)數(shù)·之間的比例可配置。在本實(shí)用新型的一個(gè)實(shí)施例中,所述第一類(lèi)磁盤(pán)的個(gè)數(shù)與所述第二類(lèi)磁盤(pán)的個(gè)數(shù)相同。本實(shí)用新型附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本實(shí)用新型的實(shí)踐了解到。
本實(shí)用新型上述的和/或附加的方面和優(yōu)點(diǎn)從
以下結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中圖I為傳統(tǒng)的基于Hadoop的磁盤(pán)配置系統(tǒng)的不意圖;圖2為根據(jù)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)的示意圖;以及圖3為根據(jù)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)的示意圖。
具體實(shí)施方式
下面詳細(xì)描述本實(shí)用新型的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類(lèi)似的標(biāo)號(hào)表示相同或類(lèi)似的元件或具有相同或類(lèi)似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本實(shí)用新型,而不能解釋為對(duì)本實(shí)用新型的限制。在本實(shí)用新型的描述中,需要說(shuō)明的是,除非另有規(guī)定和限定,術(shù)語(yǔ)“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是機(jī)械連接或電連接,也可以是兩個(gè)元件內(nèi)部的連通,可以是直接相連,也可以通過(guò)中間媒介間接相連,對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以根據(jù)具體情況理解上述術(shù)語(yǔ)的具體含義。此外,術(shù)語(yǔ)“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括一個(gè)或者更多個(gè)該特征。在本實(shí)用新型的描述中,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上,除非另有明確具體的限定。下面參考圖2和圖3描述根據(jù)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)1000。其中,該基于Hadoop的磁盤(pán)配置系統(tǒng)1000可以適用于服務(wù)器、Hadoop集群的IO性能及磁盤(pán)故障處理。如圖2所示,本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)1000,包括分布式文件系統(tǒng)DFS接口 100、分布式計(jì)算框架Mapreduce接口 200、多個(gè)第一類(lèi)硬盤(pán)300和多個(gè)第二類(lèi)硬盤(pán)400。其中,DFS接口 100與DFS用戶(hù)層500相連,Mapreduce接口 200與Mapreduce用戶(hù)層600相連。多個(gè)第一類(lèi)硬盤(pán)300分別與DFS接口 100相連,為DFS用戶(hù)層500提供數(shù)據(jù)的分布式存儲(chǔ)。多個(gè)第二類(lèi)磁盤(pán)400分別與Mapreduce接口相連,為Mapreduce用戶(hù)層600的分布式計(jì)算數(shù)據(jù)提供存儲(chǔ)。在本實(shí)用新型的一個(gè)實(shí)施例中,第一類(lèi)磁盤(pán)300為串行高級(jí)技術(shù)附加裝置硬盤(pán)SATA硬盤(pán)。對(duì)于使用近線SATA硬盤(pán)的DFS用戶(hù),主要是基于大數(shù)據(jù)塊的順序10。其中,大數(shù)據(jù)塊的大小(block size)是256MB。經(jīng)過(guò)試驗(yàn)驗(yàn)證,當(dāng)硬盤(pán)數(shù)量超過(guò)5個(gè)以后,HDFS IO性能提升的空間有限,同時(shí)面臨網(wǎng)絡(luò)傳輸?shù)钠款i,所以DFS可以使用更大容量,更低轉(zhuǎn)速的SATA硬盤(pán),不僅帶來(lái)成本及功耗方面的收益,而且不會(huì)受到計(jì)算任務(wù)的影響,磁盤(pán)的故障率可明顯降低。對(duì)于DFS用戶(hù)來(lái)說(shuō),其維護(hù)數(shù)據(jù)副本的開(kāi)銷(xiāo)也能夠得到有效的降低。在本實(shí)用新型的又一個(gè)實(shí)施例中,第二類(lèi)磁盤(pán)400為SAS(Serial Attached SCSI,串行連接SCSI接口)硬盤(pán)、基于閃存的SSD硬盤(pán)(solid state disk,固態(tài)磁盤(pán))或Flash磁盤(pán)。SAS硬盤(pán)或SSD在隨機(jī)IO性能方面具有明顯的性能收益,可以有效提高節(jié)點(diǎn)的IO吞吐率及CPU使用效率,從而提升Hadoop計(jì)算任務(wù)的執(zhí)行效率。并且,硬盤(pán)具有更高的可靠性,即使發(fā)生故障,更換硬盤(pán)時(shí)也不需要進(jìn)行數(shù)據(jù)同步,此外還可以避免因?yàn)榇疟P(pán)空間不足導(dǎo)致計(jì)算任務(wù)異常終止的問(wèn)題。其中,第一類(lèi)磁盤(pán)300的個(gè)數(shù)和第二類(lèi)磁盤(pán)400的個(gè)數(shù)之間的比例為可配置的。優(yōu)選的,第一類(lèi)磁盤(pán)300的個(gè)數(shù)和第二類(lèi)磁盤(pán)400的個(gè)數(shù)之間的比例為1,即第一類(lèi)磁盤(pán)300的個(gè)數(shù)和第二類(lèi)磁盤(pán)400的個(gè)數(shù)相同。下面參考圖3以12塊磁盤(pán)的服務(wù)器為例對(duì)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)進(jìn)行描述。其中,dfs為DFS存儲(chǔ)用戶(hù),mapred為Mapreduce計(jì)算用戶(hù)。從圖中可以看出,12塊磁盤(pán)包括disk。、diskl、disk2......diskll,其中,diskO至
disk5為第二類(lèi)磁盤(pán),即與Mapreduce接口 200相連,為Mapreduce用戶(hù)層600的分布式計(jì)算提供數(shù)據(jù)。例如,diskO至disk5可以為SAS磁盤(pán)、SSD或Flash。disk6至diskll為第一類(lèi)磁盤(pán),即與DFS接口 100相連,為DFS用戶(hù)層500提供數(shù)據(jù)的分布式存儲(chǔ)。例如,disk6至diskll可以為SATA磁盤(pán)。由此,分別對(duì)DFS存儲(chǔ)用戶(hù)和Mapreduce計(jì)算用互獨(dú)立配置相應(yīng)的磁盤(pán),從而顯著提高Hadoop集群的10吞吐率,特別是10的性能,進(jìn)而有效地提升CPU的使用率,并且可以有效降低磁盤(pán)的故障率??梢岳斫獾氖牵瑘D3示出的基于Hadoop的磁盤(pán)配置系統(tǒng)的第一類(lèi)磁盤(pán)300和第二類(lèi)磁盤(pán)400的個(gè)數(shù)相同,上述示例僅是優(yōu)選實(shí)施例。本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng)的第一和第二類(lèi)磁盤(pán)的配置比例還可以為其他數(shù)量。例如,以12塊硬盤(pán)為例,基于Hadoop的磁盤(pán)配置系統(tǒng)中的第一類(lèi)磁盤(pán)300的個(gè)數(shù)可以為8塊,第二類(lèi)磁盤(pán)400的個(gè)數(shù)可以為4塊。根據(jù)本實(shí)用新型實(shí)施例的基于Hadoop的磁盤(pán)配置系統(tǒng),基于Mapreduce用戶(hù)和DFS用戶(hù)的不同IO需求,對(duì)計(jì)算和存儲(chǔ)用戶(hù)獨(dú)立配置相應(yīng)的磁盤(pán),可以顯著提高Hadoop集群的IO吞吐率,尤其是隨機(jī)IO的性能,進(jìn)而有效提升CPU的使用率,使得計(jì)算任務(wù)執(zhí)行的更快。并且,可以并有效降低磁盤(pán)的故障率。具體地,Mapreduce不會(huì)因磁盤(pán)空間不足而被迫中止,涉及的磁盤(pán)故障后,更換前也不再需要同步數(shù)據(jù)。DFS涉及的磁盤(pán)不會(huì)受頻繁隨機(jī)IO的影響,從而故障率可以明顯降低。在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本實(shí)用新型的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。盡管已經(jīng)示出和描述了本實(shí)用新型的實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以理解在不脫離本實(shí)用新型的原理和精神的情況下可以對(duì)這些實(shí)施例進(jìn)行多種變化、修 改、替換和變型,本實(shí)用新型的范圍由所附權(quán)利要求及其等同限定。
權(quán)利要求1.一種基于Hadoop的磁盤(pán)配置系統(tǒng),其特征在于,包括 分布式文件系統(tǒng)DFS接口,用于與DFS用戶(hù)層相連; 分布式計(jì)算框架Mapreduce接口,用于與Mapreduce用戶(hù)層相連; 多個(gè)第一類(lèi)磁盤(pán),所述多個(gè)第一類(lèi)磁盤(pán)分別與所述DFS接口相連,用于為所述DFS用戶(hù)層提供數(shù)據(jù)的分布式存儲(chǔ);以及 多個(gè)第二類(lèi)磁盤(pán),所述多個(gè)第二類(lèi)磁盤(pán)分別與所述Mapreduce接口相連,用于為所述Mapreduce用戶(hù)層的分布式計(jì)算數(shù)據(jù)提供存儲(chǔ)。
2.如權(quán)利要求I所述的基于Hadoop的磁盤(pán)配置系統(tǒng),其特征在于,所述第一類(lèi)磁盤(pán)為串行高級(jí)技術(shù)附加裝置磁盤(pán)。
3.如權(quán)利要求I所述的基于Hadoop的磁盤(pán)配置系統(tǒng),其特征在于,所述第二類(lèi)磁盤(pán)為 串行連接SCSI接口磁盤(pán)、基于閃存的固態(tài)磁盤(pán)或Flash磁盤(pán)。
4.如權(quán)利要求I所述的基于Hadoop的磁盤(pán)配置系統(tǒng),其特征在于,所述第一類(lèi)磁盤(pán)的個(gè)數(shù)與所述第二類(lèi)磁盤(pán)的個(gè)數(shù)之間的比例可配置。
5.如權(quán)利要求I所述的基于Hadoop的磁盤(pán)配置系統(tǒng),其特征在于,所述第一類(lèi)磁盤(pán)的個(gè)數(shù)與所述第二類(lèi)磁盤(pán)的個(gè)數(shù)相同。
專(zhuān)利摘要本實(shí)用新型公開(kāi)了一種基于Hadoop的磁盤(pán)配置系統(tǒng),包括分布式文件系統(tǒng)DFS接口,用于與DFS用戶(hù)層相連;分布式計(jì)算框架Mapreduce接口,用于與Mapreduce用戶(hù)層相連;多個(gè)第一類(lèi)磁盤(pán),所述多個(gè)第一類(lèi)磁盤(pán)分別與所述DFS接口相連,用于為所述DFS用戶(hù)層提供數(shù)據(jù)的分布式存儲(chǔ);多個(gè)第二類(lèi)磁盤(pán),所述多個(gè)第二類(lèi)磁盤(pán)分別與所述Mapreduce接口相連,用于為所述Mapreduce用戶(hù)層的分布式計(jì)算數(shù)據(jù)提供存儲(chǔ)。本實(shí)用新型基于Mapreduce用戶(hù)和DFS用戶(hù)的不同IO需求,對(duì)計(jì)算和存儲(chǔ)用戶(hù)獨(dú)立配置相應(yīng)的磁盤(pán),可以顯著提高Hadoop集群的IO吞吐率并降低故障率。
文檔編號(hào)G06F3/06GK202795334SQ201220345438
公開(kāi)日2013年3月13日 申請(qǐng)日期2012年7月16日 優(yōu)先權(quán)日2012年7月16日
發(fā)明者胡殿明, 楊斐, 魏偉 申請(qǐng)人:北京百度網(wǎng)訊科技有限公司