python怎么读取hdfs上的文件

847
2023/10/26 4:25:08
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

要在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替换为您要读取的文件的路径。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: python中多态的特点有哪些