




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
在Windows平臺(tái)下部署Hadoop開發(fā)環(huán)境魏仁言2010.6.8Hadoop簡介Hadoop是一個(gè)開源的可運(yùn)行于大規(guī)模集群上的分布式并行編程框架,由于分布式存儲(chǔ)對(duì)于分布式編程來說是必不可少的,這個(gè)框架中還包含了一個(gè)分布式文件系統(tǒng)HDFS(HadoopDistributedFileSystem)。也許到目前為止,Hadoop還不是那么廣為人知,其最新的版本號(hào)也僅僅是0.20,距離1.0似乎都還有很長的一段距離,但提及Hadoop一脈相承的另外兩個(gè)開源項(xiàng)目Nutch和Lucene(三者的創(chuàng)始人都是DougCutting),那絕對(duì)是大名鼎鼎。Lucene是一個(gè)用Java開發(fā)的開源高性能全文檢索工具包,它不是一個(gè)完整的應(yīng)用程序,而是一套簡單易用的API。在全世界范圍內(nèi),已有無數(shù)的軟件系統(tǒng),Web網(wǎng)站基于Lucene實(shí)現(xiàn)了全文檢索功能,后來DougCutting又開創(chuàng)了第一個(gè)開源的Web搜索引擎()Nutch,它在Lucene的基礎(chǔ)上增加了網(wǎng)絡(luò)爬蟲和一些和Web相關(guān)的功能,一些解析各類文檔格式的插件等,此外,Nutch中還包含了一個(gè)分布式文件系統(tǒng)用于存儲(chǔ)數(shù)據(jù)。從Nutch0.8.0版本之后,DougCutting把Nutch中的分布式文件系統(tǒng)以及實(shí)現(xiàn)MapReduce算法的代碼獨(dú)立出來形成了一個(gè)新的開源項(xiàng)Hadoop。Nutch也演化為基于Lucene全文檢索以及Hadoop分布式計(jì)算平臺(tái)的一個(gè)開源搜索引擎?;贖adoop,你可以輕松地編寫可處理海量數(shù)據(jù)的分布式并行程序,并將其運(yùn)行于由成百上千個(gè)結(jié)點(diǎn)組成的大規(guī)模計(jì)算機(jī)集群上。從目前的情況來看,Hadoop注定會(huì)有一個(gè)輝煌的未來:"云計(jì)算"是目前灸手可熱的技術(shù)名詞,全球各大IT公司都在投資和推廣這種新一代的計(jì)算模式,而Hadoop又被其中幾家主要的公司用作其"云計(jì)算"環(huán)境中的重要基礎(chǔ)軟件,如:雅虎正在借助Hadoop開源平臺(tái)的力量對(duì)抗Google,除了資助Hadoop開發(fā)團(tuán)隊(duì)外,還在開發(fā)基于Hadoop的開源項(xiàng)目Pig,這是一個(gè)專注于海量數(shù)據(jù)集分析的分布式計(jì)算程序。Amazon公司基于Hadoop推出了AmazonS3(AmazonSimpleStorageService),提供可靠,快速,可擴(kuò)展的網(wǎng)絡(luò)存儲(chǔ)服務(wù),以及一個(gè)商用的云計(jì)算平臺(tái)AmazonEC2(AmazonElasticComputeCloud)。在IBM公司的云計(jì)算項(xiàng)目--"藍(lán)云計(jì)劃"中,Hadoop也是其中重要的基礎(chǔ)軟件。Google正在跟IBM合作,共同推廣基于Hadoop的云計(jì)算。
準(zhǔn)備:1.
Java1.6以上2.
EclipseEuropa3.3.23.
Cygwin4.
Hadoop-0.20.2
1.
安裝Cygwin
Hadoop主要是在Linux平臺(tái)下運(yùn)行的,如果想在Windows平臺(tái)下運(yùn)行,你需要安裝Cygwin才能運(yùn)行,Hadoop腳本。a.
下載Cygwin安裝包(here.)b.
運(yùn)行安裝包,你將要看到下圖。
c.
安裝時(shí)一定要確認(rèn)選擇“openssh”安裝包。如下圖:
d.
完成安裝
2.
安裝SSH守護(hù)進(jìn)程Hadoop分布式運(yùn)行需要SSH。所以這一部分介紹在Cygwin下配置SSH守護(hù)進(jìn)程。a.
打開Cygwin命令環(huán)境b.
執(zhí)行以下命令
rywei@RYWEI$chmod+r/etc/group
rywei@RYWEI$chmod+r/etc/passwd
rywei@RYWEI$chmod+rwx/var
rywei@RYWEI$ssh-host-configc.
·
Whenaskedifprivilegeseparationshouldbeused,answerno.記著一定要答no,否則用Hadoop-EcliplePlugin插件進(jìn)行開發(fā)時(shí),會(huì)提示你沒有權(quán)限操作文件,不能寫等錯(cuò)誤。(我因?yàn)檫@個(gè)問題頭痛了好長時(shí)間,最后才找到是這里出現(xiàn)問題的。)·
Whenaskedifsshdshouldbeinstalledasaservice,answeryes.·
WhenaskedaboutthevalueofCYGWINenvironmentvariableenterntsec.d.
配置完后,啟動(dòng)SSHD守護(hù)進(jìn)程運(yùn)行:netstartsshd或者通過Windows服務(wù),啟動(dòng)CYGWINSSHD服務(wù).想要停止服務(wù)運(yùn)行:netstopsshd就可以了e.
生成密鑰
$ssh-keygen-tdsa-P''-f~/.ssh/id_dsa
$cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
f.
測試最后運(yùn)行以下命令測試
sshlocalhost如果沒有問題會(huì)提示以下內(nèi)容:Theauthenticityofhost'localhost()'can'tbeestablished.RSAkeyfingerprintis08:03:20:43:48:39:29:66:6e:c5:61:ba:77:b2:2f:55.Areyousureyouwanttocontinueconnecting(yes/no)?yesWarning:Permanentlyadded'localhost'(RSA)tothelistofknownhosts.rywei@localhost'spassword:會(huì)提示輸入你機(jī)子的登錄密碼,輸入無誤后,會(huì)出現(xiàn)文本圖形,類似于歡迎的提示:TheHipposays:Welcometo如果你不想每次都要輸入密碼,可以執(zhí)行以下命令即可$ssh-keygen-tdsa-P''-f~/.ssh/id_dsa
$cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
3.
Hadoop安裝配置a.從Hadoop網(wǎng)站下載最新的安裝包(當(dāng)前版本:hadoop-0.20.2)(here)
b.解壓hadoop-0.20.2安裝包到你的主目錄(/home/username/)
修改conf/hadoop-env.sh文件,將exportJAVA_HOME的值修改為你機(jī)上的jdk安裝目錄,比如/cygdrive/d/tools/jdk1.6.0_03,/cygdrive是Cygwin安裝成功后系統(tǒng)的根目錄如果你的JDK安裝在“C:/ProgramFiles/Java/jdk1.6.0_20”,請用引號(hào)括住。如:exportJAVA_HOME='C:/ProgramFiles/Java/jdk1.6.0_20'c.在Hadoop主目錄內(nèi)創(chuàng)建logs目錄,用以存放Hadoop日志信息d.配置HadoopHadoop可以用以下三種支持的模式中的一種啟動(dòng)Hadoop集群:單機(jī)模式偽分布式模式完全分布式模式單機(jī)模式的操作方法默認(rèn)情況下,Hadoop被配置成以非分布式模式運(yùn)行的一個(gè)獨(dú)立Java進(jìn)程。這對(duì)調(diào)試非常有幫助。下面的實(shí)例將已解壓的conf目錄拷貝作為輸入,查找并顯示匹配給定正則表達(dá)式的條目。輸出寫入到指定的output目錄。
$mkdirinput
$cpconf/*.xmlinput
$bin/hadoopjarhadoop-*-examples.jargrepinputoutput'dfs[a-z.]+'
$catoutput/*偽分布式模式的操作方法Hadoop可以在單節(jié)點(diǎn)上以所謂的偽分布式模式運(yùn)行,此時(shí)每一個(gè)Hadoop守護(hù)進(jìn)程都作為一個(gè)獨(dú)立的Java進(jìn)程運(yùn)行。使用如下配置:
conf/core-site.xml:<configuration>
<property>
<name></name>
<value>hdfs://localhost:9000</value>
</property></configuration>
conf/hdfs-site.xml:<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property></configuration>
conf/mapred-site.xml:<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property></configuration>在Cygwin下必須設(shè)置中間的暫存目錄,否則會(huì)出錯(cuò)的在mapred-site.xml中:添加:<property>
<name>mapred.child.tmp</name>
<value>/home/hadoop-0.20.1/temp</value></property>注:我就是忘記設(shè)置這個(gè)參數(shù),代碼總是不能成功運(yùn)行,產(chǎn)生如下錯(cuò)誤:10/05/0409:15:50WARNmapred.JobClient:UseGenericOptionsParserforparsingthearguments.ApplicationsshouldimplementToolforthesame.10/05/0409:15:50INFOmapred.FileInputFormat:Totalinputpathstoprocess:410/05/0409:15:51INFOmapred.JobClient:Runningjob:job_201005040912_000210/05/0409:15:52INFOmapred.JobClient:
map0%reduce0%10/05/0409:15:58INFOmapred.JobClient:TaskId:attempt_201005040912_0002_m_000006_0,Status:FAILEDjava.io.FileNotFoundException:FileC:/tmp/hadoop-SYSTEM/mapred/local/taskTracker/jobcache/job_201005040912_0002/attempt_201005040912_0002_m_000006_0/work/tmpdoesnotexist.
atorg.apache.hadoop.fs.RawLocalFileSystem.getFileStatus(RawLocalFileSystem.java:420)
atorg.apache.hadoop.fs.FilterFileSystem.getFileStatus(FilterFileSystem.java:244)
atorg.apache.hadoop.mapred.TaskRunner.setupWorkDir(TaskRunner.java:520)
atorg.apache.hadoop.mapred.Child.main(Child.java:143)
10/05/0409:16:03INFOmapred.JobClient:TaskId:attempt_201005040912_0002_m_000006_1,Status:FAILEDjava.io.FileNotFoundException:FileC:/tmp/hadoop-SYSTEM/mapred/local/taskTracker/jobcache/job_201005040912_0002/attempt_201005040912_0002_m_000006_1/work/tmpdoesnotexist.
atorg.apache.hadoop.fs.RawLocalFileSystem.getFileStatus(RawLocalFileSystem.java:420)
atorg.apache.hadoop.fs.FilterFileSystem.getFileStatus(FilterFileSystem.java:244)
atorg.apache.hadoop.mapred.TaskRunner.setupWorkDir(TaskRunner.java:520)
atorg.apache.hadoop.mapred.Child.main(Child.java:143)4.執(zhí)行格式化一個(gè)新的分布式文件系統(tǒng):
$bin/hadoopnamenode-format啟動(dòng)Hadoop守護(hù)進(jìn)程:
$bin/start-all.shHadoop守護(hù)進(jìn)程的日志寫入到${HADOOP_LOG_DIR}目錄(默認(rèn)是${HADOOP_HOME}/logs).瀏覽NameNode和JobTracker的網(wǎng)絡(luò)接口,它們的地址默認(rèn)為:NameNode-http://localhost:50070/JobTracker-http://localhost:50030/將輸入文件拷貝到分布式文件系統(tǒng):
$bin/hadoopfs-putconfinput運(yùn)行發(fā)行版提供的示例程序:
$bin/hadoopjarhadoop-*-examples.jargrepinputoutput'dfs[a-z.]+'查看輸出文件:將輸出文件從分布式文件系統(tǒng)拷貝到本地文件系統(tǒng)查看:
$bin/hadoopfs-getoutputoutput
$catoutput/*或者在分布式文件系統(tǒng)上查看輸出文件:
$bin/hadoopfs-catoutput/*完成全部操作后,停止守護(hù)進(jìn)程:
$bin/stop-all.sh5.安裝Hadoopplugin在Hadoop根目錄里,contrib/eclipse-plugin文件夾下有,Hadoop在Eclipse的插件hadoop-0.20.2-eclipse-plugin.jar。將其拷貝到Eclipse的plugins目錄下。啟動(dòng)Eclipse后,你將看到如下界面:
設(shè)置Hadoop主目錄點(diǎn)擊Eclipse主菜單上Windows->Preferences,然后在左側(cè)選擇HadoopHomeDirectory,設(shè)定你的Hadoop主目錄,如圖一所示:
創(chuàng)立一個(gè)MapReduceProject點(diǎn)擊Eclipse主菜單上File->New->Project,在彈出的對(duì)話框中選擇MapReduceProject,輸入projectname如wordcount,然后點(diǎn)擊Finish即可。,如圖所示:
此后,你就可以象一個(gè)普通的Ecl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工程安全生產(chǎn)責(zé)任追究合同
- 2025年度外貿(mào)合同書樣本:國際貨物運(yùn)輸保險(xiǎn)合同
- 2025年度商業(yè)地產(chǎn)產(chǎn)權(quán)轉(zhuǎn)讓與物業(yè)管理合同
- 2025年度園林綠化養(yǎng)護(hù)臨時(shí)用工合作協(xié)議
- 二零二五年度移動(dòng)寬帶網(wǎng)絡(luò)用戶滿意度提升合同
- 工業(yè)園區(qū)升級(jí)補(bǔ)貼合同
- 2025年度建筑工程合同監(jiān)理實(shí)施辦法
- 2025年度商場顧客滿意度調(diào)查與提升合同
- 2025年度房屋租賃安全免責(zé)合同(帶寵物)
- 2025年導(dǎo)電銀漿行業(yè)現(xiàn)狀分析:導(dǎo)電銀漿市場復(fù)合年增長率為20.12%
- 降水預(yù)報(bào)思路和方法
- PCB制程漲縮系數(shù)操作指引
- 標(biāo)準(zhǔn) DB37T 3690.1-2019 液體菌種制備技術(shù)規(guī)程 第1部分:香菇規(guī)范
- 2021五年級(jí)道德與法治培優(yōu)輔差計(jì)劃3篇
- 靜脈藥物配置中心課件
- DB11T 852-2019 有限空間作業(yè)安全技術(shù)規(guī)范
- 最新2022年減肥食品市場現(xiàn)狀與發(fā)展趨勢預(yù)測
- 材料化學(xué)合成與制備技術(shù)
- 發(fā)展?jié)h語初級(jí)綜合1:第30課PPT課件[通用]
- 馬工程西方經(jīng)濟(jì)學(xué)(第二版)教學(xué)課件-(4)
- 醫(yī)療廢物管理組織機(jī)構(gòu)架構(gòu)圖
評(píng)論
0/150
提交評(píng)論