windows下eclipse调试hadoop详解
1)下載Eclipse
http://www.eclipse.org/downloads/
Eclipse Standard 4.3.2 64位
?
2) 下載Hadoop版本對(duì)應(yīng)的eclipse插件
我的hadoop是1.0.4,因此下載hadoop-eclipse-plugin-1.0.4.jar
下載地址:http://download.csdn.NET/detail/m_star_jy_sy/7376169
?
3)安裝hadoop插件
將hadoop-eclipse-plugin-1.0.4.jar拷貝到eclipse的plugins目錄下即可
?
4)重啟eclipse,檢查hadoop插件是否加載成功
單擊菜單:Window/Open Perspective/Others…彈出Open Perspective對(duì)話框,出現(xiàn)Map/Reduce即表示安裝成功,見下圖:
?
5)設(shè)置hadoop安裝路徑
選擇菜單:Window/Preferences,彈出Preferences對(duì)話框,如下圖所示:
?
選擇Hadoop Map/Reduce ,設(shè)置Hadoop Install directory(Hadoop安裝路徑)。Hadoop的安裝路徑就是hadoop安裝包hadoop-1.0.4.tar.gz解壓縮后的路徑
?
5)配置hadoop
選擇菜單:Window/Show View/Other…,彈出Show View對(duì)話框。
?
在對(duì)話框中選擇MapReduce Tools下的Map/Reduce Locations,打開Map/Reduce Locations視圖。如下圖所示:
?
在Map/Reduce Locations視圖中,右鍵選擇New Hadoop Location…菜單,彈出New Hadoop Location對(duì)話框,如下圖所示:
在彈出的對(duì)話框中你需要配置Location name,如Hadoop,還有Map/Reduce Master和DFS Master。這里面的Host、Port分別為你在mapred-site.xml、core-site.xml中配置的地址及端口。UserName設(shè)置為運(yùn)行hadoop的賬號(hào)名,例如:hadoop。
?
配置完后退出。點(diǎn)擊DFS Locations-->Hadoop如果能顯示文件夾(2)說明配置正確,如果顯示"拒絕連接",請(qǐng)檢查你的配置。
至此,環(huán)境基本搭建好了。下面就通過經(jīng)典的WordCount例子來試驗(yàn)下了。
?
6)準(zhǔn)備測(cè)試數(shù)據(jù)
在本地新建word.txt,內(nèi)容如下:
| Java?c++?Python?c |
通過copyFromLocal命令把本地的word.txt復(fù)制到HDFS上,命令如下:
$:hadoop fs -copyFromLocal /usr/hadoop/word.txt word.txt
本例假設(shè)word.txt存放在/usr/hadoop/目錄下
?
7)新建hadoop項(xiàng)目
File-->New-->Other-->Map/Reduce Project
項(xiàng)目名可以隨便取,如WordCount。 復(fù)制 hadoop安裝目錄src/example/org/apache/hadoop/example/WordCount.java到剛才新建的項(xiàng)目下面。
?
8)運(yùn)行程序
右鍵單擊WordCount項(xiàng)目,選擇Run As-->RunConfigurations…,彈出Run Configurations對(duì)話框。如下圖所示:
右鍵單擊左邊的Java Application,選擇New菜單新建一個(gè)配置項(xiàng),取名為Wordcount。在Arguments選項(xiàng)卡中設(shè)置Program arguments:為:
| hdfs://192.168.0.19:9000/user/hadoop/word.txt hdfs://192.168.0.19:9000/user/hadoop/out |
第一行為輸入文件,第二行為輸出結(jié)果文件。
如果運(yùn)行時(shí)報(bào)java.lang.OutOfMemoryError: Java heap space 配置VM arguments參數(shù):
| -Xms512m -Xmx1024m -XX:MaxPermSize=256m |
設(shè)置完后,單擊Run。
?
9)錯(cuò)誤1
現(xiàn)象:
ERROR security.UserGroupInformation:?PriviledgedActionExceptionas:zhuming?cause:java.io.IOException: Failed to set permissions of path:\tmp\hadoop-zhuming\mapred\staging\zhuming1380233490\.staging to 0700
Exceptionin thread "main"?java.io.IOException: Failed toset permissions of path:\tmp\hadoop-zhuming\mapred\staging\zhuming1380233490\.staging to 0700
?
解決方案:
下載hadoop-core-1.0.4-modified.jar替換到hadoop安裝目錄下的hadoop-core-1.0.4.jar文件
下載地址:http://download.csdn.net/detail/m_star_jy_sy/7376283
?
10)錯(cuò)誤2
現(xiàn)象:
org.apache.hadoop.security.AccessControlException:org.apache.hadoop.security.AccessControlException: Permission denied:user=zhuming, access=WRITE,inode="hadoop":hadoop:supergroup:rwxr-xr-x
atsun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
?
原因:
因?yàn)镋clipse使用hadoop插件提交作業(yè)時(shí),會(huì)默認(rèn)以zhuming身份(windows當(dāng)前用戶)去將作業(yè)寫入hdfs文件系統(tǒng)中,對(duì)應(yīng)的也就是 HDFS上的/user/xxx , 我的為/user/hadoop,由于zhuming用戶對(duì)user/hadoop目錄并沒有寫入權(quán)限,所以導(dǎo)致異常的發(fā)生。
?
解決方法:
放開/user/hadoop目錄的權(quán)限,命令如下:$ hadoop fs -chmod 777 /user/hadoop
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的windows下eclipse调试hadoop详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python调用 matlab库_pyt
- 下一篇: 软考高级-系统架构师-论文