标签: pyhdfs-client

如何在 python 3 中导入“HdfsClient”?

我是 python 新手,我正在尝试连接 Hadoop HDFS 系统。我得到了以下参考代码,我尝试实现它,但在导入包时显示错误。

from pyarrow import HdfsClient

# Using libhdfs
hdfs = HdfsClient('192.168.0.119', '50070', 'cloudera', driver='libhdfs')
Run Code Online (Sandbox Code Playgroud)

错误:ImportError:无法导入名称“HdfsClient”

我什至尝试使用“ pip ”安装它,但是

找不到满足 HdfsClient 要求的版本(来自版本:)未找到 HdfsClient 的匹配发行版

然后我尝试使用“ conda ”,但又

收集包元数据:完成解决环境:失败

PackagesNotFoundError:当前渠道无法提供以下软件包:

  • HDFS客户端

目前渠道:

要搜索可能提供您正在寻找的 conda 包的替代频道,请导航至

https://anaconda.org
Run Code Online (Sandbox Code Playgroud)

并使用页面顶部的搜索栏。

实际上我正在尝试使用以下方式连接到 HUE:

IP 地址 -> 192.168.0.119

端口名称 -> 50070

用户名 -> cloudera

密码->cloudera

但这并不奏效。任何人都可以建议以更好的方式连接它或如何在 Python 3 中导入“HdfsClient”包。

python hadoop python-3.x anaconda pyhdfs-client

6
推荐指数
1
解决办法
2306
查看次数

ConnectionError(MaxRetryError("使用 pywebhdfs 超出 HTTPConnectionPool 最大重试次数

你好,我正在使用 pywebhdfs python lib。我通过调用并尝试在 HDFS 上创建文件来连接 EMR。我遇到了异常,这似乎与我正在执行的操作无关,因为我在这里没有达到任何连接限制。是因为 webhdfs 的工作原理吗

from pywebhdfs.webhdfs import PyWebHdfsClient
hdfs = PyWebHdfsClient(host='myhost',port='50070', user_name='hadoop')
my_data = '01010101010101010101010101010101'
my_file = 'user/hadoop/data/myfile.txt'
hdfs.create_file(my_file, my_data)
Run Code Online (Sandbox Code Playgroud)

抛出:

requests.exceptions.ConnectionError: HTTPConnectionPool(host='masterDNS', port=50070): 超过 url 的最大重试次数:/webhdfs/v1/user/hadoop/data/myfile.txt?op=CREATE&user.name=hadoop (由NewConnectionError(': 无法建立新连接: [Errno 115] 操作正在进行中',))

hadoop webhdfs pyhdfs-client

5
推荐指数
1
解决办法
7666
查看次数

标签 统计

hadoop ×2

pyhdfs-client ×2

anaconda ×1

python ×1

python-3.x ×1

webhdfs ×1