如何为python ibis或请求设置impala namenode rpc端口号

xpcnnkqh  于 2021-06-26  发布在  Impala
关注(0)|答案(1)|浏览(537)

我用的是“ibis框架”。我有

hdfs_client = ibis.hdfs_connect(...)
impala_client = ibis.impala.connect(..., hdfs_client=hdfs_client)
db = impala_client.database('abc')
data = pd.DataFrame(...)
db.create_table('tb_name', obj=data, format='parquet', force=True)

此操作失败,因为 namenoderpcaddress 建造人 requests (在ibis中称为)有端口8020,而我的正确端口是8022(这是cloudera推荐的端口;可能是出于某种目的)。

ConnectionError: HTTPConnectionPool(host='ip-0-0-0-0.ec2.internal', port=50075): Max retries exceeded with url: /webhdfs/v1/tmp/ibis/pandas_7ae170c27ee6426e97e0f84aa9a2a778/0.csv?op=CREATE&user.name=user&namenoderpcaddress=ip-0-0-0-0.ec2.internal:8020&overwrite=false&user.name=user (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7feb44be49d0>: Failed to establish a new connection: [Errno -2] Name or service not known',))

(以上消息中的ip地址由我编辑)
你知道我怎么告诉ibis或者请求这个端口号吗?
谢谢。

insrf1ej

insrf1ej1#

ibis.hdfs_connect 需要一个 port 你可以用来传递 8022

相关问题