如何将文件从客户端并行上传到hadoop集群

vmdwslir  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(625)

使用 hadoop fs -put 命令数据按顺序进入集群。
但是如何将数据从客户端并行上传到hdfs集群呢?

c3frrgcw

c3frrgcw1#

对, hadoop fs - put 按顺序工作。使用 distcp 命令(分布式副本)。

hadoop distcp file:///home/user/path /user/path
``` `distcp` 实现为mapreduce作业,其中复制工作由在集群中并行运行的Map完成。没有减速器。每个文件由单个Map复制,并且 `distcp` 通过将文件压缩成大致相等的分配,尝试为每个Map提供大致相同的数据量。默认情况下,最多使用20个贴图,但可以通过指定 `-m` 论据 `distcp` .
请参阅此处的手册。另请参阅此博客文章。
您还可以使用与符号并行运行shell命令( `'&'` )最后:

hadoop fs - put src_file tgt_file &
hadoop fs - put src_file2 tgt_file2 &

1bqhqjot

1bqhqjot2#

从命令开始 hadoop 是一个hadoop客户机,有必要让它们中的一些并行运行。但是您必须实现一种分割策略和错误处理,以便所有文件都能上传。
它不会解决磁盘i/o、iops、网络利用率等其他瓶颈问题。
您将找到一些关于欠数据加载到hdfs的背景信息-第1部分-并行加载。

相关问题