最近由于程序的需要,使用python操作hdfs的内容。查找发现可以通过pydhfs操作hdfs,但是网上的教程多数比较老。
本着被坑了很久,希望大家早点解决问题的态度,记录下本菜鸟安装的过程。
可以按照下面帖子的方法安装pyhdfs
http://blog.youkuaiyun.com/w894607785/article/details/50205857
将所有的.jar放入lib库中,然后可以修改setup.py中的
pyhdfs = Extension('pyhdfs',
sources = ['src/pyhdfs.c'],
include_dirs = ['/usr/lib/jvm/jdk1.8.0_73/includes'],
libraries = ['hdfs'],
library_dirs = ['lib'],
runtime_library_dirs = ['/usr/local/lib/pyhdfs', '/usr/lib/jvm/jdk1.8.0_73/jre/lib/amd64/server'],
)
修改include_dirs和runtime_dirs为机器上的jdk安装路径,然后运行setup.py
完成后可以在python shell中尝试导入import pyhdfs
当出现无法找到模块错误时,检查setup中的路径是否正确
导入成功后可以输入
pyhdfs.connect('127.0.0.1',9000)尝试连接hdfs
如果出现
unable to get stack trace