[转帖]按压硬盘能提升几十MB/s 的硬盘读写速度,长见识了

按压,硬盘,提升,几十,mb,读写,速度,长见识了 · 浏览次数 : 0

小编点评

**机械硬盘** *机械硬盘是通过磁头在非常非常狭窄的盘片上读写数据。 * 磁头会在盘片旋转时快速精准地定位到盘片上非常非常狭窄的磁道上方,读写盘片中存储的数据。 * 为了增加容量和读写速度,盘片和磁头并不是我们从正面看到的一块,而是多个盘片重叠在一起。 * 磁头也并不是只扫上面,通常是上下夹住盘片,两面都能读写。 * 机械硬盘从名字到价格再到外形都给我们一种硬汉形象,但是其实它非常「娇气」,一点点环境改变都可以降低它的工作效率甚至直接让它报废。

正文

https://www.ittel.cn/archives/6326.html

 

现在基本每台电脑都配置了 SSD (固态硬盘),但如果用在服务器、NAS 等大容量存储设备中,HDD(机械硬盘)的性价比依然无人能敌。

一方面是因为它便宜量大,一方面是因为它可靠性强,数据存储时间长。而你是否真的了解 HDD 呢?01  机械硬盘心细如发机械硬盘最基本的组成部分有:盘片-存储数据;磁头-在盘片上读写数据;磁头臂-控制磁头在盘片上移动;电路板-控制硬盘各部件工作;

接口-传输数据和供电

……

机械硬盘最基本的组成部分当机械硬盘工作时,存储数据的盘片会高速旋转,速度通常是 5400 转、7200 转、10000 转/分钟,需求更高的设备上(例如服务器)速度可以更快。在盘片旋转时,磁头会快速精准地定位到盘片上非常非常狭窄的磁道上方,读写盘片中存储的数据。

也就是说,盘片转的越快,硬盘读写数据的速度就越快。但是受限于机械结构,盘片转速总是有瓶颈的。

为了增加容量和读写速度,盘片和磁头并不是我们从正面看到的一块,而是多个盘片重叠在一起。磁头也并不是只扫上面,通常是上下夹住盘片,两面都能读写。

机械硬盘从名字到价格再到外形都给我们一种硬汉形象,但是其实它非常「娇气」,一点点环境改变都可以降低它的工作效率甚至直接让它报废。02     振    动

前面说了硬盘是通过磁头在非常非常狭窄的盘片磁道上读写数据,如果磁头的角度位置有一丢丢错位,就无法正确读写数据。

显微镜下的磁道这种错位其实经常发生,最常见的原因就是「振动」,只要轻微振动就会导致磁头位置发生变化。为了更直观感受这种精度,我们以西部数据 8TB 紫盘举例,这款硬盘大约有 2.48 亿条磁道,每个盘片的单面有 1550 万条磁道。这是一块 3.5 英寸(8.89cm)磁盘,去除主轴占有后盘片的实际可用半径大约是 0.875 英寸(2.22cm)。2.22cm 上并排了 1550 万条磁道,每毫米大约有 698198 条磁道。一根头发的直径大约是 0.06mm。也就是说头发丝直径的长度下大约有 41892 条磁道。

这就是为什么最微小的振动就能影响硬盘读写速度。磁头每一次错位,意味着盘片那一圈为无效旋转,下一圈到来前磁头要尽量回到正确的位置,振动稍微大一点就需要几圈才能回正,也就增加了读写时间。

机箱中的振动通常来自散热风扇,特别是便宜的散热不会注意这一点,抖动很大(对硬盘来说)。高端散热和服务器散热风扇的振动影响往往还不足以达到影响硬盘的阈值。

由于硬盘的机械结构,它工作时肯定会产生振动。

振动的主要来源是读写数据的磁头臂,读写数据的磁头安装在磁头臂上,磁头臂移动以定位新的磁道,这个工作在瞬间完成,每秒大约可以完成 100 次定位。因此磁头臂必须要快速加速减速,根据物理定律,每次加速都会有相反的作用力被施加到硬盘主体上,使硬盘产生微小的 X 和 Y 方向的振动。

电子产品和技术研究杂志 EP&T.CA 测试发现,当硬盘被安装放在弹性材料(塑料支架)上时振动幅度明显大于硬性材料(花岗岩)。所以更建议大家使用螺丝钉将机械硬盘固定在机箱上,而不是用硬盘支架。

下图是测试结果,蓝线 X 轴振动,绿线为 Y 轴振动:

硬性材料

软性材料

如果硬盘安装不牢靠,我们用手能力按压硬盘也会起到固定作用,减少硬盘抖动,从而加快硬盘读写速度。有机械移动硬盘的朋友可以试试,使用移动硬盘大多放在桌面上,在读写时给硬盘压力,可能会让它更有动力。

03     气    压 在盘片高速旋转是会产生气流托起磁头,托起高度非常非常低,并且越低,读写越精准。但磁头决不能完全贴着盘片移动,否则会刮花磁道。

被刮花的磁道就彻底就不能再用了,这就是我们所说的「物理坏道」。

导致磁头与旋转的盘片接触的不光有振动,还可能是低气压。

为了防止杂质刮花盘片,机械硬盘内部是完全无尘状态。但又因为气流的缘故,硬盘内部与外界的气压需要相同,中间由空气过滤片过滤外界的杂质,保证机械硬盘内部洁净无尘。

而当处于低气压(高海拔)环境时,盘片的转动无法产生足够的气流托起磁头,就非常容易导致坏道,缩短硬盘寿命,所以一些硬盘在高海拔地区会「罢工」。

 04     噪    音 

2008年工程师 BrendanGregg 在 YouTube 发布了一个视频:

视频播放器
 
 
00:06
 
01:59
 
 
视频中他正在一个数据中心测试硬盘的读写速度,只见他走到一个硬盘矩阵前,乘硬盘没有注意时对其大吼了一声,再回到电脑上查看 IOPS 指标发现,被吼的硬盘出现了一个很陡的瞬间波峰

像不像你正上班摸鱼,老板突然在身后大吼一声时你的心电图走势?这个实验证明了声音也会对硬盘产生影响。看过上面的内容就很容易理解。声音会产生振动,而振动会影响磁盘读写速度。只需要 110 分贝就能降低大多数机械硬盘的性能。150 分贝甚至能直接让硬盘歇菜。05     总   结 有时候我们读写数据时,不小心移动了电脑或硬盘而导致读写失败,以往我们首先以为是因为接口松动而导致接触不良。但仔细想想接口哪有那么容易松动?我们给手机充电的时候随意移动手机也没见充电终止啊。
现在看来可能是大幅晃动导致硬盘「罢工」了。随着技术升级,现在的机械硬盘也不像以前那么脆弱,但如果存储重要数据,依然要避免晃动它。

与[转帖]按压硬盘能提升几十MB/s 的硬盘读写速度,长见识了相似的内容:

[转帖]按压硬盘能提升几十MB/s 的硬盘读写速度,长见识了

https://www.ittel.cn/archives/6326.html 现在基本每台电脑都配置了 SSD (固态硬盘),但如果用在服务器、NAS 等大容量存储设备中,HDD(机械硬盘)的性价比依然无人能敌。 一方面是因为它便宜量大,一方面是因为它可靠性强,数据存储时间长。而你是否真的了解 H

[转帖]文件系统读写性能fio测试方法及参数详解

简介 Fio 是一个 I/O 工具,用来对硬件进行压力测试和验证,磁盘IO是检查磁盘性能的重要指标,可以按照负载情况分成照顺序读写,随机读写两大类。 Fio支持13种不同的I/O引擎,包括:sync, mmap, libaio, posixaio, SG v3, splice, null, netw

[转帖]按需制作最小的本地yum源

https://www.cnblogs.com/liufarui/p/11311557.html 【需求背景】 有时候客户的环境里面只能离线安装文件,此时可以使用CentOS的ISO光盘作为本地源进行安装,或者是制作一个包含了YUM源服务的虚拟机。 无论上面的哪一种方式都不够轻量,我们自己的组件可能

[转帖]nginx按日分割日志

https://www.cnblogs.com/leffss/p/7832123.html #!/bin/bash #按日切割nginx日志并压缩,加入crontab每天0:00切割 #作者:fafu_li #时间:2015.08.15 source /etc/profile #加载系统环境变量 s

[转帖]linux按行读取 (while read line与for-loop)

https://cloud.tencent.com/developer/article/1655435 在linux下一般用while read line与for循环按行读取文件。现有如下test.txt文件: 1. while read line while read line; do echo

[转帖]Linux shell 按行循环读入文件常用代码如下:

Linux shell 按行循环读入文件常用代码如下: #/bin/bash printf "*************************************\n" echo " cat file whiel read line" cat test.txt |while read line

[转帖]top命令按内存/CPU进行排序

https://www.cnblogs.com/wangzy-Zj/p/16869149.html 一、按内存使用率排序 运行top命令后,输入大写的 M。 二、按CPU使用率排序 运行top命令后,输入大写的P。 三、转换界面单位 将KiB转换成GiB展示,按两下大写的E即可(转换成MiB、TiB

[转帖]top命令按内存/CPU进行排序

https://www.cnblogs.com/wangzy-Zj/p/16869149.html 一、按内存使用率排序 运行top命令后,输入大写的 M。 二、按CPU使用率排序 运行top命令后,输入大写的P。 三、转换界面单位 将KiB转换成GiB展示,按两下大写的E即可(转换成MiB、TiB

[转帖]网络监控工具

nethogs: 按进程查看流量占用 iptraf: 按连接/端口查看流量 ifstat: 按设备查看流量 ethtool: 诊断工具 tcpdump: 抓包工具 ss: 连接查看工具 其他: dstat, slurm, nload, bmon

[转帖]人大金仓数据库分区表

分区表 声明式创建分区 按列创建分区(PARTITION BY LIST) 将学员表student按所在城市使用partition by list创建分区 创建分区表(基表) 创建格式 create table 表名(字段名 数据类型)PARTITION BY LIST(要分区的字段名) 创建子分区