一文了解固态硬盘(SSD)
固态硬盘(SSD), Solid State Disk,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,主要由两部分组成。(注:本文主要介绍主流产品)
1 主控单元:用来操作存储单元,并驻留一定固件,带有操作系统的部件。
2 存储阵列:闪存芯片(NAND FLASH),单片FLASH芯片有64GB/128GB/256GB,也有少量SSD存储芯片采用DRAM芯片制作而成。
SSD的外观可以被制作成多种模样,例如:笔记本硬盘、微硬盘、存储卡、U盘等样式。这种SSD固态硬盘最大的优点就是可以移动,而且数据保护不受电源控制,能适应于各种环境,适合于个人用户使用。
常见的固态硬盘内部如下图所示,主要由控制器、电源、NAND FLASH阵列、对外连接器组成。
对外接口主要保护以下:IDE、SATA、mSATA、PCIE、M.2,IDE接口的固态硬盘由于采用并行数据传输方式,数据线较多,且常常速度较慢已经逐步被淘汰;SATA2.0支持最大速率3Gbps,这类接口由于最大支持的速度有限,无法完全发挥出SSD的性能。SATA3.0支持最大速率达6Gbps(Gb per second)。而其最大的优点就是目前市场非常成熟,市场上很多硬盘都是这种接口。
m SATA 也称为mini-SATA,适用于对尺寸要求较高的场合,m SATA是一种小型化的SATA接口。
PCI-E接口也是最初出现的一种接口,开始主要应用于企业级SSD及其他数据传输场合,随着SATA接口速率瓶颈的到来, PCI-E硬盘才逐步开始在高端消费市场流行起来。
M.2原名是NGFF接口,这是为超级笔记本量身定做的新一代接口标准,主要用来取代mSATA接口。不管是从非常小巧的规格尺寸上讲,还是说从传输性能上讲,这种接口要比mSATA接口好很多。M.2可以同时支持SATA和PCIE接口,如今的M.2接口可支持PCI-E 3.0 x4通道,理论带宽达到了32Gbps,且该接口支持新的NVME标准,进一步提升了固态硬盘的数据传输性能。
NAND FLASH是如何存储信息的?
固态硬盘通常包含多片FLASH芯片,每一片FLASH内部可分为多个Plane,每个Plane又可分为多个Block。 通常使用的是2D的NAND FLASH,目前最新研制的3D NAND FLASH已经面试,采用立体堆叠的方式可以使得单片NAND FLASH的容量大大提升。
Block就是我们通常说的块,对某个块进行数据读写的操作。而每个Block上,又可分为多个Page,绝大多数的固态硬盘的单个Page由4Kb的数据区+128b的OOB组成。
OOB(out of band,带外数据)在 NAND Flash 中是附加数据空间,用于存放额外的 ECC 纠错码和元数据。
在数据读写的过程中,Page是最小单位,即写数据和删除数据时只能对整个Page进行操作。所以Nand Flash在硬件设计时候,对于每一片(Plane),都有一个对应的区域专门用于存放缓存数据,将要写入到物理存储单元中去的或者刚从存储单元中读取出来的数据放入这个数据缓存区,本质上就是一个缓存buffer,也叫做page register 。固态电子盘在读写数据时的数据流向如下。
存储颗粒是什么?
存储颗粒是存储数据的最小单元,目前主要有三种:SLC、MLC和TLC。
颗粒都是有寿命的,即固态硬盘是有寿命的,在达到固态硬盘寿命以后,FLASH 内部的坏块数量将以指数形式上升,很快使得硬盘不能使用。而直接影响寿命的因素就是存储颗粒的重复擦写次数。
其中SLC为30000~100000次;MLC为:3000~5000次;TLC为:500~1000次。市面上主流固态硬盘均为TLC 颗粒,容量大,价格低。在可靠性要求较高的场合可使用MLC颗粒,SLC通常应用于国防军工等高可靠性场合,通常单片64GB的SLC颗粒的FLASH价格可达几千元。
计算机中所有的信息都会回归到0和1上,因此只要能用来区分0和1的物体都可以用来记录数据,例如原来用绳子打结来计数的方式。
写入数据时,在CONTROL施加电压,电子由SOURCE流经DRAIN时就会有部分电子跃迁至FLOATING层。
擦除时,在底下的半导体施加电压,即可释放掉悬浮层中的电子,在没有外来电场的作用下,悬浮层中的电子由于上下两个SiO2层的作用使其无法逃离,电荷/数据可以保存十多年之久。
这种单个颗粒仅有高或者低两种状态的颗粒就是SLC的工作模式,由于在不断擦写的过程中,电子需要不断的穿越中间的SiO2衬底,会逐渐破坏其隔离电子通过的性能,直到颗粒彻底损坏。
SLC单个颗粒有两种电平,可以保存1bit数据,MLC可以保存2bit数据,TLC可以保存3bit数据,QLC可以保存4bit的数据,但是由于其寿命仅有一百余次,目前市面上很少见到这种产品出现。
固态硬盘的寿命保护机制:擦写次数不够,容量来凑。
1容量冗余操作:为什么我们买的512GB的硬盘到手只有四百多GB,除了部分用来存放SSD本身的固件外,还有一大部分用来备用,当某个Page颗粒坏掉以后,将其标记为不可用以后,用备用的区域来替代。
2 写数据均衡操作:你重复的写4KB数据到一块TLC颗粒的固态硬盘中1000次,盘会坏掉吗?答案当然是否定的,控制器会自动分配操作FLASH单元的物理地址,会尽量避免长时间对同一个BLOCK进行重复读写,以免影响寿命。
还有很多其他的保护操作,欢迎大家留言一起交流、讨论
SQL AND & OR 运算符
AND & OR 运算符用于基于一个以上的条件对记录进行过滤。
SQL AND & OR 运算符
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
演示数据库
在这里我们将使用 RUNOOB 样本数据库。
下面是选自 "Websites" 表的数据:
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
+----+--------------+---------------------------+-------+---------+
AND 运算符实例
下面的 SQL 语句从 "Websites" 表中选取国家为 "CN" 且alexa排名大于 "50" 的所有网站:
实例
SELECT * FROMWebsitesWHEREcountry='CN'ANDalexa > 50;
执行输出结果:
OR 运算符实例
下面的 SQL 语句从 "Websites" 表中选取国家为 "USA" 或者 "CN" 的所有客户:
实例
SELECT * FROMWebsitesWHEREcountry='USA'ORcountry='CN';
执行输出结果:
结合 AND & OR
您也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式)。
下面的 SQL 语句从 "Websites" 表中选取 alexa 排名大于 "15" 且国家为 "CN" 或 "USA" 的所有网站:
实例
SELECT * FROMWebsitesWHEREalexa > 15AND(country='CN'ORcountry='USA');
执行输出结果:
如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!
相关问答
Python有多难?可以自学吗?100天,python从新手变成大师,我是如何做到的?看到很多回答,逻辑都不够清晰,看完之后云里雾里,这还怎么学?这个python学习项目从上线以来,收到了8W+星标...种一...
如何学习SQL语言?一、数据库连接1、通过命令行连接数据库[root@localhost~]#mysql-uroot-pEnterpassword:输入以上命令,回车后输入密码,回车,出现mysql...
路由器的IGMP模式是什么?有什么作用?IGMP(互联网组管理协议)是一种互联网协议,提供这样一种方法,使得互联网上的主机向临近路由器报告它的广播组成员。广播使得互联网上的一个主机向网上确认对...
本人大一,零基础想自学Java,应该买什么书呢?求推荐,谢谢?如何自学Java首先要清楚了解自己适不适合学习,测试方法有两个:一个是自己自学,也就是你现在打算走的路子,第一步肯定是先从基础学起,基础书籍,基础视频教...2...
电脑开机要按F1才可以进入,怎么样设置开机不检测鼠标键盘?这种情况一般是开机检测软驱,以及电脑突然断电、死机造成BIOS设置错误导致。1、开机按DEL键进入CMOS,进入后在”StandardCMOSFeatrues“目录下按回车键(Ent...
有哪些在线编程练习网站?4、CodecademyCodecademy包含各种在线编程练习和课程视频。不得不说,codecademy课程质量很高,有很多外国程序员喜欢从这里入门。5、KhanAcademyKhanA...
友们,有谁能回答一下吗!!奉贤西渡社区正规公共英语三级线...[回答]Hello,it'sagreatpleasuretointroducemyself.MynameisXXX,iamfromthesecondgradeofXiangyiFurongMiddle...