0
我想从本地传输大量文件到hadoop hdfs。 在我的java代码中,我只有一个连接到hadoop。但我打电话TransferFromLocal使用许多线程的hadoop hdfs
fileSystem.transferFromLocal
同时在50个线程。
我认为这可能不是一个好方法,因为它真的很慢。
任何人都可以请给我一些关于这方面的建议吗?非常感谢你。
我想从本地传输大量文件到hadoop hdfs。 在我的java代码中,我只有一个连接到hadoop。但我打电话TransferFromLocal使用许多线程的hadoop hdfs
fileSystem.transferFromLocal
同时在50个线程。
我认为这可能不是一个好方法,因为它真的很慢。
任何人都可以请给我一些关于这方面的建议吗?非常感谢你。
你需要弄清楚瓶颈导致缓慢转移,它可以是任何。只增加线程数量不会增加HDFS写入的比例。没有深入了解Hadoop集群的详细信息,就很难诊断问题。
这里有一些事情要考虑
检查本地计算机和Hadoop集群之间的网络带宽。
本地磁盘I/O也可能是瓶颈。
尝试增加数据节点的数量。请注意,数据直接从客户端流式传输到管道中的第一个数据节点。第一个转发到第二个,转发到下一个数据节点。
检查任何配置参数以微调HDFS。
查看Architecture Guide了解更多关于HDFS的细节。