下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java一直都是主流的語(yǔ)言之一,因?yàn)榇髷?shù)據(jù)的人才急需導(dǎo)致Java相關(guān)的工作崗位再次火爆起來(lái)。而在大數(shù)據(jù)中優(yōu)化是一個(gè)非常關(guān)鍵的課題。今天和大家一起討論一下關(guān)于大數(shù)據(jù)優(yōu)化的相關(guān)問(wèn)題。 隨著企業(yè)要處理的數(shù)據(jù)量越來(lái)越大,MapReduce思想越來(lái)越受到重視。Hadoop是MapReduce的一個(gè)開(kāi)源實(shí)現(xiàn),由于其良好的擴(kuò)展性和容錯(cuò)性,已得到越來(lái)越廣泛的應(yīng)用。Hadoop作為一個(gè)基礎(chǔ)數(shù)據(jù)處理平臺(tái),雖然其應(yīng)用價(jià)值已得到大家認(rèn)可,但仍存在很多問(wèn)題,以下是主要幾個(gè): (1)Namenode/jobtracker單點(diǎn)故障。
2、 Hadoop采用的是master/slaves架構(gòu),該架構(gòu)管理起來(lái)比較簡(jiǎn)單,但存在致命的單點(diǎn)故障和空間容量不足等缺點(diǎn),這已經(jīng)嚴(yán)重影響了Hadoop的可擴(kuò)展性。 (2)HDFS小文件問(wèn)題。在HDFS中,任何block,文件或者目錄在內(nèi)存中均以對(duì)象的形式存儲(chǔ),每個(gè)對(duì)象約占150byte,如果有1000 0000個(gè)小文件,每個(gè)文件占用一個(gè)block,則namenode需要2G空間。如果存儲(chǔ)1億個(gè)文件,則namenode需要20G空間。這樣namenode內(nèi)存容量嚴(yán)重制約了集群的擴(kuò)展。 (3)job
3、tracker同時(shí)進(jìn)行監(jiān)控和調(diào)度,負(fù)載過(guò)大。為了解決該問(wèn)題,yahoo已經(jīng)開(kāi)始著手設(shè)計(jì)下一代Hadoop MapReduce(見(jiàn)參考資料1)。他們的主要思路是將監(jiān)控和調(diào)度分離,獨(dú)立出一個(gè)專門的組件進(jìn)行監(jiān)控,而jobtracker只負(fù)責(zé)總體調(diào)度,至于局部調(diào)度,交給作業(yè)所在的client。 (4)數(shù)據(jù)處理性能。 很多實(shí)驗(yàn)表明,其處理性能有很大的提升空間。Hadoop類似于數(shù)據(jù)庫(kù),可能需要專門的優(yōu)化工程師根據(jù)實(shí)際的應(yīng)用需要對(duì)Hadoop進(jìn)行調(diào)優(yōu),有人稱之為“Hadoop Performance Optimization” (HPO)。
4、; 為了提高其數(shù)據(jù)性能,很多人開(kāi)始優(yōu)化Hadoop。總結(jié)看來(lái),對(duì)于Hadoop,當(dāng)前主要有幾個(gè)優(yōu)化思路: (1) 從應(yīng)用程序角度進(jìn)行優(yōu)化。由于mapreduce是迭代逐行解析數(shù)據(jù)文件的,怎樣在迭代的情況下,編寫高效率的應(yīng)用程序,是一種優(yōu)化思路。 (2) 對(duì)Hadoop參數(shù)進(jìn)行調(diào)優(yōu)。當(dāng)前hadoop系統(tǒng)有190多個(gè)配置參數(shù),怎樣調(diào)整這些參數(shù),使hadoop作業(yè)運(yùn)行盡可能的快,也是一種優(yōu)化思路。 (3)
5、從系統(tǒng)實(shí)現(xiàn)角度進(jìn)行優(yōu)化。這種優(yōu)化難度是最大的,它是從hadoop實(shí)現(xiàn)機(jī)制角度,發(fā)現(xiàn)當(dāng)前Hadoop設(shè)計(jì)和實(shí)現(xiàn)上的缺點(diǎn),然后進(jìn)行源碼級(jí)地修改。該方法雖難度大,但往往效果明顯。 以上三種思路出發(fā)點(diǎn)均是提高h(yuǎn)adoop應(yīng)用程序的效率。實(shí)際上,隨著社會(huì)的發(fā)展,綠色環(huán)保觀念也越來(lái)越多地融入了企業(yè),因而很多人開(kāi)始研究Green Hadoop,即怎樣讓Hadoop完成相應(yīng)數(shù)據(jù)處理任務(wù)的同時(shí),使用最少的能源. 當(dāng)前學(xué)術(shù)界的一些優(yōu)化思路,有人試圖從Hadoop自動(dòng)配置角度對(duì)Hadoop進(jìn)行優(yōu)化,但更多的是從系統(tǒng)實(shí)現(xiàn)角度進(jìn)
6、行優(yōu)化,概括其優(yōu)化點(diǎn)和實(shí)驗(yàn)效果如下: (1)從參數(shù)自動(dòng)調(diào)優(yōu)角度對(duì)Hadoop進(jìn)行優(yōu)化,給出了一種Hadoop優(yōu)化的新思路,即怎樣對(duì)其190多個(gè)配置參數(shù)進(jìn)行自動(dòng)調(diào)整,使應(yīng)用程序執(zhí)行效率最高。 (2) 提出prefetching和preshuffling機(jī)制,在不同負(fù)載不同規(guī)模集群下測(cè)試,效率提升了約73%。 (3) 影響Hadoop效率的五個(gè)因素,并通過(guò)提出相應(yīng)的解決方案,使Hadoop效率提高了2.53.5倍。
7、 (4) 為Hadoop提供了一種索引機(jī)制 Trojan Index,同時(shí)提出了一種高效的join算法 Trojan Join,實(shí)驗(yàn)表明,效率比Hadoop和HadoopDB高很多。 除了學(xué)術(shù)界的優(yōu)化,工業(yè)界也在不斷進(jìn)行優(yōu)化以適應(yīng)自己公司的產(chǎn)品需要,主要有: (1)Baidu公司。baidu對(duì)Hadoop中關(guān)鍵組件使用C+進(jìn)行了重寫(包括map, shuffler和reducer等),經(jīng)他們內(nèi)部測(cè)試(5 nodes,40GB data),效率提升了約20%.
8、 (2)淘寶。淘寶針對(duì)自己集群特點(diǎn)(作業(yè)小,slot多,作業(yè)之間有依賴,集群共享,有些作業(yè)有時(shí)效性),對(duì)jobtracker和namenode進(jìn)行了優(yōu)化,據(jù)其官方博客稱,其jobtracker有較大性能提升,且namenode吞吐量提升了8+倍。但其具體優(yōu)化方法,未公開(kāi)。從應(yīng)用程序角度進(jìn)行優(yōu)化 (1) 避免不必要的reduce任務(wù)如果要處理的數(shù)據(jù)是排序且已經(jīng)分區(qū)的,或者對(duì)于一份數(shù)據(jù), 需要多次處理, 可以先排序分區(qū);然后自定義InputSplit, 將單個(gè)分區(qū)作為單個(gè)mapred的輸入;在map中處理數(shù)據(jù), Red
9、ucer設(shè)置為空。 這樣, 既重用了已有的 “排序”, 也避免了多余的reduce任務(wù)。 (2)外部文件引入有些應(yīng)用程序要使用外部文件,如字典,配置文件等,這些文件需要在所有task之間共享,可以放到分布式緩存DistributedCache中(或直接采用-files選項(xiàng),機(jī)制相同)。更多的這方面的優(yōu)化方法,還需要在實(shí)踐中不斷積累。 (3) 為job添加一個(gè)Combiner為job添加一個(gè)combiner可以大大減少shuffle階段從map task拷貝給
10、遠(yuǎn)程reduce task的數(shù)據(jù)量。一般而言,combiner與reducer相同。 (4) 根據(jù)處理數(shù)據(jù)特征使用最適合和簡(jiǎn)潔的Writable類型Text對(duì)象使用起來(lái)很方便,但它在由數(shù)值轉(zhuǎn)換到文本或是由UTF8字符串轉(zhuǎn)換到文本時(shí)都是低效的,且會(huì)消耗大量的CPU時(shí)間。當(dāng)處理那些非文本的數(shù)據(jù)時(shí),可以使用二進(jìn)制的Writable類型,如IntWritable, FloatWritable等。二進(jìn)制writable好處:避免文件轉(zhuǎn)換的消耗;使map task中間結(jié)果占用更少的空間。 (5) 重用Writabl
11、e類型很多MapReduce用戶常犯的一個(gè)錯(cuò)誤是,在一個(gè)map/reduce方法中為每個(gè)輸出都創(chuàng)建Writable對(duì)象。例如,你的Wordcout mapper方法可能這樣寫:public void map(.) for (String word : words) output.collect(new Text(word), new IntWritable(1); 這樣會(huì)導(dǎo)致程序分配出成千上萬(wàn)個(gè)短周期的對(duì)象。Java垃圾收集器就要為此做很多的工作。更有效的寫法是:class My
12、Mapper Text wordText = new Text(); IntWritable one = new IntWritable(1); public void map(.) for (String word: words) wordText.set(word); output.collect(wordText, one); (6) 使用StringBuffer而不
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省閩侯第四中學(xué)2023-2024學(xué)年高三第七次模擬數(shù)學(xué)試題試卷
- 2025年度高鐵站通風(fēng)空調(diào)系統(tǒng)工程分包合同3篇
- 2025年度金融科技產(chǎn)品開(kāi)發(fā)與保密協(xié)議3篇
- 2025年全球及中國(guó)互聯(lián)鐵路系統(tǒng)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年度餐飲行業(yè)食品安全管理與售后保障協(xié)議范本3篇
- 2025年全球及中國(guó)電動(dòng)個(gè)人助行產(chǎn)品行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球工業(yè)擦拭產(chǎn)品行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球螺紋連接隔膜密封件行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)高集成低功耗藍(lán)牙芯片行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 二零二五年度科技企業(yè)獨(dú)立董事聘任與高新技術(shù)轉(zhuǎn)化協(xié)議3篇
- 五年級(jí)數(shù)學(xué)應(yīng)用題100道
- 政治表現(xiàn)及具體事例三條經(jīng)典優(yōu)秀范文三篇
- 高考詩(shī)歌鑒賞專題復(fù)習(xí):題畫抒懷詩(shī)、干謁言志詩(shī)
- 2023年遼寧省交通高等專科學(xué)校高職單招(英語(yǔ))試題庫(kù)含答案解析
- GB/T 304.3-2002關(guān)節(jié)軸承配合
- 漆畫漆藝 第三章
- CB/T 615-1995船底吸入格柵
- 光伏逆變器一課件
- 貨物供應(yīng)、運(yùn)輸、包裝說(shuō)明方案
- (完整版)英語(yǔ)高頻詞匯800詞
- 《基礎(chǔ)馬來(lái)語(yǔ)》課程標(biāo)準(zhǔn)(高職)
評(píng)論
0/150
提交評(píng)論