有人可以解释这个计算并给出清楚的解释吗?
最佳答案
一个块将作为一条连续的信息存储在磁盘上,这意味着完全读取它的总时间是找到它的时间(查找时间)+无需进行任何查找就读取其内容的时间,即sizeOfTheBlock / transferRate = transferTime
。
如果我们将seekTime / transferTime
的比率保持较小(在文本中接近.01),则意味着我们从磁盘读取数据的速度几乎与磁盘所施加的物理限制一样快,而花费的时间却很少。
这很重要,因为在map reduce作业中,我们通常遍历(读取)整个数据集(由HDFS文件或文件夹或一组文件夹表示)并对其进行逻辑处理,因此,由于我们必须花费全部transferTime
来获取数据将所有数据从磁盘中取出,让我们尽量减少执行查找和读取大块数据所花费的时间,因此,数据块的大小也很大。
在更传统的磁盘访问软件中,我们通常不会每次都读取整个数据集,因此,我们宁愿花费更多时间在较小的块上进行大量查找,而不是浪费时间来传输不需要的太多数据。