你以为知道IOPS就是大神?那IOPS/GB呢?

  • A+
所属分类:Linux

大到电脑容量、内存,小到手机存储,基本上都知道GB这个容量单位,稍微对存储有了解的也知道IOPS (Input/Output Operations Per Second),即每秒进行读写操作的次数,该数值的大小和性能相关。

那SSD的IOPS/GB你又知道吗?

我开始也没听过这个词,直到无意中看到去年闪存峰会里展示的一张图:

这张图提到因为IOPS/GB的要求,SATA SSD最多也只能做到960GB,因为SATA接口的限制,容量一旦超过960GB,IOPS/GB就会低于100 IOPS/GB的要求。(看到这个说法的时候,一脸懵bi)

相应的,PCIe NVMe SSD在满足100 IOPS/GB要求的情况下,能够支持的容量要大的多。

这个很好理解,因为PCIe总线的吞吐量要比SATA大很多。令人好奇的是IOPS/GB这个概念,到底是个啥呢?于是我决定一探究竟。

原来,这个概念最早被提出来是为了运行一个特定的应用或服务时,到底是买SSD还是HDD。

一个应用,无非从两个方面考虑, 需要多少空间(GB),需要多少性能(IOPS)。

在空间上的花费 = 需要的容量(GB) X 每GB的价格

在性能上的花费 = 需要的IOPS X 每IOPS的价格

因为HDD每GB的价格比SSD低很多,而SSD每IOPS的价格又比HDD低很多,所以比较的关键点在于:运行这个应用,SSD在容量上的花费,和HDD在IOPS上的花费。

如果SSD在容量上的花费 < HDD在IOPS上的花费,就买SSD,反之就买HDD。

将这个公式细化:

需要的容量(SSD)X 每GB的价格 < 需要的IOPS X 每IOPS的价格

再变化一下:

到这里,终于看到IOPS/GB了,那这个参数是什么意思呢?

举个栗子,比如每GB的价格(SSD)是2元,而每IOPS的价格(HDD)也是2元,那么如果运行这个应用会产生>1 IOPS/GB的值(每GB的价格(SSD)/每IOPS的价格(HDD)=2/2=1) ,即SSD在容量上的花费<HDD在性能(IOPS)上的花费,因此选择SSD。

为了对IOPS/GB有更直观的认识,再举个例子:Outlook 的IOPS/GB是4,Chrome浏览器也是 4 IOPS/GB。

结合上图,基本上选择SSD更加有优势,除非你只用作超大容量的存储且极少进行操作,因此在预算允许的条件下,选择120GB~240GB的SSD用户体验最好。

avatar

发表评论

您必须登录才能发表评论!