当我尝试替换旧版 hdfs 连接器时
from pyarrow import hdfs
fs = hdfs.connect()
,与新的 fs 连接器配合得很好
from pyarrow import fs
client = fs.HadoopFileSystem(host="default")
我遇到了 python 内核崩溃的问题。 我做错了什么?
最佳答案
检查您的环境中是否设置了这三个参数。 在你的终端上检查这个
echo $HADOOP_HOME
echo $JAVA_HOME
echo $ARROW_LIBHDFS_DIR
如果没有,您可能需要在使用 pyarrow 之前设置您的环境。你可以在 python 上试试这个
import os
from pyarrow import fs
os.environ['HADOOP_HOME'] = <path to hadoop binaries>
os.environ['ARROW_LIBHDFS_DIR'] = '<path to libhdfs.so>'
fs.HadoopFileSystem("hdfs://namenode:8020?user=hdfsuser")
# fs.HadoopFileSystem("namenode") should work too
关于python-3.x - 如何用新的 fs.HadoopFileSystem 替换旧的遗留 hdfs 连接器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62520197/