Visão geral do desempenho do Google Cloud Hyperdisk

Este documento explica como funciona o desempenho do Google Cloud Hyperdisk para que você entenda o desempenho dos volumes do Hyperdisk e selecione o tipo certo para sua carga de trabalho.

O Hyperdisk é a opção recomendada para armazenamento em blocos durável do Google Cloud. Para saber mais sobre o Hyperdisk, consulte Sobre o Hyperdisk.

Para conferir limites detalhados de desempenho, consulte Limites de desempenho do Hyperdisk.

Para analisar o desempenho atual ou anterior de um volume do Hyperdisk, consulte Analisar métricas de desempenho do disco.

Terminologia e unidades

O desempenho do Hyperdisk, conforme discutido neste documento, tem relação com IOPS e capacidade de processamento.

  • IOPS significa operações de entrada/saída por segundo. É o número de leituras e gravações individuais que o volume realiza ou pode realizar em um segundo.
  • Capacidade de processamento significa quantos bytes podem ser lidos ou gravados em um volume por segundo. Essa medição é feita em MiB/s.

As medições de tamanho estão em GiB ou TiB.

Terminologia de tipo de máquina

O termo instância de computação se refere a uma instância de máquina virtual (VM) ou bare metal. O tipo de máquina de uma instância de computação é a combinação específica das propriedades dela, como a série da máquina e o número de vCPUs.

Neste documento, os tipos de máquina são indicados neste formato: M-*-N, em que:

  • M é a série da máquina, como C3.
  • * representa todas as configurações de memória e CPU, como standard ou highcpu.
  • N é o número de vCPUs, CPUs ou a designação da GPU, como 22 para uma instância com 22 vCPUs ou 8g para uma instância com oito GPUs.
Esse formato inclui os seguintes tipos de máquina, quando disponíveis:
  • Tipos de máquina bare metal (*-metal).
  • Tipos de máquina com discos SSD locais anexados (*-lssd, *-standardlssd ou *-highlssd).

Por exemplo, c3-*-176 se refere a todos os tipos de máquinas C3 com 176 vCPUs, ou seja, c3-standard-176, c3-highcpu-176, c3-highmem-176 e c3-standard-176-lssd. Saiba mais em Terminologia do Compute Engine.

Resumo do desempenho do Hyperdisk

Ao anexar volumes do Hyperdisk a uma instância, o desempenho máximo possível depende do cenário, conforme descrito na tabela a seguir.

Número de volumes do Hyperdisk
Desempenho máximo
1 O desempenho do volume é o menor valor entre:
  • O desempenho provisionado do volume.
  • O limite de desempenho do tipo de máquina do Hyperdisk.
Dois ou mais Hyperdisks do mesmo tipo O desempenho total de todos os volumes é o menor valor entre:
  • A soma do desempenho provisionado de cada volume.
  • O limite de desempenho do tipo de máquina do Hyperdisk.
Dois ou mais tipos do Hyperdisk O desempenho total de todos os volumes é o menor valor entre:
  • A soma do desempenho provisionado de cada volume.
  • Os limites de desempenho do tipo de máquina da instância.

Para conferir os limites por tipo do Hyperdisk, consulte Limites de desempenho por tipo do Hyperdisk.

Para conferir os limites por tipo de máquina, consulte Limites de desempenho por tipo de máquina.

Sobre o desempenho provisionado do Hyperdisk

É possível especificar um nível de desempenho pretendido para um volume do Hyperdisk. O valor de IOPS ou capacidade de processamento especificado ou provisionado é chamado de desempenho provisionado.

É possível provisionar o desempenho de um volume durante a criação dele. Também é possível aumentar ou diminuir o desempenho enquanto o volume está em uso sem precisar aumentar o tamanho dele.

O desempenho provisionado não é um nível garantido. Em vez disso, ele consiste no nível de desempenho pretendido para o volume durante os horários de pico de uso. O desempenho real depende dos limites da instância que usa o volume e de vários outros fatores.

Níveis de desempenho padrão

O provisionamento de um nível de desempenho para um volume do Hyperdisk é opcional. Você pode não ter certeza de quanto a carga de trabalho precisa de IOPS ou capacidade de processamento. Se você não especificar um valor, o Compute Engine vai criar o volume com valores padrão. É possível aumentar ou diminuir o valor mais tarde. Os valores padrão variam de acordo com o tipo do Hyperdisk e estão listados na seção Valores padrão de IOPS e capacidade de processamento para Hyperdisk Balanced, Hyperdisk Balanced High Availability, Hyperdisk Extreme, Hyperdisk Throughput ou Hyperdisk ML.

Limites de desempenho provisionado

O desempenho máximo que pode ser provisionado depende do tipo e do tamanho do volume do Hyperdisk.

Limite para tipos do Hyperdisk

Cada tipo do Hyperdisk tem um nível máximo de desempenho que pode ser provisionado. Alguns tipos permitem provisionar IOPS, capacidade de processamento ou ambos. Se não for possível provisionar a capacidade de processamento, ela vai depender das IOPS provisionadas. Da mesma forma, se não for possível provisionar um valor de IOPS, ele vai depender da capacidade de processamento provisionada.

Por exemplo, é possível provisionar capacidade de processamento para os volumes do Hyperdisk ML, mas não IOPS. A taxa de IOPS para capacidade de processamento do Hyperdisk ML é de 16 IOPS por MiB/s de capacidade de processamento provisionada. Portanto, se você criar um volume do Hyperdisk ML com 100.000 MiB/s de capacidade de processamento, o volume será provisionado com 1.600.000 IOPS.

Limites com base no tamanho

O desempenho máximo que pode ser provisionado varia de acordo com o tamanho do volume. Por exemplo, para um volume do Hyperdisk Balanced de 10 TiB, é possível provisionar de 3.000 a 160.000 IOPS, mas um volume de 50 GiB só aceita o provisionamento de 3.000 a 25.000 IOPS.

Para saber mais sobre os limites baseados em tamanho de cada tipo do Hyperdisk, consulte a seção Limites de tamanho e desempenho nas páginas do Hyperdisk Balanced, do Hyperdisk Balanced High Availability, do Hyperdisk Extreme, do Hyperdisk Throughput e do Hyperdisk ML.

A tabela a seguir lista o desempenho máximo que pode ser provisionado para cada tipo do Hyperdisk.

Tipo do Hyperdisk Desempenho máximo que pode ser provisionado por volume Capacidade de processamento personalizável IOPS personalizáveis
Hyperdisk Balanced 160.000 IOPS
2.400 MiB/s
Sim Sim
Hyperdisk Balanced High Availability 100.000 IOPS
1.200 MiB/s
Sim Sim
Hyperdisk Extreme 350.000 IOPS Não. 250 MiB/s por 1.000 IOPS, até 5.000 MiB/s Sim
Hyperdisk ML 1.200.000 MiB/s Sim Não. 16 IOPS por MiB/s de capacidade de processamento, até 19.200.000 IOPS
Hyperdisk Throughput 2.400 MiB/s Sim Não. 4 IOPS por MiB/s de capacidade de processamento, até 9.600 IOPS.

Desempenho estável

Para cargas de trabalho sensíveis à variabilidade de desempenho, use uma série de máquinas que ofereça desempenho estável. O limite de desempenho estável é o nível de desempenho que uma instância pode manter em todos os volumes anexados. Em comparação, o nível máximo de desempenho é o nível de desempenho mais alto que uma instância pode alcançar.

Os limites de desempenho estável não constituem um contrato de nível de serviço (SLA).

Para que um volume do Hyperdisk atinja um limite de desempenho estável específico, o desempenho provisionado precisa ser igual ou maior que o limite estável.

O limite de desempenho estável é compartilhado por todos os discos anexados à instância.

Séries de máquinas que oferecem desempenho estável

As seguintes séries de máquinas oferecem desempenho estável:

Configurar uma carga de trabalho para atender ao desempenho provisionado

O desempenho real de um volume do Hyperdisk, ou seja, o desempenho observado quando ele está anexado a uma instância, não pode exceder os seguintes limites:

  • O desempenho provisionado do volume.
  • Os limites de desempenho específicos da instância, incluindo os limites específicos do tipo do Hyperdisk.
  • Para volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability, os limites de consumo simultâneo para o desempenho de referência.

Portanto, para garantir que o volume possa atingir o desempenho provisionado, considere os seguintes fatores:

Fatores como tamanho de E/S e design do aplicativo, embora não sejam limites de desempenho, também afetam o desempenho. Para mais informações sobre esses fatores, consulte Fatores específicos da carga de trabalho que afetam o desempenho.

Como os limites de desempenho da instância afetam o desempenho do Hyperdisk

Cada instância de computação tem os seguintes limites de desempenho, com base no tipo de máquina:

  • Um limite de desempenho do tipo do Hyperdisk.
  • Um limite de desempenho geral da instância.

Cada limite se aplica a situações específicas.

Limites de desempenho da instância para cada tipo do Hyperdisk

Cada instância tem um limite de desempenho para todos os volumes do Hyperdisk de um determinado tipo anexados a ela.

Quando esse limite é aplicado: quando você anexa um ou mais volumes do Hyperdisk do mesmo tipo a uma instância. Para que cada volume atinja o desempenho provisionado, o limite de desempenho da instância precisa ser maior que a soma do desempenho provisionado de todos os volumes. Caso contrário, o desempenho dos volumes não poderá exceder o limite de desempenho da instância.

Exemplo

Imagine que você tem um volume do Hyperdisk Throughput, hdt-disk-1, com 600 MiB/s de capacidade de processamento provisionada e quer anexá-lo a uma instância c3-*-4.

As instâncias c3-*-4 têm os seguintes limites de capacidade de processamento:

Tipo do Hyperdisk Capacidade de processamento máxima (MiB/s)
Hyperdisk Balanced 400
Hyperdisk Extreme Não aceito
Hyperdisk Throughput 240
Hyperdisk Balanced High Availability 400
Hyperdisk ML 400

Se você anexar hdt-disk-1 à VM, o desempenho real do volume não poderá exceder 240 MiB/s. Se você anexar um volume do Hyperdisk Balanced, o desempenho dele não poderá exceder 400 MiB/s.

Se você anexar dois volumes do Hyperdisk Balanced à VM, o desempenho combinado dos dois ainda não poderá exceder 400 MiB/s. Isso é válido independentemente do desempenho provisionado dos dois volumes.

Os limites de desempenho de cada Hyperdisk por tipo de máquina estão listados em Limites de desempenho por tipo do Hyperdisk.

Limite de desempenho geral de uma instância

Cada instância tem um limite de desempenho geral que pode ser alcançado. Esse limite é compartilhado por todos os volumes anexados à instância.

Quando esse limite se aplica: quando você anexa mais de um tipo do Hyperdisk a uma instância. O desempenho real combinado de todos os volumes não pode exceder o limite de desempenho da instância, seja qual for o desempenho provisionado de cada volume.

Se a instância aceitar o Persistent Disk, todos os volumes anexados dele também vão compartilhar o mesmo limite.

Exemplo

Imagine que você tem uma instância c3-*-22 com uma capacidade de processamento máxima de 1.800 MiB/s.

Você anexa os seguintes recursos à VM:

  • Dois volumes do Hyperdisk Balanced, cada um com capacidade de processamento provisionada de 900 MiB/s.
  • Um volume do Hyperdisk Throughput com 500 MiB/s de capacidade de processamento provisionada.

O desempenho combinado de todos os volumes não pode exceder 1.800 MiB/s.

Para uma lista dos limites, consulte Limites de desempenho por tipo de máquina.

Limites de consumo simultâneo para o desempenho de referência

O Compute Engine restringe a quantidade de desempenho livre que os volumes do Hyperdisk Balanced High Availability e do Hyperdisk Balanced de um projeto que estejam na mesma zona ou no mesmo pool de armazenamento podem consumir simultaneamente. Esse limite é chamado de limite de consumo simultâneo para o desempenho de referência.

Quando esse limite é aplicado: ele é aplicado a projetos com mais de 150 volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability na mesma zona. Esse limite também se aplica a volumes em um pool de armazenamento do Hyperdisk Balanced quando o pool não usa o provisionamento de desempenho avançado.

O desempenho provisionado dos volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability é composto por desempenhos faturáveis e sem custos. As primeiras 3.000 IOPS e 140 MiB/s de capacidade de processamento provisionados não têm custos e são chamados de desempenho de referência. O desempenho provisionado que excede 3.000 IOPS ou 140 MiB/s é considerado desempenho faturável. Por exemplo, um volume provisionado com 4.000 IOPS tem 1.000 IOPS faturáveis.

Os volumes do Hyperdisk Balanced High Availability e do Hyperdisk Balanced no mesmo projeto e na mesma zona têm os seguintes limites de consumo simultâneo para o desempenho de referência:

  • Limite de consumo simultâneo para IOPS de referência: 500.000 IOPS
  • Limite de consumo simultâneo para capacidade de processamento de referência: 50 GiB/s

Como funcionam os limites de consumo simultâneo para o desempenho de referência

Em um projeto, é possível provisionar mais de 500.000 IOPS e 50 GiB/s de capacidade de processamento em todos os volumes na mesma zona. No entanto, os volumes não podem consumir simultaneamente mais de 500.000 IOPS ou 50 GiB/s de capacidade de processamento.

Além disso, o desempenho total simultâneo não pode exceder o desempenho total de referência provisionado. Por exemplo, se você provisionar um total de 100.000 IOPS de referência na mesma zona e no mesmo projeto, o limite de consumo simultâneo para o desempenho de referência será de 100.000 IOPS.

Limites de consumo total no mesmo projeto e na mesma zona

Cada zona em um projeto tem um limite total de consumo simultâneo, ou seja, o desempenho total que abrange os tipos de desempenho faturáveis e de referência que todos os volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability podem usar ao mesmo tempo.

Para cada zona em um projeto, o limite total de consumo simultâneo é a soma dos seguintes valores:

  • O desempenho faturável provisionado em todos os volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability na zona.
  • O limite de consumo simultâneo da zona para desempenho de referência, que é o menor dos seguintes valores:
    • A soma das IOPS ou das capacidades de processamento de referência provisionadas em todos os volumes na mesma zona.
    • 500.000 IOPS ou 50 GiB/s de capacidade de processamento.

Provisionar desempenho para atender aos requisitos de consumo simultâneo

Para garantir que você provisionou desempenho suficiente para sua carga de trabalho, compare os seguintes valores:

  • O desempenho total que você espera que os volumes consumam ao mesmo tempo.
  • O limite total de consumo simultâneo dos volumes do Hyperdisk Balanced e do Hyperdisk Balanced High Availability do projeto que estão na mesma zona.

Se o desempenho total que você espera que os volumes consumam for maior que o limite total de consumo simultâneo, o Compute Engine vai limitar o desempenho dos volumes, a menos que você provisione mais desempenho faturável.

Confira estes exemplos.

Exemplo 1

Seu projeto tem 10 volumes do Hyperdisk Balanced na zona A, e cada volume é provisionado com 100.000 IOPS, totalizando 1.000.000 IOPS provisionadas. Você espera que os volumes consumam 800.000 IOPS simultaneamente.

Para determinar o limite total de consumo simultâneo, adicione o total de IOPS faturáveis provisionadas ao limite de consumo simultâneo do projeto para o desempenho de referência.

  • Total de IOPS faturáveis provisionadas: 970.000 ((100.000 - 3.000) * 10 discos).
  • O limite de consumo simultâneo para o desempenho de referência: 30.000 IOPS, porque representa o menor de:
    • O total de IOPS de referência provisionadas: 30.000 (3.000 * 10)
    • 500.000 IOPS

O desempenho total que pode ser consumido simultaneamente para a zona A é de 1.000.000 IOPS (30.000 + 970.000). O desempenho dos volumes não será limitado porque o total de IOPS de referência provisionadas é menor que 500.000 IOPS.

Exemplo 2

Seu projeto tem 500 volumes do Hyperdisk Balanced High Availability na zona C, e foram provisionadas para cada um 3.500 IOPS, totalizando 1.750.000 IOPS provisionadas. Você espera que os volumes consumam 1.000.000 IOPS simultaneamente.

Para determinar o limite total de consumo simultâneo, adicione o total de IOPS faturáveis provisionadas ao limite de consumo simultâneo do projeto para o desempenho de referência.

  • O total de IOPS faturáveis provisionadas é de 250.000 ((3.500 - 3.000) * 500 discos).
  • O limite de consumo simultâneo para o desempenho de referência é de 500.000 IOPS, porque representa o menor de:
    • O total de IOPS de referência provisionadas: 1.500.000 (3.000 * 500)
    • 500.000 IOPS

O desempenho total que pode ser consumido simultaneamente para a zona C é de 750.000 IOPS (250.000 + 500.000). O consumo simultâneo de IOPS de referência dos volumes é limitado a 500.000 IOPS.

Para consumir 1.000.000 de IOPS simultaneamente, provisione mais desempenho faturável para os volumes.

Fatores específicos da carga de trabalho que afetam o desempenho

Nesta seção, discutimos os fatores específicos da carga de trabalho que afetam os limites de capacidade de processamento e IOPS que os volumes do Hyperdisk podem alcançar. Para saber como melhorar o desempenho, consulte Otimizar o desempenho do Hyperdisk.

Para alcançar os níveis máximos de IOPS e capacidade de processamento oferecidos pelos volumes do Hyperdisk, você precisa considerar os seguintes parâmetros de carga de trabalho:

  • Tamanho de E/S: use tamanhos de bloco específicos para alcançar os limites de IOPS e capacidade de processamento, da seguinte forma:
    • Os limites máximos de IOPS exigem um tamanho de E/S de 4 KB.
    • Os limites máximos de capacidade de processamento exigem um tamanho de E/S de pelo menos 256 KB.
  • Comprimento da fila: o comprimento da fila consiste no número de solicitações pendentes para um volume. Para alcançar os limites máximos de desempenho, ajuste o comprimento da fila de acordo com o tamanho de E/S, as IOPS e a sensibilidade à latência da carga de trabalho. O tamanho de fila ideal varia para cada carga de trabalho, mas normalmente precisa ser maior que 256.
  • Número de volumes anexados: para ter os melhores resultados de desempenho, recomendamos anexar até oito volumes a uma única instância.

A seguir