本文档介绍了 Google Cloud Hyperdisk 性能的运作方式,以便您了解 Hyperdisk 卷的性能,并为您的工作负载选择合适的 Hyperdisk 类型。
Hyperdisk 是 Google Cloud推荐的耐用型块存储选项。如需详细了解 Hyperdisk,请参阅 Hyperdisk 简介。
如需了解详细的性能限制,请参阅 Hyperdisk 性能限制。
如需查看 Hyperdisk 卷的当前或过去的性能,请参阅查看磁盘性能指标。
术语和单位
本文档中所述的 Hyperdisk 性能是指 IOPS 和吞吐量。
- IOPSIOPS 表示每秒输入/输出操作数。这是卷在一秒内执行或可执行的各项读写操作数。
- 吞吐量是指每秒从卷读取或写入卷的字节数。吞吐量以 MiB/s 为单位计量。
大小计量以 GiB 或 TiB 为单位。
机器类型术语
术语“计算实例”是指虚拟机 (VM) 实例或裸金属实例。计算实例的机器类型是其属性(例如机器系列和 vCPU 数量)的特定组合。
在本文档中,机器类型采用以下格式表示:M-*-N
,其中:
-
M
是机器系列,例如C3
-
*
表示所有内存和 CPU 配置,例如standard
或highcpu
N
是 vCPU、CPU 或 GPU 标识的数量,例如,对于具有 22 个 vCPU 的实例,该值为 22;对于具有 8 个 GPU 的实例,该值为8g
- 裸金属机器类型 (
*-metal
) - 随附挂接了本地 SSD 磁盘的机器类型(
*-lssd
、*-standardlssd
或*-highlssd
)。
例如,c3-*-176
是指具有 176 个 vCPU 的所有 C3 机器类型,即 c3-standard-176
、c3-highcpu-176
、c3-highmem-176
和 c3-standard-176-lssd
。如需了解详情,请参阅 Compute Engine 术语。
Hyperdisk 性能摘要
将 Hyperdisk 卷挂接到实例时,可实现的性能上限取决于具体场景,如下表所述。
Hyperdisk 卷数量 |
性能上限 |
---|---|
1 | 卷性能取以下两者中较小者:
|
2 种或更多相同 Hyperdisk 类型 | 所有卷的总性能取以下两者中较小者:
|
2 种或更多 Hyperdisk 类型 | 所有卷的总性能取以下两者中较小者:
|
如需了解按 Hyperdisk 类型的限制,请参阅按 Hyperdisk 类型的性能限制。
如需了解按机器类型的限制,请参阅按机器类型的性能限制。
关于 Hyperdisk 的预配性能
您可以为 Hyperdisk 卷指定目标性能水平。您指定或预配的 IOPS 或吞吐量值称为预配性能。
您可以在创建卷时预配卷的性能。您还可以在使用卷时提高或降低性能,而无需增加卷的大小。
预配性能并非保证的性能水平。而是您希望在高峰使用时段内卷需要达到的目标性能水平。实际性能取决于使用该卷的实例的限制以及其他一些因素。
默认性能水平
为 Hyperdisk 卷预配性能水平是可选的。如果您未指定值(例如,由于您不确定工作负载需要多少 IOPS 或吞吐量),Compute Engine 会使用默认值创建卷。您稍后可以增加或减少该值。默认值因 Hyperdisk 类型而异,并在 Hyperdisk Balanced、Hyperdisk Balanced High Availability、Hyperdisk Extreme、Hyperdisk Throughput 或 Hyperdisk ML 的默认 IOPS 和吞吐量值部分中列出。
预配性能的限制
您可以预配的性能上限取决于 Hyperdisk 类型和卷大小。
Hyperdisk 类型的限制
每种 Hyperdisk 类型都具有性能水平上限,您可以进行预配。某些 Hyperdisk 类型可让您预配 IOPS 或吞吐量,或同时预配两者。如果您无法预配吞吐量,则卷的吞吐量取决于预配的 IOPS。同样,如果您无法预配 IOPS,则卷的 IOPS 取决于您预配的吞吐量。
例如,您可以为 Hyperdisk ML 卷预配吞吐量,但不能预配 IOPS。Hyperdisk ML 的 IOPS 与吞吐量比率为每 MiB/s 的预配吞吐量 16 IOPS。因此,如果您创建的 Hyperdisk ML 卷的吞吐量为 100,000 MiB/s,则该卷的 IOPS 会预配 1,600,000 IOPS。
基于大小的限制
您可以预配的性能上限会随着卷的大小而变化。例如,对于 10 TiB 的 Hyperdisk Balanced 卷,您可以预配 3,000 到 160,000 IOPS,但对于 50 GiB 的卷,您可以预配 3,000 到 25,000 IOPS。
如需详细了解每种 Hyperdisk 类型的基于大小的限制,请参阅Hyperdisk Balanced、Hyperdisk Balanced High Availability、Hyperdisk Extreme、Hyperdisk Throughput 和 Hyperdisk ML 页面上的大小和性能限制部分。
下表列出了您可以为每种 Hyperdisk 类型预配的性能上限。
Hyperdisk 类型 | 每个卷的可预配性能上限 | 可自定义吞吐量 | 可自定义 IOPS |
---|---|---|---|
平衡 Hyperdisk | 160,000 IOPS 2,400 MiB/s |
是 | 是 |
Hyperdisk Balanced High Availability | 100,000 IOPS 1,200 MiB/s |
是 | 是 |
Hyperdisk Extreme | 350,000 IOPS | 否;每 1,000 IOPS 250 MiB/s,最高 5,000 MiB/s | 是 |
Hyperdisk ML | 1,200,000 MiB/s | 是 | 否;每 MiB/s 吞吐量 16 IOPS,最高 19,200,000 IOPS |
Hyperdisk Throughput | 2,400 MiB/s | 是 | 否;每 MiB/s 吞吐量 4 IOPS,最高 9,600 IOPS。 |
稳定状态性能
对于对性能波动敏感的工作负载,请考虑使用可提供稳定状态性能的机器系列。稳定状态性能限制是指实例在所有已挂接卷上可以维持的性能水平。相比之下,性能水平上限是指实例可以达到的最高性能水平。
稳定状态性能限制不构成服务等级协议 (SLA)。
为了让 Hyperdisk 卷达到特定的稳定状态性能限制,其预配性能必须等于或大于稳定状态限制。
稳定状态性能限制在挂接到实例的所有磁盘之间共享。
提供稳定状态性能的机器系列
以下机器系列可提供稳定状态性能:
配置工作负载以达到预配性能
Hyperdisk 卷的实际性能(即挂接到实例时观察到的性能)不能超过以下限制:
- 卷的预配性能
- 实例特有的性能限制,包括 Hyperdisk 类型的特定限制
- 对于 Hyperdisk Balanced 卷和 Hyperdisk Balanced High Availability卷,基准性能的并发消耗限制
因此,为确保卷可以达到其预配性能,请考虑以下因素:
选择支持卷针对 Hyperdisk 类型的预配性能的机器类型。查看每种 Hyperdisk 类型的实例特有性能限制中的指导。
如果您想在实例中使用不同的 Hyperdisk 类型,请查看相应机器类型的性能上限中的信息。
如果您的项目在同一可用区中拥有超过 150 个 Hyperdisk Balanced 和 Hyperdisk Balanced High Availability卷,请查看基准性能的并发消耗限制中的信息。
虽然 I/O 大小和应用设计等因素并非性能限制,但也会影响性能。如需详细了解这些因素,请参阅影响性能的工作负载特有因素。
实例性能限制如何影响 Hyperdisk 性能
每个计算实例都具有以下性能限制,具体取决于其机器类型:
- Hyperdisk 类型的性能限制
- 实例的总体性能限制
每项限制都适用于特定情况。
每种 Hyperdisk 类型的实例性能限制
每个实例对您挂接到实例的所有指定类型的 Hyperdisk 卷都有性能限制。
此限制适用的情况:当您将一个或多个同一类型的 Hyperdisk 卷挂接到实例时。为了让每个卷达到其预配性能,实例性能限制必须大于所有卷的预配性能总和。否则,卷的性能不得超过实例的性能限制。
示例
假设您有一个 Hyperdisk Throughput 卷 hdt-disk-1
,其预配吞吐量为 600 MiB/s,并且您想将该卷挂接到 c3-*-4
实例。
c3-*-4
实例具有以下吞吐量限制:
Hyperdisk 类型 | 最大吞吐量 (MiB/s) |
---|---|
平衡 Hyperdisk | 400 |
Hyperdisk Extreme | 不支持 |
Hyperdisk Throughput | 240 |
Hyperdisk Balanced High Availability | 400 |
Hyperdisk ML | 400 |
如果您将 hdt-disk-1
挂接到虚拟机,该卷的实际性能不得超过 240 MiB/s。如果您改为挂接 Hyperdisk Balanced 卷,则 Hyperdisk Balanced 卷的性能不得超过 400 MiB/s。
如果您将 2 个 Hyperdisk Balanced 卷挂接到虚拟机,则这两个 Hyperdisk Balanced 卷的总性能仍不能超过 400 MiB/s。无论这两个卷的预配性能如何都是如此。
按 Hyperdisk 类型的性能限制中列出了每个 Hyperdisk 按机器类型的性能限制。
实例的总体性能限制
每个实例都有一个可达到的总体性能限制。此限制在挂接到实例的所有卷之间共享。
此限制适用的情况:当您将多种类型的 Hyperdisk 挂接到实例时。无论每个卷的预配性能如何,所有卷的实际性能总和都不能超过实例的性能限制。
如果实例支持 Persistent Disk,则所有挂接的 Persistent Disk 卷也共享相同的限制。
示例
假设您有一个 c3-*-22
实例,其最大吞吐量为 1,800 MiB/s。
您需要将以下资源附加到虚拟机:
- 2 个 Hyperdisk Balanced 卷,每个卷的预配吞吐量为 900 MiB/s。
- 1 个 Hyperdisk Throughput 卷,预配吞吐量为 500 MiB/s
所有卷的总性能不得超过 1,800 MiB/s。
如需查看限制列表,请参阅按机器类型的性能限制。
基准性能的并发消耗限制
Compute Engine 会限制同一可用区或同一存储池中的项目 Hyperdisk Balanced High Availability卷和 Hyperdisk Balanced 卷可同时消耗的免费性能。此限制称为基准性能的并发用量限制。
此限制适用的情况:此限制适用于在同一可用区中拥有超过 150 个 Hyperdisk Balanced 和 Hyperdisk Balanced High Availability卷的项目。如果 Hyperdisk Balanced 存储池未使用高级性能预配,此限制也适用于该存储池中的卷。
Hyperdisk Balanced 卷和 Hyperdisk Balanced High Availability卷的预配性能由付费性能和免费性能组成。您预配的前 3,000 IOPS 和 140 MiB/s 吞吐量是免费的,称为基准性能。超出 3,000 IOPS 或 140 MiB/s 的预配性能被视为可结算性能。例如,如果卷预配了 4,000 IOPS,则可计费 IOPS 为 1,000。
同一项目和同一可用区内的 Hyperdisk Balanced High Availability卷和 Hyperdisk Balanced 卷具有以下基准性能并发消耗限制:
- 基准 IOPS 的并发消耗上限:50 万 IOPS
- 基准吞吐量的并发消耗限制:50 GiB/s
基准性能的并发消耗限额如何运作
在项目中,您可以在同一可用区的所有卷中预配超过 50 万 IOPS 和 50 GiB/s 的吞吐量。不过,这些卷同时消耗的 IOPS 不得超过 50 万,吞吐量不得超过 50 GiB/s。
此外,总并发性能不得超过您预配的总基准性能。例如,如果您在同一可用区和项目内预配了总共 100,000 个基准 IOPS,则基准性能的并发消耗上限为 100,000 IOPS。
同一项目和可用区内的总消耗量限制
项目中的每个可用区都有一个并发消耗总量限制,即所有 Hyperdisk Balanced 和 Hyperdisk Balanced High Availability磁盘可同时使用的可结算性能和基准性能总和。
对于项目中的每个可用区,并发消耗总量限制是以下值的总和:
- 相应可用区中所有 Hyperdisk Balanced 和 Hyperdisk Balanced High Availability卷的预配可结算性能
- 可用区针对基准性能的并发消耗限制,即以下两者中较小的值:
- 同一可用区中所有卷的预配基准 IOPS 或吞吐量之和
- 50 万 IOPS 或 50 GiB/s 的吞吐量
提供足够的性能来满足并发消耗需求
为确保您为工作负载预配了足够的性能,请比较以下值:
- 您预计卷同时消耗的总性能
- 项目中位于同一可用区的 Hyperdisk Balanced 和 Hyperdisk Balanced High Availability卷的总并发消耗量上限
如果您预计卷消耗的总性能超过并发消耗总限制,则除非您预配更多可结算性能,否则 Compute Engine 将限制卷的性能。
请参考以下示例。
示例 1
您的项目在可用区 A 中有 10 个 Hyperdisk Balanced 卷,每个卷预配了 100,000 IOPS,总共预配了 1,000,000 IOPS。您预计卷将同时消耗 80 万 IOPS。
如需确定并发消耗总量限制,请将预配的可结算 IOPS 总数与项目的基准性能并发消耗限制相加。
- 总预配的可结算 IOPS:97 万([10 万 - 3,000] * 10 个磁盘)
- 基准性能的并发消耗上限:30,000 IOPS,因为它是以下两者中较小的值:
- 预配的基准 IOPS 总数:30,000 (3,000 * 10)
- 500,000 IOPS
可用区 A 的总并发可消耗性能为 1,000,000 IOPS(30,000 + 970,000)。由于预配的基准 IOPS 总数小于 50 万 IOPS,因此卷的性能不会受到限制。
示例 2
您的项目在可用区 C 中有 500 个Hyperdisk Balanced High Availability 卷,每个卷预配了 3,500 IOPS,总共预配了 1,750,000 IOPS。您预计这些卷将同时消耗 1,000,000 IOPS。
如需确定并发消耗总限额,请将预配的可结算 IOPS 总数与项目的基准性能并发消耗限额相加。
- 总预配可结算 IOPS 为 250,000 ((3,500 - 3,000) * 500 个磁盘)
- 基准性能的并发消耗上限为 500,000 IOPS,因为它是以下两者中较小的值:
- 预配的基准 IOPS 总数:1,500,000(3,000 * 500)
- 500,000 IOPS
对于可用区 C,可同时消耗的总性能为 750,000 IOPS(250,000 + 500,000)。卷同时消耗基准 IOPS 的上限为 500,000 IOPS。
如需同时消耗 1,000,000 IOPS,请为卷预配更多可计费的性能。
影响性能的工作负载特有因素
本部分介绍了影响 Hyperdisk 卷可实现的吞吐量和 IOPS 限制的工作负载特有因素。如需详细了解如何提高性能,请参阅优化 Hyperdisk 性能。
为了达到 Hyperdisk 卷提供的 IOPS 和吞吐量级别上限,您必须考虑以下工作负载参数:
-
I/O 大小:您必须使用特定的块大小才能达到 IOPS 和吞吐量限制,如下所示:
- IOPS 上限要求 I/O 大小为 4 KB。
- 吞吐量上限要求 I/O 大小至少为 256 KB。
- 队列长度:队列长度是卷的待处理请求数。为了达到性能上限,您必须根据工作负载的 I/O 大小、IOPS 和延迟时间敏感程度来调整队列长度。最佳队列长度因每个工作负载而异,但通常应大于 256。
- 挂接的卷数量:为实现最佳性能,我们建议将 8 个或更少的卷挂接到单个实例。