当尝试使用pyarrow包(版本0.17.1)中的非遗留数据集时,我在连接到hdfs
时遇到了OSError: HDFS connection failed
错误。但是,当我使用遗留的连接时,我可以毫无问题地建立连接
即,波纹管工作:
filesystem = pa.hdfs.connect(host = 'host_name', kerb_ticket = path_to_kerb_ticket_cache, port = 0)
但这并不是:
filesystem = pa.fs.HadoopFileSystem(host = 'host_name', kerb_ticket = path_to_kerb_ticket_cache, port = 0)
此外,如果我首先使用传统方式创建连接,然后尝试使用非传统方式进行连接,则一切正常:
filesystem = pa.hdfs.connect(host = 'host_name', kerb_ticket = path_to_kerb_ticket_cache, port = 0)
filesystem = pa.fs.HadoopFileSystem(host = 'host_name', kerb_ticket = path_to_kerb_ticket_cache, port = 0)
有没有关于如何正确使用pa.fs.hadoop文件系统的想法
使用旧版连接函数并将主机输入为
default
时,它将从core-site.xml
(defaultFS)中获取默认主机。新的Hadoop文件系统调用不能做到这一点。手动将主机输入HadoopFileSystem
为我修复了它例如,在此部分输入主机
fs.HadoopFileSystem(host='hdfs://your-hdfs-host' ...)
而不是输入
default
fs.HadoopFileSystem(host='default' ...)
相关问题 更多 >
编程相关推荐