b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

详细说明SSD的有趣知识和基本原理

电脑杂谈  发布时间:2020-09-05 02:04:12  来源:网络整理

硬盘无法读取 格式化_硬盘磁头读取原理_硬盘读取数据工作原理

简介

在随机IO访问方案中,固态驱动器(固态驱动器,称为SSD)比传统的硬盘驱动器(硬盘驱动器,称为HDD)快约2至3个数量级。随着闪存价格的下降,越来越多的企业使用固态硬盘作为存储介质,这大大提高了企业的IOPS。许多KV系统要求将它们用作存储介质,例如TiDB。在机器的操作和维护方面,我希望服务器配备有固态驱动器(SSD),但是很少或没有动力去了解SSD的基本原理。我将列出SSD的一些功能。接下来阅读这篇文章。

名词(名词)描述

要获得更好的解释,请列出一些令人困惑的概念并进行解释。

以下是NVMe磁盘和SAS磁盘与CPU之间的连接关系:

闪存简介

如上所述,闪存广泛用于固态驱动器,因此在解释固态驱动器的各种算法之前,我们需要重点介绍闪存的特性。

概念和原则

闪存使用三端设备作为存储单元,即源极,漏极和栅极。电场效应主要用于控制源极和漏极之间的导通和截止;在栅极和硅衬底之间添加浮置栅极。浮栅可以存储电荷,并可以使用电荷存储来存储内存。

硬盘无法读取 格式化_硬盘读取数据工作原理_硬盘磁头读取原理

擦除:释放浮动栅极的电荷,使其变为“ 1”。此操作称为“擦除”。

编程:将电荷注入到浮栅中,使其变为“ 0”。此操作称为“编程”。

2.内部组织结构

闪存颗粒通常由数千个相同大小的块组成,并且块大小通常为数百KB到几MB。每个块的内部分为相同大小的几页(Page),该页的大小通常为4KB或8KB。

3.数据写入

4.数据读出

5. Flash存储器分类

硬盘读取数据工作原理_硬盘无法读取 格式化_硬盘磁头读取原理

SSD简介

如上所述,闪存是特定的存储介质,但是仅闪存颗粒是不够的。还有一个控制器,即SSD控制器。同时,为了运行各种算法,还需要一定数量的内存空间。 SSD由控制器,内存,闪存颗粒和其他单元组成。

SSD没有机械部件,例如HDD音圈电机,悬臂等,因此具有出色的抗冲击性。更重要的是,它可以实现多个并发和低延迟,因此其IOPS可以比HDD高出两个数量级。下图是真实的SSD。

提高SSD可靠性的方法

如前所述,闪存颗粒受到P / E次的限制。超过它会影响SSD存储数据的可靠性。从提高SSD可靠性的角度考虑了以下方法或措施。

地址空间虚拟化

2.容量冗余

为避免整个SSD因部分闪存损坏而发生故障,SSD设计为具有容量冗余。例如,对于100GB SSD,实际内部闪存物理容量通常超过110GB。超过额定容量的零件与额定容量之比称为冗余比。一般来说,冗余度越大,SSD的可靠性,寿命和性能就越好。企业级存储产品的冗余率通常超过28%。

3.磨损平衡

硬盘读取数据工作原理_硬盘无法读取 格式化_硬盘磁头读取原理

损耗平衡(WL)的作用是记录每个块的P / E时间,然后在需要擦除或写入数据时,尝试选择P / E时间相对较少的零件。经过磨损均衡的SSD的使用寿命可以最大化。

4.坏块管理

在使用SSD的过程中,尽管有各种机制和算法可以最大程度地延长使用寿命,但闪存的损坏仍然不可避免。容量冗余为解决闪存损坏问题提供了基本保证。闪存的损坏取决于页面的粒度,即一个块包含多个页面,某些页面可能处于正常状态,而某些页面处于损坏状态。实际上,当一个块中出现多个损坏的页面时,该块中的其他大多数页面都处于损坏的边缘。有鉴于此,SSD固件通常以块粒度来管理闪存的损坏:当发现由于损坏而无法读取的块内页数超过某个阈值时,确定该块为损坏,然后将该块中的有效数据迁移到其他可用块,并将该损坏的块标记为已损坏。从那时起,它将不再用于存储任何业务数据。

SSD固件有两种查找坏块的方法:主机IO触发和内部检查。在SSD生命周期中,大约1. 5%的块将成为坏块。

5.数据冗余保护

SSD使用多种冗余检查方法来保护用户数据免受位翻转,操纵或丢失。

在SSD控制器内存中使用纠错码(ECC)和循环冗余校验(CRC)来防止数据更改或操作。在闪存颗粒中使用低密度奇偶校验(LDPC)和CRC,以防止由于闪存颗粒错误而导致数据丢失。闪存颗粒之间使用XOR冗余,以防止由于闪存故障而导致数据丢失。 SSD使用寿命

SSD的使用寿命可以直接反映在写入的数据量中

SSD垃圾收集

硬盘磁头读取原理_硬盘读取数据工作原理_硬盘无法读取 格式化

地址空间虚拟化避免了重复擦除和写入相同的物理区域,同时还引入了垃圾数据和垃圾页面。解释如下:

主机访问LBA 100并写入数据AA。可以假设SSD使用页码401来存储数据AA。一段时间后,主机再次访问LBA 100并写入数据BB。由于闪存的特性,页号401除非已被擦除,否则无法直接写入,但SSD擦除是以块为单位的。是的,因此您需要使用地址空间虚拟化机制将数据BB写入另一页。假设该页数为623。经过上述两次写操作,第401页保存数据AA,第623页保存数据BB,第401页上保存的数据无效。仅保存在第623页的数据有用。存储在页面401中的数据称为垃圾数据,而页面401被称为垃圾页面。

垃圾收集(GC)的目的是清除垃圾数据并将垃圾页转换为可以写入数据的干净页。在SSD的内部实现中,垃圾回收通常是一项后台任务,它不断监视SSD内的块和页面的使用情况。当垃圾页面过多时,它将:

选择包含更多垃圾页面的那些块,然后将有效数据迁移到其他块中的干净页面。对不再包含有效数据的那些块执行擦除操作。将已擦除的块放入可用资源池中以写入新数据。

尽管垃圾回收继续净化SSD,但它还会在SSD内部创建更多写入操作,因此闪存所承载的写入数据量超过了主机写入的数据量。这种现象称为写入缩放。固定业务模型后,闪存写入的数据量与主机写入的数据量之比不会随时间变化,而是会在固定值附近的较小范围内波动。我们将此中心点称为写放大因子,值越小越好。

行业主流水平的写入放大系数如下。可以看出,尽管SSD能够进行随机IO访问,但如果业务允许,最好能够访问顺序IO。这样可以有效降低写入放大倍数,从而减少闪存的P / E时间,最终将增加固态硬盘的使用寿命。

摘要

在日常开发过程中,我们很少关注存储层。一方面,存储品牌进行了各种屏蔽和包装,另一方面,对各种公司的存储系统(关系和非关系)进行了处理。类型)为企业提供了高QPS和低延迟访问。仅在为这些存储系统选择机器资源时才考虑。选择那些配备SSD硬盘的服务器。

根据以上介绍,尽管SSD硬盘是基础硬件,但它也涉及许多软件算法。真正处理硬件的地方只有两个:一个是外部接口协议规范,另一个是闪存。擦除和写入粒子的界面。存储集中,虚拟化和云应用程序方案依赖于磁盘阵列,而磁盘阵列涉及更多算法,包括SmartQoS,SmartPartition,SmartVirtualization,SmartMulti-Tenant等。

该文章首次发表在微信公众号“ jameswhale的技术生活”上。由于精力有限,文章将不时同步到Zhihu平台。存储是一个相对较大的话题,欢迎交流!


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/dianqi/article-314081-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...