SSD固态硬盘由控制单元和固态存储单元组成(DRAM或FLASH由芯片组成的存储设备目前支持SATA、FC、SAS接口,可替代普通机械硬盘。
什么是SSD
SSD即固态硬盘(Solid State Disk或Solid State Drive),又称电子硬盘或固态电子盘,由控制单元和固态存储单元组成(DRAM或FLASH由芯片组成的存储设备目前支持SATA、FC、SAS接口,可替代普通机械硬盘。
SSD根据容量、可靠性和性能能的要求分为SLC SSD和MLC SSD,SLC主要用于服务器、工作站、存储等高可行性环境,MLC主要用于桌面PC可靠性要求低的环境。
SSD对比传统机械硬盘的内部结构图如下:
1.SSD盘内构造图
与传统的机械硬盘相比,SSD硬盘有以下优点:1。数据访问速度快。所有闪存芯片都使用,因此SSD固体存储器内无机械部件,SSD在密集的IO与传统硬盘相比,读写和低延迟性能优异。故障率低。防震抗摔是SSD其中一个特点是闪存芯片全部使用,因此SSD固态存储器内没有机械部件,即使高速移动,甚至翻转倾斜,也不会影响正常使用,在笔记本电脑意外坠落或与硬物碰撞时,数据丢失的可能性最小化。三、绿色环保。固体存储器工作时静音(固体存储器工作时噪音值为0分贝,因为没有机械电机和风扇),热量小,散热快。重量较轻。固体存储器重量较轻,有利于移动设备的携带。
在目前HDD机械硬盘容量每年增长缓慢,读写速度在过去10年中基本没有增加,而处理器的速度是莫尔定律的两倍,HDD硬盘存储介质已成为计算系统的瓶颈,SSD随着半导体工业的发展,Flash在采用多通道并行等技术下,集成度越来越高,成本也在下降,SSD其读写速度快、绿色省电、无机械部件可靠性高,在高端服务器、存储和便携机中得到了越来越广泛的应用。
2.SSD的分类
SSD目前有主流产品SLC和MLC两种产品的主要区别在于擦写次数和性能。SLC单层存储的全称(Single Level Cell),是指一个Block(块,Flash基本存储单元也可以称为Cell)只有两个电荷值,不同的电荷值表示0或1,因为只有一组高低电压才能区分0或1信号,所以SLC最大驱动电压可以很低,传统的双电压卡或低压版卡必须使用SLC类型的NAND Flash芯片。SLC由于结构简单,写入数据时电压变化范围小,寿命长,传统SLC Flash能承受10万次读写,所以不好Block由于存储结构非常简单,一组电压可以驱动,因此其速度性能较好,目前所有超高速卡都使用SLC类型的Flash芯片。MLC(多层存储—Multi Leveled Cell)充分利用是一种Block该技术由不同级别的电压驱动,由高压驱动Block记录两组信息(00、01、11、10)SLC记录密度理论翻了一倍。不过MLC除了同一工艺、同一晶圆面积时理论大一倍的记录空间外,还有一些先天缺点,如电压范围较小,Flash需要更多CRC验证空间可能会占用Block空间的10%,所以实际使用中同工艺的晶圆面积MLC的容量不到SLC的一倍。
因为电压变化更频繁,MLC技术的Flash寿命远不如SLC,官方给出的可擦写次数只有1万次,这是MLC最致命的缺点之一。MLC技术的Flash还有一个缺点,它的读写速度先天不如SLC,一个Block存储两组位数据自然需要更长的时间,包括电压控制CRC需要考虑写作方法等因素。
3. SSD技术解析
NAND FLASH 平衡损失算法(Wear Leveling)
由于闪存写作操作次数有限,如果部分单元写作操作10万次,则不能保证后续单元写作的可靠性,部分单元可能无效,如部分管理数据系统日志频繁重写,部分静态文件数据几乎从不重写.如果不加控制,部分块会因反复擦除而提前损坏,部分块还没有重写,以至影响SSD为了解决这命,为了解决这个问题,使用写作操作均匀分布在每个闪存单元上,从整体平衡,避免个别单元失效和损失平衡算法(Wear Leveling)广泛使用的算法是解决这个问题。
Wear Leveling提供块映射机制, 将写入的损失分散在不同的块上, 它不会导致某些块先被破坏,使整个块先被破坏SSD盘失效,而是在预期寿命前失效的块, 一些保留块将被替换, 该算法使整个设备的寿命与Flash最大寿命在同一量级。
一般来说,实现损失平衡算法(Wear Leveling)基于页面的文件存储算法将被使用,闪存物理地址和逻辑地址之间没有相应的关系。当固态硬盘收到数据写入请求时,它不会按顺序写入,而是找到至少写入的单元。因此,在动态分配物理块写入数据时,会根据不同块的使用情况分配相应的优先级,从而平衡整个存储器各单元的使用寿命。SSD由于目前多通道并发技术的多通道并发技术Nand Flash数据总线为8bit,最大能提供25MB/s的读速度和3MB/s写作速度,显然SSD如果用户无法接受提供此速度,目前SSD控制器通常同时使用多个通道并行操作多片Flash,类似RAID这样,读写速度大大提高,如下图所示:
纠错管理与映射机制SSD控制器监控和校准读写Flash数据,以确保数据操作的成功,并内置多余的纠错数据,以防止基于闪存设备的元数据丢失导致整个数据块丢失。SSD基于页面的文件存储算法一般采用映射机制,闪存物理地址与逻辑地址之间没有一一对应的关系。当固态硬盘收到数据写入请求时,它不会按顺序写入,而是找到最方便、最快的写入位置,以提高写入速度。
通常,检测工作通过片上状态寄存器和特定的硬件部件来验证写作操作和擦除操作是否成功,验证工作通过回读写入数据与用户数据进行比较来完成。当编写操作失败时,系统不会简单地向用户反馈错误,而是通过块反射机制分配一个空闲块重新执行编写操作,因为SSD在设计中,预留了一部分Flash用于临时存储数据和更换坏块Flash芯片对擦写次数有限制,读写次数没有限制,所以即使有些块写坏了,也不会影响整个块SSD使用寿命。因此,SSD通过自动验证,个别单元可以通过纠正错误来恢复数据,以确保数据的完整性、逻辑地址和物理地址的映射机制,解决物理块错误的问题,并需要逻辑地址和物理地址的映射机制来实现损失平衡算法。
4. SSD应用环境
SSD与普通机械硬盘相比,该磁盘具有与随机读取数据相同的顺序性能,响应时间小于1毫秒,无机械部件,可靠性高。通过仔细研究、分析和测试多个制造商SSD盘后,H3C为了配合万兆存储,发挥最佳性能,选择了高可靠性和高性能SLC SSD每个盘读性能达到250MB/s,每个磁盘的写作性能达到170MB/s,在4 KB在块读的情况下,每个盘可以达到35KIOPS, 在4 KB块写时,每盘可达3.3KIOPS。SSD盘性能和可靠性都很高,但价格相对较高,容量较小。SSD磁盘性能和可靠性都很高,但价格相对较高,容量较小。这就决定了SSD适用于随机阅读比例高、响应时间要求高的应用场合,主要包括:
数据库环境。数据库数据盘一般随机读写小数据块,响应时间要求高,容量2TB以下占绝大多数,使用SSD盘组成的RAID能提供很高的IOPS最大限度地利用它的容量。
高性能集群系统的共享数据盘。大量数据需要在集群系统中共享,每个节点需要频繁访问数据,需要快速响应。SSD盘后,可大大降低各节点访问共享盘的待定时间,提高其性能。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至827202335@qq.com 举报,一经查实,本站将立刻删除。文章链接:https://www.eztwang.com/chanpin/10499.html