python

python怎么读取hdfs上的文件

小亿
162
2023-10-13 04:25:08
栏目: 编程语言

要在Python中读取HDFS上的文件,您可以使用Hadoop的文件系统库pyarrow或hdfs3。

使用pyarrow读取HDFS上的文件,您需要安装pyarrow库并配置好Hadoop的环境变量。然后可以使用以下代码示例读取HDFS上的文件:

import pyarrow as pa
# 连接到HDFS文件系统
fs = pa.hdfs.connect(host="namenode_host", port=8020, user="hdfs_user")
# 读取HDFS上的文件
with fs.open("/path/to/file.txt", mode='rb') as f:
data = f.read()
# 打印文件内容
print(data.decode('utf-8'))

使用hdfs3库读取HDFS上的文件,您需要安装hdfs3库并配置好Hadoop的环境变量。然后可以使用以下代码示例读取HDFS上的文件:

import hdfs3
# 连接到HDFS文件系统
fs = hdfs3.HDFileSystem(host="namenode_host", port=8020, user="hdfs_user")
# 读取HDFS上的文件
with fs.open("/path/to/file.txt", 'rb') as f:
data = f.read()
# 打印文件内容
print(data.decode('utf-8'))

请替换namenode_host为您的HDFS Namenode的主机名或IP地址,8020为Namenode的端口号(默认为8020),hdfs_user为HDFS中的用户名。然后将/path/to/file.txt替换为您要读取的文件的路径。

0
看了该问题的人还看了