打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
固态硬盘SSD性能分析及RAID 0方案设计

张珮,王晓曼

(长春理工大学 电子信息工程学院,吉林 长春 130022)

摘要:针对SATA II接口300 MB/s的最大极限传输速度,为突破其瓶颈,提出了一种基于固态硬盘的RAID 0阵列存储方案,使得固态硬盘在SATA II 接口下的传输性能达到更高。首先使用两片英睿达CRUCIAL容量为256 GB的SSD固态硬盘单独挂载在SATA II接口下测得传输性能;然后设置主板RAID模式,将其组建RAID得到Volume0,同样测得传输性能;最后通过对比测试,RAID 0 SSD整体的持续读写性能明显优于单盘SSD。性能测试结果表明,SSD在数据的读取写入、突发传输速率等方面都远优于传统机械硬盘,RAID 0更能使得SSD的性能达到最大,突破SATA II 接口的峰值传输速度。

0引言

在计算机技术飞速发展的信息时代,随着CPU性能的提高,内存容量的增加,存储系统需要一个更快的设计方案,虽然新一代SATA II接口的问世提升了数据传输速率[1],但传统的5 400转、甚至7 200转机械硬盘的读写速度仍是制约PC存储性能的瓶颈,因此,设计出高性能的固态硬盘(Solid State Drives,SSD)。该固态硬盘内部采用Flash闪存芯片构建存储介质,数据的读写操作由主控芯片协调,与传统的机械硬盘相比,无马达和磁盘,因此没有机械转动噪音。基于无机械部件的数据传输模式,SSD在数据的读取写入、突发传输速率等方面都远优于机械硬盘,并且在省电、抗震性方面也具有很大的优势[2]。

1固态硬盘结构

1.1主控芯片

主控芯片在固态硬盘中处于核心地位,第一能合理地分配数据,减少在每个Flash芯片上的负荷,第二则是作为高速缓存芯片、闪存芯片和外部数据接口之间数据的中转。不同的主控,在数据处理能力、算法和读取写入控制闪存芯片能力上会有很大差异,这直接影响到固态硬盘产品的性能。图1为Intel主控芯片,Intel的固态硬盘有着非常优秀的控制能力,拥有先进的固件和相应的算法,性能和稳定性都相当优秀。图2为SandForce主控芯片,其独有的Dual Class技术将MLC SSD的性能和寿命都大幅提高。

1.2高速缓存芯片

在机械硬盘中,DRAM芯片用于数据的高速缓存,同样固态硬盘进行数据处理时也需要高速的缓存芯片辅助主控芯片,图3是一片128 MB容量的南亚DRAM,不过廉价固态硬盘方案考虑到降低成本,除去了DRAM芯片,节省成本的同时,却增加了主控与闪存芯片之间的负担,一旦出现频繁的零碎文件的读取和写入,没有高速缓存的固态硬盘性能下降比较明显。

1.3存储单元

NAND Flash是固态硬盘的基本存储单元,主要用来存储数据,相当于机械硬盘的磁盘,NAND Flash分为两类:SLC单层单元和MLC多层单元[3]。SLC成本高、存储容量小,但是速度快、错误率低,一般应用于工作站;而MLC恰恰相反,容量大、成本低,但是速度慢、错误率高。使用寿命方面,SLC比MLC更长。因此,在MLC中,通常控制芯片都采用校验和智能磨损平衡算法,平均分摊每个存储单元的写入次数,增大故障间隔时间(MTBF),从而延长MLC的使用寿命。图4是三星公司的MLC NAND Flash芯片。

2固态硬盘优缺点

(1)读写性能优异:相比机械硬盘无需进行磁盘寻道,读取延时小,寻址时间与数据存储位置无关,因此,使用中产生的数据碎片不会影响读取时间。

(2)无噪音:SSD内部无马达、磁片等机械部件,因此工作噪声基本为零。

(3)防震抗摔:基于全部闪存芯片,没有磁头,因此即使在高速移动或震动的情况下,也不会出现磁道损坏的情况。

(4)体积小,重量轻:1.8英寸固态硬盘重量大约为25 g,应用在高度集成的便携式笔记本电脑中,可以有效降低机器内部占用空间,减轻机身重量。

但是固态硬盘拥有众多优点的同时,也伴随着生产成本高、数据不易恢复、存储容量相对小、读写次数有限等劣势,一般需要存储大容量数据时,不会考虑使用SSD固态硬盘,因此普及使用相对比较困难。

3RAID 0磁盘阵列

3.1RAID 0简介

RAID 0又称为Stripe或Striping,RAID 0是RAID级别中存储性能最高的。RAID 0的工作原理图如图5所示,其工作方式是把连续的数据分别存储在多个磁盘上,当系统发出数据请求时,多个磁盘并行执行,每个磁盘分别执行各自的那部分数据请求[4]。这样就可以充分利用总线带宽,使得磁盘整体的存储性能相对于单盘性能有很大的提升。

理论上,RAID 0中硬盘数量与传输速度成正比,但在实际使用中受系统I/O总线和其他因素的影响,会出现一定的衰减。另外,在读写速度得到了提升的同时,4 K随机读取速度也会随着硬盘数量的增多而降低。

使用SSD组建RAID 0不提供数据冗余,运行时只要其中任意一块硬盘出现问题就会导致整个数据的故障,损坏的数据也将无法得以恢复。因此RAID 0 适合应用在对性能要求较高,而不太注重数据丢失的领域。对于PC用户而言,RAID 0 能够发挥出SSD的最高性能,用户可以体验更加流畅的高性能系统运行环境。

3.2RAID 0性能分析

AS SSD Benchmark是一款专业的固态硬盘性能测试软件,能测出固态硬盘的持续传输速度,以及单线程和多线程下4 KB小文件的随机性能等,准确率很高。实验采用两片英睿达CRUCIAL容量为256 GB的SSD固态硬盘,分别在运行Windows 7系统的PC SATA II接口下测得单盘性能指数和RAID 0性能指数,分析测试结果可以看出,如图6所示。单SSD的持续读取速度为234.52 MB/s,持续写入速度为214.99 MB/s;图7所示的RAID 0 的持续读取速度可达465.56 MB/s,持续写入速度为327.27 MB/s,突破了SATA II接口下300 MB/s的最大传输速率。不过也可以看出,RAID 0的4 K随机读取速度并没有提升,这是受RAID 0工作机制原理所制约的。

3.3Trim对SSD重要性及开启RAID下的Trim

Trim是针对固态硬盘而研发的技术。Trim功能需要系统以及主板芯片的支持,Windows 7及以后的操作系统均已支持Trim功能,现在Intel已支持7系芯片组RAID 0模式下的TRIM,但有两个前提条件,一是Optional ROM SATA(OROM)控制器BIOS版本要高于11.0,二是RST驱动版本要高于11.2。

机械硬盘在写入数据时,系统会先擦除旧数据,然后将新数据写入到磁盘中。而在删除数据时,操作系统只会在此处做个标记,备注这块区域没有数据,等到要写入数据时再来删除,并且做标记这一过程会缓存在磁盘中,等到磁盘空闲时再执行[5]。磁盘执行以上操作会花费一段时间,速度自然会变慢。

Trim的原理是当操作系统识别到SSD并确认已开启Trim后,在删除数据时,不会在硬盘上执行删除指令,而是使用Volume Bitmap来做标记,说明已经删除了此处的数据。Volume Bitmap相当于一个磁盘快照,其建立速度明显快于直接在硬盘上标记删除区域,节省了很多中间时间。写入数据时,由于NAND闪存是以纯粹的数字形式保存数据,因此根据Volume Bitmap的情况,可以直接向快照中已删除的区域写入新的数据,而不用花时间去擦除旧数据,提高了SSD稳定性,同时也延长了其读写寿命。

4结论

随着固态硬盘的逐渐普及,在便携式笔记本电脑中引入SSD,一方面可以提高笔记本电脑的存储性能,另一方面可以使得笔记本电脑在经常移动或者震动的场合保持稳定的工作状态,不会像机械硬盘一样损坏盘体产生磁盘坏道,导致数据丢失,此外固态硬盘能有效控制机械噪音,提供一个安静的工作环境。追求更高存储性能时,通过组建RAID 0阵列,能使得SSD持续读写性能发挥到极致,不再受限于SATA口的传输瓶颈,实现移动便携下的高性能。

参考文献

[1] 张江陵.海量信息存储[M].北京:高等教育出版社,2003.

[2] 袁飞.固态硬盘的研究与应用[D].成都:电子科技大学,2010.

[3] 孔令振,穆建文.基于NAND Flash大容量数据存储器的设计[J].微型机与应用,2014,33(9):2527.

[4] 李刚,韩松.大容量高速固态盘设计[J].电子测量技术, 2006,29(2):129130.

[5] 王鹏,杨华民,田爱雪.高校数字图书馆海量信息存储系统架构研究[J].长春理工大学学报(自然科学版),2014,37(3):135138.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
速度与风险哪个多?SSD组建RAID 0测试解析
Intel工程师详解固态硬盘
新一代存储芯片面世 速度比SSD快千倍(4)
相关评论
如何正确地使用固态硬盘
台式电脑不识固态硬盘(台式电脑不识固态硬盘可以吗)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服