Hadoop使用時的常見問題以及解決方法

本篇內(nèi)容主要講解“Hadoop使用時的常見問題以及解決方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Hadoop使用時的常見問題以及解決方法”吧!

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比德清網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式德清網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋德清地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。

1:Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out Answer: 
程序里面需要打開多個文件,進行分析,系統(tǒng)一般默認數(shù)量是1024,(用ulimit -a可以看到)對于正常使用是夠了,但是對于程序來講,就太少了。 修改辦法: 修改2個文件。 
        /etc/security/limits.conf vi /etc/security/limits.conf 加上: 
* soft nofile 102400 * hard nofile 409600  
        $cd /etc/pam.d/     $sudo vi login 
        添加        session    required     /lib/security/pam_limits.so  

2:Too many fetch-failures Answer: 

出現(xiàn)這個問題主要是結點間的連通不夠全面。 1) 檢查 、/etc/hosts    要求本機ip 對應 服務器名 
   要求要包含所有的服務器ip + 服務器名 2) 檢查 .ssh/authorized_keys 
   要求包含所有服務器(包括其自身)的public key  

3:處理速度特別的慢 出現(xiàn)map很快 但是reduce很慢 而且反復出現(xiàn) reduce=0%  Answer: 結合第二點,然后 

修改 conf/hadoop-env.sh 中的export HADOOP_HEAPSIZE=4000   

4:能夠啟動datanode,但無法訪問,也無法結束的錯誤 

在重新格式化一個新的分布式文件時,需要將你NameNode上所配置的dfs.name.dir這一namenode用來存放NameNode 持久存儲名字空間及事務日志的本地文件系統(tǒng)路徑刪除,同時將各DataNode上的dfs.data.dir的路徑 DataNode 存放塊數(shù)據(jù)的本地文件系統(tǒng)路徑的目錄也刪除。如本此配置就是在
NameNode上刪除
/home/hadoop/NameData,在DataNode上刪除/home/hadoop/DataNode1和/home/hadoop/DataNode2。這是因為Hadoop在格式化一個新的分布式文件系統(tǒng)時,每個存儲的名字空間都對應了建立時間的那個版本(可以查看/home/hadoop /NameData/current目錄下的VERSION文件,上面記錄了版本信息),在重新格式化新的分布式系統(tǒng)文件時,最好先刪除NameData 目錄。必須刪除各DataNode的dfs.data.dir。這樣才可以使namedode和datanode記錄的信息版本對應。 

注意:刪除是個很危險的動作,不能確認的情況下不能刪除?。∽龊脛h除的文件等通通備份??!  

5:java.io.IOException: 

Could not obtain block: blk_194219614024901469_1100 file=/user/hive/warehouse/src_20090724_log/src_20090724_log 出現(xiàn)這種情況大多是結點斷了,沒有連接上。  

6:java.lang.OutOfMemoryError: Java heap space 
出現(xiàn)這種異常,明顯是jvm內(nèi)存不夠得原因,要修改所有的datanode的jvm內(nèi)存大小。 Java -Xms1024m -Xmx4096m 

一般jvm的最大內(nèi)存使用應該為總內(nèi)存大小的一半,我們使用的8G內(nèi)存,所以設置為4096m,這一值可能依舊不是最優(yōu)的值。 

7: Namenode in safe mode  解決方法 

bin/hadoop dfsadmin -safemode leave  

8:java.net.NoRouteToHostException: No route to host j解決方法: 

sudo /etc/init.d/iptables stop  

9:更改namenode后,在hive中運行select 依舊指向之前的namenode地址 這是因為:When youcreate a table, hive actually stores the location of the table (e.g. 

hdfs://ip:port/user/root/...) in the SDS and DBS tables in the metastore . So when I bring up a new cluster the master has a new IP, but hive's metastore is still pointing to the locations within the old 
cluster. I could modify the metastore to update with the new IP everytime I bring up a cluster. But the easier and simpler solution was to just use an elastic IP for the master 
所以要將metastore中的之前出現(xiàn)的namenode地址全部更換為現(xiàn)有的namenode地址

到此,相信大家對“Hadoop使用時的常見問題以及解決方法”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

當前文章:Hadoop使用時的常見問題以及解決方法
本文地址:http://muchs.cn/article24/jsoice.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、虛擬主機、微信公眾號、響應式網(wǎng)站、小程序開發(fā)網(wǎng)站設計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)