要在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
替換為您要讀取的文件的路徑。