为什么磁盘1次随机读需10ms

   首先我们需要了解以下磁盘特性

   1)以7200转/min的磁盘为例,8.33ms内选择一周

   2)  磁道间跳转需要1ms的启动时间,每移动4000个磁道增加1ms

   3)磁盘以65536个磁道计算

   首先算寻道时间,寻道距离按照此前的证明为1/3个磁道数,

   则寻道时间 = 1 + (65536/3)/4000 = 6.46ms

   再算旋转延迟,这个时间是由于到了磁道上,但需要找到准确的扇区,最好情况下,寻道后直接找到,最坏的情况下,寻道后转一圈找到,因此选择延迟大约为 8,33/2 = 4.17ms

  

   假定这次随机读的量很小,传输时间忽略不计。

   那么磁盘1次随机读的时间 = 6.46 + 4.17 = 10.63ms

 

   磁盘随机读的代价是非常巨大的,10ms的时间可以执行数百万条指令,通常一个指令的耗时按ns计算(L1 cache的一次访问),1秒能执行百万次指令。

 

   怎么克服磁盘随机读的问题呢?除了在业务上想办法,还有哪些技术上的办法,待续。    

  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值