普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法

普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法

ID:32886516

大小:3.86 MB

頁數(shù):21頁

時(shí)間:2019-02-17

普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法_第1頁
普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法_第2頁
普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法_第3頁
普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法_第4頁
普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法_第5頁
資源描述:

《普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于hadoop的大規(guī)模數(shù)據(jù)排序算法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、普開數(shù)據(jù)大數(shù)據(jù)應(yīng)用實(shí)例:基于Hadoop的大規(guī)模數(shù)據(jù)排序算法  基于Hadoop的大規(guī)模數(shù)據(jù)排序  目錄  一、前言4  二、Hadoop及Mapreduce的相關(guān)介紹4  1.Hadoop4  (1)Hadoop簡(jiǎn)介4  (2)Hadoop架構(gòu)5  (3)分布式計(jì)算模型5  2.Mapreduce5  (1)mapreduce和hadoop起源5  (2)mapreduce工作流程6  (3)運(yùn)行環(huán)境7  (4)輸入與輸出7  (5)Map/Reduce-用戶界面7  三、大規(guī)模數(shù)據(jù)排序8  1.簡(jiǎn)介8  

2、2.Nutch9  四、算法分析10  1.Sort算法分析10  (1)排序?qū)嵗?0  (2)運(yùn)行排序基準(zhǔn)測(cè)試1021/21  (3)代碼分析10  2.Secondsort算法分析12  (1)工作原理12  (2)具體步驟12  (3)SecondarySort.java的部分代碼13  3.Terasort算法分析15  (1)概述15  (2)算法思想15  (3)Terasort算法17  五、參考資料19  一、前言  我們小組主要對(duì)基于[hadoop的大規(guī)模數(shù)據(jù)排序算法、海量數(shù)據(jù)的生成做了一定

3、的研究。我們首先對(duì)于hadoop做了初步了解,其次,mapreduce是hadoop的很重要的算法,我們?cè)诘诙A段對(duì)mapreduce以及一些代碼做了分析。第三階段,我們安裝虛擬機(jī)和Linux以及hadoop的軟件,配置運(yùn)行環(huán)境。第四階段,我們對(duì)大規(guī)模數(shù)據(jù)排序進(jìn)行深入的研究,對(duì)nutch進(jìn)行了簡(jiǎn)單的了解。第五階段,對(duì)一些源代碼進(jìn)行分析,主要是排序算法中的sort.java,secondsort.java,terasort。下面的正文中將作出具體的介紹?! 《adoop及Mapreduce的相關(guān)介紹  1.

4、Hadoop  (1)Hadoop簡(jiǎn)介  Hadoop是一個(gè)分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會(huì)開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運(yùn)算和存儲(chǔ)。Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng),簡(jiǎn)稱HDFS。HDFS有著高容錯(cuò)性的特點(diǎn),并且設(shè)計(jì)用來部署在低廉的硬件上。而且它提供高傳輸率來訪問應(yīng)用程序的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集的應(yīng)用程序?! ?2)Hadoop架構(gòu)21/21  圖表1hadoop架構(gòu)  Hadoop有許多元素構(gòu)成。其最底部是HDFS,它存儲(chǔ)Hadoop

5、集群中所有存儲(chǔ)節(jié)點(diǎn)上的文件。HDFS的上一層是MapReduce引擎,該引擎由JobTrackers和TaskTrackers組成?! ?3)分布式計(jì)算模型  一個(gè)hadoop集群往往有幾十臺(tái)甚至成百上千臺(tái)lowcost的計(jì)算機(jī)組成,我們運(yùn)行的每一個(gè)任務(wù)都要在這些計(jì)算機(jī)上做任務(wù)的分發(fā),執(zhí)行中間數(shù)據(jù)排序以及最后的匯總,期間還包含節(jié)點(diǎn)發(fā)現(xiàn),任務(wù)的重試,故障節(jié)點(diǎn)替換等等等等的維護(hù)以及異常情況處理?! ∷哉fhadoop就是一個(gè)計(jì)算模型。一個(gè)分布式的計(jì)算模型?! ?.Mapreduce  (1)mapreduce和h

6、adoop起源  MapReduce借用了函數(shù)式編程的概念,是Google發(fā)明的一種數(shù)據(jù)處理模型。因?yàn)镚oogle幾乎爬了互聯(lián)網(wǎng)上的所有網(wǎng)頁,要為處理這些網(wǎng)頁并為搜索引擎建立索引是一項(xiàng)非常艱巨的任務(wù),必須借助成千上萬臺(tái)機(jī)器同時(shí)工作(也就是分布式并行處理),才有可能完成建立索引的任務(wù)?! ∷?,Google發(fā)明了MapReduce數(shù)據(jù)處理模型,而且他們還就此發(fā)表了相關(guān)論文?! 『髞?,DougCutting老大就根據(jù)這篇論文硬生生的復(fù)制了一個(gè)MapReduce出來,也就是今天的Hadoop?! ?2)mapred

7、uce工作流程21/21  MapReduce處理數(shù)據(jù)過程主要分成2個(gè)階段:map階段和reduce階段。先執(zhí)行map階段,再執(zhí)行reduce階段?! 、僭谡綀?zhí)行map函數(shù)前,需要對(duì)輸入進(jìn)行“分片”(就是將海量數(shù)據(jù)分成大概相等的“塊”,hadoop的一個(gè)分片默認(rèn)是64M),以便于多個(gè)map同時(shí)工作,每一個(gè)map任務(wù)處理一個(gè)“分片”。 ?、诜制戤吅螅嗯_(tái)機(jī)器就可以同時(shí)進(jìn)行map工作了?! ap函數(shù)要做的事情,相當(dāng)于對(duì)數(shù)據(jù)進(jìn)行“預(yù)處理”,輸出所要的“關(guān)切”。  map對(duì)每條記錄的輸出以

8、pair的形式輸出?! 、墼谶M(jìn)入reduce階段之前,要將各個(gè)map中相關(guān)的數(shù)據(jù)(key相同的數(shù)據(jù))歸結(jié)到一起,發(fā)往一個(gè)reducer。這里面就涉及到多個(gè)map的輸出“混合地”對(duì)應(yīng)多個(gè)reducer的情況,這個(gè)過程叫做“洗牌”?! 、芙酉聛磉M(jìn)入reduce階段。相同的key的map輸出會(huì)到達(dá)同一個(gè)reducer。reducer對(duì)key相同的多個(gè)value進(jìn)行“reduce操作”,最后一個(gè)key的一串

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。