完美解決python針對(duì)hdfs上傳和下載的問題
當(dāng)我們使用python的hdfs包進(jìn)行上傳和下載文件的時(shí)候,總會(huì)出現(xiàn)如下問題
requests.packages.urllib3.exceptions.NewConnectionError:<requests.packages.urllib3.connection.HTTPConnection object at 0x7fe87cc37c50>: Failed to establish a new connection: [Errno -2] Name or service not known
其實(shí)這主要是由于沒有將各個(gè)集群節(jié)點(diǎn)的ip映射到/etc/hosts文件中
修改/etc/hosts文件,將各個(gè)集群節(jié)點(diǎn)ip映射加上即可,如博主所示
vim /etc/hosts192.168.20.174 hadoop04192.168.20.173 hadoop03192.168.20.172 hadoop02192.168.20.171 hadoop01
補(bǔ)充知識(shí):python上傳文件到hadoop異常問題
使用庫(kù):pyhdfs
調(diào)用方法:
pyhdfs.HdfsClient(ip,port,user).copy_from_local()
pyhdfs.HdfsClient(ip,port,user).copy_to_local()
異常現(xiàn)象1如下圖:
異常現(xiàn)象2如下圖:
異常現(xiàn)象3如下圖:
原因分析:可以看出,以上都是連接成功了,但是上傳或者下載失敗了,造成這種現(xiàn)象的原因是
我這里連接的是name節(jié)點(diǎn),端口50070,當(dāng)調(diào)用copy_from_local()時(shí),name節(jié)點(diǎn)會(huì)主動(dòng)去連接data節(jié)點(diǎn)進(jìn)行數(shù)據(jù)讀寫操作,而data節(jié)點(diǎn)端口50075沒有開啟,造成data節(jié)點(diǎn)連接超時(shí),拋出異常
解決辦法:開啟data節(jié)點(diǎn)端口
以上這篇完美解決python針對(duì)hdfs上傳和下載的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. CSS3中Transition屬性詳解以及示例分享2. ASP基礎(chǔ)入門第八篇(ASP內(nèi)建對(duì)象Application和Session)3. jsp文件下載功能實(shí)現(xiàn)代碼4. XMLHTTP資料5. asp.net core項(xiàng)目授權(quán)流程詳解6. html中的form不提交(排除)某些input 原創(chuàng)7. ASP常用日期格式化函數(shù) FormatDate()8. CSS3實(shí)現(xiàn)動(dòng)態(tài)翻牌效果 仿百度貼吧3D翻牌一次動(dòng)畫特效9. ASP動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)經(jīng)驗(yàn)分享10. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法
