缩水的硬盘——容量背后的秘密

大部分人用硬盘的时候都可能会留意到这样一个怪事:电脑显示的容量明显小于标称的容量。容量到底被谁偷走了?

其实是硬盘生产厂家的行业潜规则:使用和电脑不一样的进制来计算容量。我们知道计算机都是使用二进制计算大小,比如1GB指的是1024^3字节,而硬盘厂商欺负消费者不懂二进制,使用了1000^3,结果两者就差了整整7%!

如下表,显示不同容量下的缩水比例,可见在同一单位下,缩水比例不变,从MB到GB、TB,缩水比例升高,TB时达到了9%,将近十分之一。

标称容量
实际容量
差值
缩水比例

512 MB
488 MB
24 MB

5%

64 GB
60 GB
4 G[……]

阅读全文

分层存储大揭秘

Horison公司2012年出了个分层存储的报告Tiered Storage Takes Center Stage,讲述分层存储的意义和方法,本文简单介绍一下。

 

如果要存储100TB数据,选择纯用硬盘的2层分层存储,价格是76.5万美金,而如果引入磁带并采用三层分层存储,价格就是35.9万美金,降了一半!所以分层存储对企业太重要了。

 

层次划分

 

传统的分层存储是3层:高性能FC磁盘阵列、中段SAS磁盘阵列、磁带存储,但是自从出现了SSD之后,分层存储的架构发生了巨大变化,最上面一层从过去的高速机械硬盘阵列变成了SSD层,所以SSD成了0层。

 

下图显示了4层分层存储的分类,可见从0[……]

阅读全文

SSD数据完整性技术介绍

闪存(Flash)的一个特性就是,随着闪存的使用以及数据存储时间的变长,存储在闪存里面的数据容易发生比特翻转,出现随机性错误。这个问题随着闪存制程的变小越发严重。因此,使用闪存作为存储介质的SSD,需要采用一些数据完整性的技术来确保用户数据可靠不丢失。

  • ECC纠错

SSD控制器上面都有ECC纠错模块,有些闪存内部也集成了ECC纠错模块。常用闪存ECC纠错算法有BCH(Bose,Ray-Chaudhuri与Hocquenghem三位大神名字首字母)和LDPC(Low Density Parity Check Code)等。目前市面上很多SSD控制器上采用的是BCH,但LDPC正成为趋势 。[……]

阅读全文

三星开始量产NVME版SM951固态硬盘

三星去年7月份发布了命名为SM951的固态硬盘,当时号称支持NVMe协议,但在今年1月份正式发布的SM951还是传统的AHCI,令人有点失望。时隔三个月,三星给我们带来了好消息:NVMe版本的SM951固态硬盘已经进入量产

跟AHCI版本一样,NVMe版本的固态硬盘也是使用4通道PCIe3.0,但在协议上,由于没有队列限制,协议开销更小,因此在性能上理所当然的要比AHCI好。三星官方给出的性能参数是:

  • 顺序读写速度 2260MB/s和1600MB/s (AHCI版本: 2150MB/s和1550MB/s)
  • 随机读速度300K IOPS (AHCI版本:130K IOPS)

顺序[……]

阅读全文

码农必备:SSD编程秘籍29条

 

荷兰阿姆斯特丹的一个码农Emmanuel Goossaert写了一系列文章,介绍程序员为SSD编程的秘籍。也有中文翻译,本文介绍其中的要点总结。

 

基础

 

1. 存储介质

 

SSD的基础是NAND Flash芯片,一个物理单元(cell)里面可以放1个,2个,3个bits数据,分别叫做SLC(single level cell, SLC),MLC(multiple level cell, MLC),TLC(triple-level cell, TLC)。它们的特性如下图:

2. 写的次数有寿命限制

 

NAND Flash里[……]

阅读全文