gpt4 book ai didi

Hadoop 放置性能 - 大文件 (20gb)

转载 作者:可可西里 更新时间:2023-11-01 14:11:19 24 4
gpt4 key购买 nike

我正在使用 hdfs -put 将一个 20GB 的大文件加载到 hdfs 中。目前该过程运行@ 4 分钟。我正在尝试改进将数据加载到 hdfs 的写入时间。我尝试使用不同的 block 大小来提高写入速度,但得到了以下结果:

512M blocksize = 4mins;
256M blocksize = 4mins;
128M blocksize = 4mins;
64M blocksize = 4mins;

有谁知道瓶颈可能是什么以及我可以探索的其他选项来提高 -put cmd 的性能?

最佳答案

20GB/4 分钟约 85MB/秒。这是一个非常合理的吞吐量,可以预期单个驱动器具有 HDFS 协议(protocol)和网络的所有开销。我敢打赌这是你的瓶颈。如果不更改摄取过程,您将无法神奇地加快速度。

核心问题是 20GB 是一个相当大的数据量,并且该数据作为单个流被推送到 HDFS。你受到磁盘 I/O 的限制,考虑到你在 Hadoop 集群中有大量磁盘,这是非常蹩脚的。你有一段时间去饱和 10GigE 网络(也可能是 1GigE)。

如您所见,更改 block 大小不应改变此行为。从磁盘到 HDFS 的数据量仍然相同。

我建议您将文件拆分为 1GB 的文件并将它们分布在多个磁盘上,然后使用 -put 并行推送它们。如果网络成为瓶颈,您甚至可能想要考虑将这些文件拆分到多个节点上。你能改变你接收数据的方式来加快速度吗?显然,拆分文件并四处移动它也需要时间。

关于Hadoop 放置性能 - 大文件 (20gb),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19570660/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com