hdfs的高吞吐量仅仅是因为它的块大小?

ubbxdtey  于 2021-06-03  发布在  Hadoop
关注(0)|答案(0)|浏览(254)

我听说hdfs的核心特性之一是高吞吐量。我还读到,这是因为它的块大小和较低的寻找时间。我做了一个计算来证明我自己。假设我在linux文件系统中有一个10gb的文件,在hdfs中有相同的文件。使寻道时间为10ms,传输速率为100mb/s。我只是将块大小从512b改为128mb,所以如果我想从linux文件系统读取数据。

total read time = total transfer time + total seek time 
total transfer time = number of blocks* ( size of the block / transfer rate )
total seek time = number of block* 10ms

因此
对于普通linux文件系统

number of blocks= 10*1024*1024*1024/512 = 21 million blocks(approximately)
transfer time = 512/(100*1024*1024/1000) = 0.00488ms

total read time = 21000000(0.00488+10) = 58.36 hours

对于hdfs

number of blocks = (10*1024)/128 = 80
transfer time = 128/(100/1000) = 1280ms

total read time = 80* (1280+10) = 103 seconds

我的计算错了吗?另外,请告诉我这就是hdfs具有高吞吐量的原因吗?为什么它有低延迟?谢谢,我希望能澄清一下。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题