pydoop在jupyter中失败

holgip5t  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(599)

我在同一台机器上安装了一个带有hdp和ipython/jupyter的ubuntuo/s。我可以使用python2内核通过jupyter笔记本运行各种命令。
不过,我有问题的pydoop在jupyter笔记本。我想使用这个库来访问hadoop上hdfs中的数据。我能够在python命令控制台和ipython控制台中成功运行以下代码:

import pydoop.hdfs as hdfs
hdfs.ls('/')

但是,我在jupyter笔记本中的hdfs.ls命令上遇到以下失败:

/usr/local/lib/python2.7/dist-packages/pydoop/hdfs/core/__init__.pyc in core_hdfs_fs(host, port, user)
 55             'module not initialized, check that Pydoop is correctly installed'
 56         )
---> 57     return _CORE_MODULE.CoreHdfsFs(host, port, user)

RuntimeError: (255, 'Unknown error 255')

我相信这个错误是有误导性的,因为同一个命令在普通的python和ipython控制台中工作。我试图用以下命令初始化hdfs类,但得到相同的错误:

host='zzz.zzz.zzz.zzz' <host name masked for question>
port=8020
user='hdfs'

hdfs.init()
hdfs.hdfs(host, port, user)

python-v命令显示jupyter笔记本和python控制台都在使用python2.7.3
我可以使用以下命令通过jupyter笔记本访问hdfs:

!hdfs dfs -ls /user/flume/data

我还可以确认pydoop包在jupyter('pydoop==1.2.0')中通过ipython notebook上找不到的模块中建议的以下脚本可用

import pip
installed_packages = pip.get_installed_distributions()
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
 for i in installed_packages])
print installed_packages_list

任何帮助将在修复jupyter中的模块错误。
谢谢

7z5jn7bk

7z5jn7bk1#

我通过卸载jupyter解决了这个问题,并选择通过anaconda安装所有东西(python、ipython、jupyter等)。
希望这对遇到类似问题的人有所帮助。
我相信这个问题可能与所需的库没有安装或没有更新有关,尽管我已经没有时间来确定这个问题了。

相关问题