硬盘原理(转)

来源:互联网 发布:百度贴吧网络连接失败 编辑:程序博客网 时间:2024/05/02 00:10

身为java程序员,知道一点硬件的知识,是没有什么坏处的。


现在的磁盘大部分为机械硬盘,是靠磁盘的旋转来读取/写入数据。


衡量机械硬盘的标准为iops(每秒进行io的次数),对于SATA硬盘来说,iops大概是60,严重拖了计算机的后腿。SAS硬盘要好一些,是120,不过价格也更贵一些。下面介绍几个概念


iops:磁盘每秒最多可以完成的io次数。这个io大家不要理解为一次做大量的数据处理的读写io,一般是指小io,很大的数据也通常会被分解为多个小的io。

随机读写:磁盘在寻找数据之前,先要对地址进行定位,由于频繁的发生磁盘小io请求(例如4KB),所以就频繁的寻找位置,就像是随机读写。

顺序读写:是相对于随机读写来说的,每次读写的数据会比较大,比如1MB,对于过大的数据块读写,也会拆分为多个小io请求。简单来说,如果找到了位置,那么处理1MB数据跟处理4KB数据时间是差不多的。


关于机械磁盘的原理,这里就不多说,无非是磁头,磁道那些东东。这里着重讲一下SSD硬盘。


SSD硬盘是最近几年问世的,它算是传统硬盘的一个终结者。因为他的iops能力是传统磁盘的上千倍。在一些要求高iops的数据库服务器上(随机读写居多)已经开始大量采用SSD硬盘,而传统PC也开始有很多开发者使用SSD硬盘用于内存的扩展,以弥补程序设计“内存”不够用。




0 0
原创粉丝点击