av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

技術分享:使用Hadoop進行分布式并行編程

技術分享:使用hadoop進行分布式并行編程

作者:彰化 2010-06-03 18:54:57

架構
分布式
Hadoop Hadoop相信大家應該有所了解,那么用Hadoop編程呢,本節(jié)就向大家介紹一下如何使用Hadoop進行分布式并行編程,歡迎大家一起來學習。

成都創(chuàng)新互聯(lián)公司專注于寧德網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供寧德營銷型網(wǎng)站建設,寧德網(wǎng)站制作、寧德網(wǎng)頁設計、寧德網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務,打造寧德網(wǎng)絡公司原創(chuàng)品牌,更為您提供寧德網(wǎng)站排名全網(wǎng)營銷落地服務。

在學習Hadoop的過程中,你可能會遇到用Hadoop進行分布式并行編程的問題,本節(jié)就向大家介紹一下用Hadoop進行分布式并行編程的方法,希望通過本節(jié)的介紹大家能夠對Hadoop有新的認識。

用Hadoop進行分布式并行編程

Hadoop簡介

Hadoop是一個開源的可運行于大規(guī)模集群上的分布式并行編程框架,由于分布式存儲對于分布式編程來說是必不可少的,這個框架中還包含了一個分布式文件系統(tǒng)HDFS(HadoopDistributedFileSystem)。

也許到目前為止,Hadoop還不是那么廣為人知,其***的版本號也僅僅是0.16,距離1.0似乎都還有很長的一段距離,但提及Hadoop一脈相承的另外兩個開源項目Nutch和Lucene(三者的創(chuàng)始人都是DougCutting),那絕對是大名鼎鼎。Lucene是一個用Java開發(fā)的開源高性能全文檢索工具包,它不是一個完整的應用程序,而是一套簡單易用的API。在全世界范圍內(nèi),已有無數(shù)的軟件系統(tǒng),web網(wǎng)站基于Lucene實現(xiàn)了全文檢索功能,后來DougCutting又開創(chuàng)了***個開源的Web搜索引擎(http://www.nutch.org)Nutch,它在Lucene的基礎上增加了網(wǎng)絡爬蟲和一些和Web相關的功能,一些解析各類文檔格式的插件等,此外,Nutch中還包含了一個分布式文件系統(tǒng)用于存儲數(shù)據(jù)。從Nutch0.8.0版本之后,DougCutting把Nutch中的分布式文件系統(tǒng)以及實現(xiàn)MapReduce算法的代碼獨立出來形成了一個新的開源項Hadoop。Nutch也演化為基于Lucene全文檢索以及Hadoop分布式計算平臺的一個開源搜索引擎。

基于Hadoop,你可以輕松地編寫可處理海量數(shù)據(jù)的分布式并行程序,并將其運行于由成百上千個結點組成的大規(guī)模計算機集群上。從目前的情況來看,Hadoop注定會有一個輝煌的未來:"云計算"是目前灸手可熱的技術名詞,全球各大IT公司都在投資和推廣這種新一代的計算模式,而Hadoop又被其中幾家主要的公司用作其"云計算"環(huán)境中的重要基礎軟件,如:雅虎正在借助Hadoop開源平臺的力量對抗Google,除了資助Hadoop開發(fā)團隊外,還在開發(fā)基于Hadoop的開源項目Pig,這是一個專注于海量數(shù)據(jù)集分析的分布式計算程序。Amazon公司基于Hadoop推出了AmazonS3(AmazonSimpleStorageService),提供可靠,快速,可擴展的網(wǎng)絡存儲服務,以及一個商用的云計算平臺AmazonEC2(AmazonElasticComputeCloud)。在IBM公司的云計算項目--"藍云計劃"中,Hadoop也是其中重要的基礎軟件。Google正在跟IBM合作,共同推廣基于Hadoop的云計算。

迎接編程方式的變革

在摩爾定律的作用下,以前程序員根本不用考慮計算機的性能會跟不上軟件的發(fā)展,因為約每隔18個月,CPU的主頻就會增加一倍,性能也將提升一倍,軟件根本不用做任何改變,就可以享受免費的性能提升。然而,由于晶體管電路已經(jīng)逐漸接近其物理上的性能極限,摩爾定律在2005年左右開始失效了,人類再也不能期待單個CPU的速度每隔18個月就翻一倍,為我們提供越來越快的計算性能。Intel,AMD,IBM等芯片廠商開始從多核這個角度來挖掘CPU的性能潛力,多核時代以及互聯(lián)網(wǎng)時代的到來,將使軟件編程方式發(fā)生重大變革,基于多核的多線程并發(fā)編程以及基于大規(guī)模計算機集群的分布式并行編程是將來軟件性能提升的主要途徑。

許多人認為這種編程方式的重大變化將帶來一次軟件的并發(fā)危機,因為我們傳統(tǒng)的軟件方式基本上是單指令單數(shù)據(jù)流的順序執(zhí)行,這種順序執(zhí)行十分符合人類的思考習慣,卻與并發(fā)并行編程格格不入。基于集群的分布式并行編程能夠讓軟件與數(shù)據(jù)同時運行在連成一個網(wǎng)絡的許多臺計算機上,這里的每一臺計算機均可以是一臺普通的PC機。這樣的分布式并行環(huán)境的***優(yōu)點是可以很容易的通過增加計算機來擴充新的計算結點,并由此獲得不可思議的海量計算能力,同時又具有相當強的容錯能力,一批計算結點失效也不會影響計算的正常進行以及結果的正確性。Google就是這么做的,他們使用了叫做MapReduce的并行編程模型進行分布式并行編程,運行在叫做GFS(GoogleFileSystem)的分布式文件系統(tǒng)上,為全球億萬用戶提供搜索服務。

Hadoop實現(xiàn)了Google的MapReduce編程模型,提供了簡單易用的編程接口,也提供了它自己的分布式文件系統(tǒng)HDFS,與Google不同的是,Hadoop是開源的,任何人都可以使用這個框架來進行并行編程。如果說分布式并行編程的難度足以讓普通程序員望而生畏的話,開源的Hadoop的出現(xiàn)極大的降低了它的門檻,讀完本文,你會發(fā)現(xiàn)基于Hadoop編程非常簡單,無須任何并行開發(fā)經(jīng)驗,你也可以輕松的開發(fā)出分布式的并行程序,并讓其令人難以置信地同時運行在數(shù)百臺機器上,然后在短時間內(nèi)完成海量數(shù)據(jù)的計算。你可能會覺得你不可能會擁有數(shù)百臺機器來運行你的并行程序,而事實上,隨著"云計算"的普及,任何人都可以輕松獲得這樣的海量計算能力。例如現(xiàn)在Amazon公司的云計算平臺AmazonEC2已經(jīng)提供了這種按需計算的租用服務,有興趣的讀者可以去了解一下,這篇系列文章的第三部分將有所介紹。

掌握一點分布式并行編程的知識對將來的程序員是必不可少的,Hadoop是如此的簡便好用,何不嘗試一下呢?也許你已經(jīng)急不可耐的想試一下基于Hadoop的編程是怎么回事了,但畢竟這種編程模型與傳統(tǒng)的順序程序大不相同,掌握一點基礎知識才能更好地理解基于Hadoop的分布式并行程序是如何編寫和運行的。因此本文會先介紹一下MapReduce的計算模型,Hadoop中的分布式文件系統(tǒng)HDFS,Hadoop是如何實現(xiàn)并行計算的,然后才介紹如何安裝和部署Hadoop框架,以及如何運行Hadoop程序。


分享文章:技術分享:使用Hadoop進行分布式并行編程
文章轉載:http://uogjgqi.cn/article/dpgoecd.html
掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流