直接将数据流入HDFS而不复制

9 投票
1 回答
6297 浏览
提问于 2025-04-17 19:21

我想找一些方法,可以直接用Python把数据写入HDFS,而不需要先存到本地节点再用copyfromlocal命令。

我希望能像使用本地文件一样使用HDFS文件,直接用写入方法,把内容作为参数传进去,类似下面这样:

   hdfs_file = hdfs.create("file_tmp")
   hdfs_file.write("Hello world\n")

有没有类似于我上面描述的用法的东西呢?

1 个回答

14

我不太确定有没有专门的Python HDFS库,不过你可以通过一个叫做hadoop fs put的命令来传输数据。你可以用'-'来表示从标准输入流(stdin)复制数据,这样就可以把数据直接传送到HDFS上了。

hadoop fs -put - /path/to/file/in/hdfs.txt

撰写回答