块存储性能

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

不同类型块存储的性能和价格有所不同,您可以根据实际的工作负载和应用程序需求选择合适块存储产品,以满足您的存储需求。本文介绍云盘、本地盘和弹性临时盘的性能衡量指标以及性能规格。

说明
  • 不同类型块存储的价格与计费信息,请参见块存储计费

  • 若您想了解不同块存储的特点及应用场景,请参见块存储概述

性能指标

衡量块存储产品的性能指标主要包括IOPS、吞吐量和访问时延。部分块存储产品的性能与容量有关,例如不同性能等级的ESSD云盘需要选择不同容量范围。

  • I/O大小

    I/O大小指的是每次读写操作的数据量,比如4 KiB。其与后续介绍的性能指标IOPS和吞吐量存在运算关系:IOPS * I/O大小 = 吞吐量。因此应用的I/O大小不同,需要关注的性能指标也不一样。

  • IOPS(Input/Output Operations per Second) :每秒能处理的I/O个数,表示块存储处理读写的能力,单位为次/秒。

    如果您部署应用的I/O特征是时延型随机小I/O(例如数据库类应用)需要关注IOPS性能。

    说明

    在数据库应用中,数据的插入、更新、删除操作非常频繁。高IOPS可以确保即使在大量随机读写操作的压力下,系统也能保持高效运行,避免因I/O瓶颈导致的性能下降或延迟增加。

    常用的IOPS指标

    指标

    描述

    数据访问方式

    IOPS

    每秒执行的I/O操作总次数

    对硬盘存储位置的不连续访问和连续访问

    随机读IOPS

    每秒执行的随机读I/O操作的平均次数

    对硬盘存储位置的不连续访问

    随机写IOPS

    每秒执行的随机写I/O操作的平均次数

    顺序读IOPS

    每秒执行的顺序读I/O操作的平均次数

    对硬盘存储位置的连续访问

    顺序写IOPS

    每秒执行的顺序写I/O操作的平均次数

  • 吞吐量(Throughput) :指单位时间内可以成功传输的数据数量,单位为MB/s。

    如果您部署应用的I/O特征是大量顺序读写,大I/O(例如数据库类应用),就需要关注吞吐量。

    说明

    Hadoop等离线计算业务涉及对PB级别的数据进行分析和处理,如果系统吞吐量低,整体处理时间也会非常长,影响业务效率和响应速度。

  • 访问时延(Latency) :块存储处理一个I/O需要的时间,单位为s、ms或者μs。过高的时延会导致应用性能下降或报错。

    如果您的应用对高时延比较敏感,例如数据库应用,需要关注时延。建议您使用ESSD AutoPL云盘、ESSD云盘等低时延产品。

  • 容量(Capacity) :存储空间大小,单位为TiB、GiB、MiB或者KiB。

    块存储容量按照二进制单位计算,表示1024进位的数据大小,例如,1 GiB=1,024 MiB。容量不是衡量块存储产品的性能指标,但不同的容量能达到的性能不同。容量越大,存储设备的数据处理能力越强。相同类型块存储产品的单位容量的I/O性能均一致,但云盘性能随容量增长而线性增长,直至达到该类型块存储的单盘性能上限。

云盘性能

各类型云盘的性能对比如下表所示。

重要
  • 云盘的最终性能除了受到云盘本身规格限制,同时还会受到挂载的实例规格的限制,请参见存储I/O性能

  • SSD云盘、高效云盘和普通云盘属于上一代云盘产品,已在部分地域及可用区逐步停止售卖。建议选用ESSD PL0云盘或ESSD Entry云盘替换高效云盘和普通云盘,选用ESSD AutoPL云盘替换SSD云盘。

性能类别

ESSD系列云盘

上一代云盘

ESSD同城冗余(公测)

ESSD AutoPL

ESSD PL-X(邀测)

ESSD云盘PL3

ESSD云盘PL2

ESSD云盘PL1

ESSD云盘PL0

ESSD Entry

SSD云盘

高效云盘

普通云盘

单盘容量范围(GiB)

10~65,536

1~65,536

40~32,768

1,261~65,536

461~65,536

20~65,536

1~65,536

10~32,768

20~32,768

20~32,768

5~2,000

最大IOPS

5

100

300

100

10

5

1

6,000

25,000

5,000

数百

最大吞吐量(MB/s)

350

4096

12,288

4,000

750

350

180

150

300

140

30~40

单盘IOPS性能计算公式

min{1,800+50*容量, 50,000}

基准性能:max{min{1,800+50*容量,50,000}, 3,000}

预配置性能:

容量(GiB)<=3:不支持设置预配置性能。

容量(GiB)>=4:[1,min{(1,000 IOPS/GiB*容量-基准IOPS),50,000}]

性能突发:实际最终IOPS-基准性能IOPS-预配置性能IOPS

预配置IOPS

min{1,800+50*容量, 1,000,000}

min{1,800+50*容量, 100,000}

min{1,800+50*容量, 50,000}

min{ 1,800+12*容量, 10,000 }

min{1,800+8*容量, 6,000}

min{1,800+30*容量, 25,000}

min{1,800+8*容量, 5,000}

单盘吞吐量性能计算公式(MB/s)

min{120+0.5*容量, 350}

基准性能:max{min{120+0.5*容量,350},125}

预配置性能16 KB*预配置IOPS/1,024

性能突发:实际最终吞吐量-基准性能吞吐量-预配置性能吞吐量

min{4 KB*预配置额外IOPS/1024, 12,288}

min{120+0.5*容量, 4,000}

min{120+0.5*容量, 750}

min{120+0.5*容量, 350}

min{100+0.25*容量, 180}

min{100+0.15*容量, 150}

min{120+0.5*容量, 300}

min{100+0.15*容量, 140}

数据可靠性

99.9999999%

单路随机写平均时延(ms),Block Size=4K

  • 实例和云盘同可用区:<2

  • 实例和云盘跨可用区:<4

0.2

0.03

0.2

0.2

0.2

0.3~0.5

1~3

0.5~2

1~3

5~10

  • 单盘性能计算公式说明:

    • ESSD PL0云盘最大IOPS公式:起步1,800,每GiB增加12,上限为10,000。

    • ESSD PL0云盘最大吞吐量公式:起步100 MB/s,每GiB增加0.25 MB/s,上限为180 MB/s。

  • SSD云盘的性能因数据块大小而异,数据块越小,吞吐量越小,IOPS越高,如下表所示。

    I/O大小(KiB)

    IOPS最大值

    吞吐量(MB/s)

    4

    25,000

    100

    16

    17,200

    260

    32

    9,600

    300

    64

    4,800

    300

  • ESSD AutoPL云盘除基准性能和预配置性能之外,还可以提供性能突发。您可以通过EBS的数据洞察(CloudLens for EBS)实时监控ESSD AutoPL云盘的突发详情,包括Burst时间、Burst数量(即突发IO总量)等。更多信息,请参见云盘分析

本地盘性能

警告

本地盘无法单独创建,其数据可靠性取决于物理机的可靠性,存在单点故障风险,物理机单点故障可能影响多台实例运行。使用本地盘存储数据有丢失数据的风险,请勿在本地盘上存储需要长期保存的业务数据。有关本地盘的详细介绍,您可参看本地盘

NVMe SSD本地盘

  • 大数据实例规格族d3c搭载的NVMe SSD本地盘性能如下表所示。

    指标

    单盘性能

    ecs.d3c.3xlarge

    ecs.d3c.7xlarge

    ecs.d3c.14xlarge

    最大读IOPS

    100,000

    100,000

    200,000

    400,000

    最大读吞吐量

    4 GB/s

    4 GB/s

    8 GB/s

    16 GB/s

    最大写吞吐量

    2 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

  • 本地SSD型实例规格族i4搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    ecs.i4.large

    ecs.i4.xlarge

    ecs.i4.2xlarge

    ecs.i4.4xlarge

    ecs.i4.8xlarge

    ecs.i4.16xlarge

    ecs.i4.32xlarge

    最大读IOPS

    11.25

    22.5

    45

    90

    180

    360

    720

    最大读吞吐量

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    48 GB/s

    最大写吞吐量

    0.375 GB/s

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    说明

    表中指标为最佳性能,推荐您使用最新版本的Linux镜像(该实例规格族仅支持Linux镜像)以尽量获取最佳性能,例如Alibaba Cloud Linux 3

  • 本地SSD型实例规格族i4g、i4r搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    ecs.i4g.4xlargeecs.i4r.4xlarge

    ecs.i4g.8xlargeecs.i4r.8xlarge

    ecs.i4g.16xlargeecs.i4r.16xlarge

    ecs.i4g.32xlargeecs.i4r.32xlarge

    最大读IOPS

    25

    50

    100

    200

    最大读吞吐量

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    最大写吞吐量

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    说明

    表中指标为最佳性能,推荐您使用最新版本的Linux镜像(该实例规格族仅支持Linux镜像)以尽量获取最佳性能,例如Alibaba Cloud Linux 3

  • 本地SSD型实例规格族i3搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    ecs.i3.xlarge

    ecs.i3.2xlarge

    ecs.i3.4xlarge

    ecs.i3.8xlarge

    ecs.i3.13xlarge

    ecs.i3.26xlarge

    最大读IOPS

    25

    50

    100

    200

    300

    600

    最大读吞吐量

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    18 GB/s

    36 GB/s

    最大写吞吐量

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    12 GB/s

    24 GB/s

    说明

    表中指标为最佳性能,推荐您使用最新版本的Linux镜像(该实例规格族仅支持Linux镜像)以尽量获取最佳性能,例如Alibaba Cloud Linux 3

  • 本地SSD型实例规格族i3g搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    ecs.i3g.2xlarge

    ecs.i3g.4xlarge

    ecs.i3g.8xlarge

    ecs.i3g.13xlarge

    ecs.i3g.26xlarge

    最大读IOPS

    12.5

    25

    50

    75

    150

    最大读吞吐量

    0.75 GB/s

    1.5 GB/s

    3 GB/s

    4.5 GB/s

    9 GB/s

    最大写吞吐量

    0.5 GB/s

    1 GB/s

    2 GB/s

    3 GB/s

    6 GB/s

    说明

    表中指标为最佳性能,推荐您使用最新版本的Linux镜像(该实例规格族仅支持Linux镜像)以尽量获取最佳性能,例如Alibaba Cloud Linux 3

  • 本地SSD型实例规格族i2、i2g搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    单盘性能

    综合实例性能

    ecs.i2.xlargeecs.i2g.2xlarge

    其余i2i2g规格

    最大容量

    894 GiB

    1,788 GiB

    8*1,788 GiB

    最大读IOPS

    15

    30

    150

    最大读吞吐量

    1 GB/s

    2 GB/s

    16 GB/s

    最大写吞吐量

    0.5 GB/s

    1 GB/s

    8 GB/s

    访问时延

    微秒级(μs)

    该综合实例性能仅适用于ecs.i2.16xlarge,表示i2规格族中最大规格的本地存储性能。

  • 本地SSD型实例规格族i2ne、i2gne搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    ecs.i2ne.xlargeecs.i2gne.2xlarge

    ecs.i2ne.2xlargeecs.i2gne.4xlarge

    ecs.i2ne.4xlargeecs.i2gne.8xlarge

    ecs.i2ne.8xlargeecs.i2gne.16xlarge

    ecs.i2ne.16xlarge

    最大容量

    894 GiB

    1,788 GiB

    2*1,788 GiB

    4*1,788 GiB

    8*1,788 GiB

    最大读IOPS

    25

    50

    100

    200

    400

    最大读吞吐量

    1.5 GB/s

    3 GB/s

    6 GB/s

    12 GB/s

    24 GB/s

    最大写吞吐量

    1 GB/s

    2 GB/s

    4 GB/s

    8 GB/s

    16 GB/s

    访问时延

    微秒级(μs)

  • 本地SSD型实例规格族i1搭载的NVMe SSD本地盘性能如下表所示。

    NVMe SSD指标

    单盘性能

    综合实例性能

    最大容量

    1,456 GiB

    2,912 GiB

    最大IOPS

    24

    48

    IOPS

    min{165*容量, 240,000}

    2*min{165*容量, 240,000}

    IOPS

    最大读吞吐量

    2 GB/s

    4 GB/s

    读吞吐量

    min{1.4*容量, 2,000} MB/s

    2*min{1.4*容量, 2,000} MB/s

    最大写吞吐量

    1.2 GB/s

    2.4 GB/s

    写吞吐量

    min{0.85*容量, 1,200} MB/s

    2*min{0.85*容量, 1,200} MB/s

    访问时延

    微秒级(μs)

    单盘性能计算公式说明:

    • 以单块NVMe SSD本地盘写IOPS计算公式说明:每GiB165 IOPS,最高24IOPS。

    • 以单块NVMe SSD本地盘写吞吐量计算公式说明:每GiB0.85 MB/s,最高1,200 MB/s。

    该综合实例性能仅适用于ecs.i1.14xlarge,表示i1规格族中最大规格的本地存储性能。

SATA HDD本地盘

SATA HDD本地盘性能如下表所示。

SATA HDD指标

d1、d1ne

d2c

d2s

d3s

单盘性能

综合实例性能

单盘性能

综合实例性能

单盘性能

综合实例性能

单盘性能

综合实例性能

最大容量

5,500 GiB

154,000 GiB

3,700 GiB

44,400 GiB

7,300 GiB

219,000 GiB

11,100 GiB

355,200 GiB

最大吞吐量

190 MB/s

5,320 MB/s

190 MB/s

2,280 MB/s

190 MB/s

5,700 MB/s

260 MB/s

8,320 MB/s

访问时延

毫秒级(ms)

说明

该综合实例性能仅适用于ecs.d1.14xlarge、ecs.d1ne.14xlarge、ecs.d2c.24xlarge、ecs.d2s.20xlarge、ecs.d3s.16xlarge规格,表示各规格族中最大规格的本地存储性能。

弹性临时盘性能

说明

弹性临时盘可由用户自定义选择容量大小,作为临时数据存储使用,有关弹性临时盘的介绍,您可参看弹性临时盘

提供标准和高级两种规格的弹性临时盘,标准版更适合数据量较大、对吞吐量要求较高的场景,高级版更适合容量小但对IOPS要求高的场景。不同类型可达到的性能说明如下表所示:

性能类别

标准版弹性临时盘

高级版弹性临时盘

单盘容量范围(GiB)

64~8,192

64~8,192

单盘最大读IOPS

min{100*容量, 820,000}

min{300*容量, 1,000,000}

单盘最大写IOPS

min{20*容量, 160,000}

min{150*容量, 500,000}

单盘最大读吞吐量(MB/s)

min{0.8*容量, 4,096}

min{1.6*容量, 4,096}

单盘最大写吞吐量(MB/s)

min{0.4*容量, 2,048}

min{1*容量, 2,048}

I/O密度

20

150

I/O密度

100

300

:IO密度=IOPS/云盘容量,单位是IOPS/GiB,表示每GiB可达到的IOPS能力。

:min{A,B},表示返回AB两个数值中的较小值。

测试块存储性能

您可以参考如下方法测试块存储的性能:

云盘读写慢/IO高的排查思路

您可以通过ECS控制台、EBS控制台或云监控控制台查看云盘的各项监控信息,判断当前的云盘性能是否满足业务需求或达到性能瓶颈。更多信息,请参见查看云盘监控信息

  1. 确认云盘的计费方式是否为按量计费。如果是按量付费,当账户处于欠费状态时,磁盘IO速度会被限制,账号充值后即可恢复。

    注意:欠费15天后未充值续费云盘会自动释放,其中的数据无法找回,请务必注意。

  2. Linux系统可参考如何查看Linux系统I/O负载情况?,排查IOPS占用较高的程序。

  3. 导入数据时,客户端和服务端的性能都会影响读写速度。

  4. 可以在服务器中使用atop工具监控Linux系统指标,该工具可以持续监控服务器内各项资源使用情况,资源使用信息默认会记录在/var/log/atop目录中,后期可以通过atop日志协助进一步定位问题点。

  5. 若云盘性能不满足业务,您也可以尝试提升云盘性能,请参考如何提升云盘性能

如何提升云盘性能

如果当前云盘性能不满足业务需求,您可以尝试以下几种方法来提升云盘性能:

重要

云盘的最终性能除了受到云盘本身规格限制,同时还会受到挂载的实例规格的限制,因此当实例规格的云盘IOPS和带宽低于云盘本身性能上限时,单独提升云盘性能是无法改变云盘最终性能上限的,需要升级实例规格来提高,实例规格对于云盘的限制,您可参考实例规格族

应用场景

提升性能方法

当云盘类型(如SSD云盘)无法满足业务增长带来的更高IOPS或吞吐量需求时,可以选择变更为性能更高的云盘类型,如ESSD PL1,以获得更高的IOPS和更好的响应时间。这种方法适合那些对存储性能有严格要求,且业务规模或访问量有显著增长的应用。

变更云盘类型

如果您使用的是ESSD云盘,您可以根据业务负载的变化,调整ESSD云盘的性能级别。

修改ESSD云盘性能级别

如果您使用的是ESSD AutoPL云盘,可以设置预配置性能或开启性能突发,以提升云盘的性能。

修改ESSD AutoPL云盘性能配置

当您的业务不仅需要更高的IOPS,同时存储空间也不足,建议扩容云盘。对于某些类型的云盘(如ESSD PL1),随着容量的增加,基础IOPS也会相应提升,从而增强云盘的处理能力、提升云盘性能。适用于数据量持续增长,且对存储容量和IOPS都有较高要求的应用。例如ESSD PL1云盘的IOPS=min{1,800+50*容量, 50,000},40 GiBESSD PL1云盘的IOPS3,800,扩容至100 GiB时,IOPS6,800。

扩容云盘

当您需要更灵活地管理和优化存储资源分配并希望提升云盘性能时,您可以选择LVM。通过将数据分布在多个逻辑卷上,可以实现读写操作的并行处理,从而提升云盘性能,特别适合于多线程应用、数据库等需要高并发访问的场景。

创建逻辑卷

当您需要在保证数据冗余的同时提升IOPS和吞吐量,您可以选择创建RAID阵列。例如,使用RAID 0可以提高读写速度,而RAID 1RAID 10可以在提高性能的同时提供数据冗余。

创建RAID阵列