从HDFS传输文件 [英] Transfer file out from HDFS

查看:180
本文介绍了从HDFS传输文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将文件从HDFS传输到不在hadoop群集但位于网络中的其他服务器的本地文件系统。



我可以这样做:

  hadoop fs -copyToLocal< SRC> < DEST> 
,然后scp / ftp< toMyFileServer> ;.由于数据量巨大,并且由于hadoop网关机器的本地文件系统空间有限,我想要避免这种情况,并将数据直接发送到我的文件服务器。



请帮助一些关于如何处理这个问题的指针。

解决方案

因此,您可能有一个包含很多部分的文件作为您的hadoop程序的输出。

  part-r-00000 
part-r-00001
part-r-00002
part-r-00003
part-r-00004

所以让我们一次完成一部分?

  for i in`seq 0 4`; 
do
hadoop fs -copyToLocal output / part-r-0000 $ i ./
scp ./part-r-0000$i you @ somewhere:/ home / you /
rm ./part-r-0000$i
完成

您可能需要查找scp的密码修饰符

I want to transfer files out from HDFS to local filesystem of a different server which is not in hadoop cluster but in the network.

I could have done:

hadoop fs -copyToLocal <src> <dest>
and then scp/ftp <toMyFileServer>.

As the data is huge and due to limited space on local filesystem of hadoop gateway machine, I wanted to avoid this and sent data directly to my file server.

Please help with some pointers on how to handle this issue.

解决方案

So you probably have a file with a bunch of parts as the output from your hadoop program.

part-r-00000
part-r-00001
part-r-00002
part-r-00003
part-r-00004

So lets do one part at a time?

for i in `seq 0 4`;
do
hadoop fs -copyToLocal output/part-r-0000$i ./
scp ./part-r-0000$i you@somewhere:/home/you/
rm ./part-r-0000$i
done

You may have to lookup the password modifier for scp

这篇关于从HDFS传输文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆