Rendimiento del almacenamiento en bloque

Descripción general

En esta página, se analizan los numerosos factores que determinan el rendimiento de los volúmenes de almacenamiento en bloque que adjuntas a las instancias de máquina virtual (VM). Antes de comenzar, considera lo siguiente:

  • Para alcanzar los límites de rendimiento de los discos persistentes, usa una profundidad de cola de E/S alta (32 o más). Los discos persistentes son almacenamientos conectados en red y, por lo general, tienen una latencia más alta en comparación con los discos físicos o los SSD locales.

  • Asegúrate de que la aplicación emita suficientes E/S para saturar el disco.

  • Para cargas de trabajo que involucran, sobre todo, E/S aleatorias pequeñas (de 4 KB a 16 KB), el factor de rendimiento limitante son las operaciones de entrada/salida aleatorias por segundo (IOPS).

  • Para cargas de trabajo que involucran, sobre todo, E/S aleatorias secuenciales o grandes (de 256 KB a 1 MB), el factor de rendimiento limitante es la capacidad de procesamiento.

Elige una opción de almacenamiento

Puedes proporcionar varios tipos diferentes de almacenamiento en bloque para que usen tus instancias. La conexión de un disco persistente a varias máquinas virtuales no afecta el rendimiento ni el costo agregados. Cada máquina recibe una parte del límite de rendimiento por disco.

Cuando configuras un disco persistente zonal o regional, debes seleccionar uno de los siguientes tipos de disco:

  • Los discos persistentes estándar (pd-standard) son adecuados para grandes cargas de trabajo de procesamiento de datos que usan más que nada E/S secuenciales.
  • Los discos persistentes balanceados (pd-balanced) son una alternativa para los discos persistentes SSD que equilibran el rendimiento y el costo. Con la misma cantidad máxima de IOPS que los discos persistentes SSD y una cantidad más baja de IOPS por GB, el PD balanceado ofrece niveles de rendimiento adecuados para la mayoría de las aplicaciones de uso general a un precio que se encuentra entre los discos persistentes SSD y estándar.
  • Los discos persistentes SSD (pd-ssd) son adecuados para aplicaciones empresariales y bases de datos de alto rendimiento que requieren una latencia más baja y más IOPS que los discos persistentes estándar. Los discos persistentes SSD están diseñados para latencias de milisegundos de un solo dígito. La latencia que se detecta es específica de la app.
PD
estándar
zonal
PD
estándar
regional
PD
balanceado
zonal
PD
balanceado
regional
PD SSD
zonal
PD SSD
regional
SSD local (SCSI) SSD local (NVMe)
IOPS máximas sostenidas
IOPS de lectura por GB 0.75 0.75 6 6 30 30
IOPS de escritura por GB 1.5 1.5 6 6 30 30
IOPS de lectura por instancia 7,500* 7,500* 15,000–80,000* 15,000–60,000* 15,000–100,000* 15,000–60,000* 900,000 2,400,000
IOPS de escritura por instancia 15,000* 15,000* 15,000–30,000* 15,000–30,000* 15,000–100,000* 15,000–30,000* 800,000 1,200,000
Capacidad de procesamiento máxima sostenida (MB/s)
Capacidad de procesamiento de lectura por GB 0.12 0.12 0.28 0.28 0.48 0.48
Capacidad de procesamiento de escritura por GB 0.12 0.12 0.28 0.28 0.48 0.48
Capacidad de procesamiento de lectura por instancia 240–1,200* 240–1,200* 240–1,200* 240–1,200* 240–1,200* 240–1,200* 9,360 9,360
Capacidad de procesamiento de escritura por instancia 76–400** 38–200** 240–1,200* 120–600* 240–1,200* 120–600* 4,680 4,680
* Las IOPS y el rendimiento de la capacidad de procesamiento de un disco persistente dependen de la cantidad de CPU virtuales de la instancia, del tamaño del bloque de E/S y del tamaño del disco, entre otros factores.
** Los discos persistentes pueden lograr un mayor rendimiento de la capacidad de procesamiento en las instancias con más CPU virtuales. Consulta Límites de salida de red en la capacidad de procesamiento de escritura.

Ten en cuenta que el ancho de banda de lectura y la coherencia de las IOPS del SSD cerca de los límites de rendimiento máximo dependen, en gran medida, del uso de la entrada de red. Es normal que se produzca cierta variabilidad en los límites de rendimiento, en especial, cuando se opera cerca de los límites de IOPS máximos con un tamaño de E/S de 16 KB.

Compara el disco persistente con un disco duro físico

Cuando especificas el tamaño de tus discos persistentes, ten en cuenta cómo estos discos se comparan con los discos duros físicos tradicionales. En las siguientes tablas, se comparan discos persistentes estándar y discos persistentes SSD con el rendimiento típico que se esperaría de una unidad SATA de 7,200 RPM, que suele alcanzar 75 IOPS o 120 MB por segundo.

Tipo de E/S Patrón de E/S Tamaño requerido para igualar un disco SATA de 7,200 RPM (GB)
Disco persistente estándar Disco persistente balanceado Disco persistente SSD
Operaciones de lectura pequeñas aleatorias 75 operaciones de lectura pequeñas y aleatorias 100 12 3
Operaciones de escritura pequeñas y aleatorias 75 operaciones de escritura pequeñas y aleatorias 50 12 3
Operaciones de lectura grandes por transmisión Operaciones de lectura por transmisión de 120 MB/s 1,000 428 250
Operaciones de escritura grandes por transmisión Operaciones de escritura por transmisión de 120 MB/s 1,000 428 250

Configura las instancias y los discos persistentes

El rendimiento del disco persistente escala con el tamaño del disco y con la cantidad de CPU virtuales en la instancia de VM.

El rendimiento escala hasta que alcanza los límites del disco o los límites de la instancia de VM a la que está conectado el disco. Los límites de la instancia de VM están determinados por el tipo de máquina y la cantidad de CPU virtuales en la instancia.

Por ejemplo, imagina un disco persistente SSD de 1,000 GB conectado a una instancia con un tipo de máquina N2 y 4 CPU virtuales. Si el límite de lectura se basara solo en el tamaño del disco, sería de 30,000 IOPS. Sin embargo, debido a que la instancia tiene 4 CPU virtuales, el límite de lectura se restringe a 15,000 IOPS.

En las siguientes tablas, se muestra el rendimiento en función del tamaño de disco en incrementos en los que el rendimiento cambia de forma significativa. Sin embargo, puedes especificar un tamaño de disco en cualquier incremento de 1 GB. Configura las instancias y los discos de VM de acuerdo con los requisitos de rendimiento.

Rendimiento por tamaño de disco

Disco persistente estándar

IOPS Capacidad de procesamiento sostenida (MB/s)
Tamaño de disco (GB) Lectura
(<=16 KB por E/S)
Escritura
(<=8 KB por E/S)
Escritura
(16 KB por E/S)
Lectura Escritura
10 * * * * *
32 24 48 48 3 3
64 48 96 96 7 7
128 96 192 192 15 15
256 192 384 384 30 30
512 384 768 768 61 61
1,000 750 1,500 1,500 120 120
1,500 1,125 2,250 2,250 180 180
2,048 1,536 3,072 3,072 245 245
4,000 3,000 6,000 6,000 480 400
5,000 3,750 7,500 7,500 600 400
8,192 6,144 12,288 7,500 983 400
10,000–
65,536
7,500 15,000 7,500 1,200 400

* Usa este tamaño de disco solo en los discos de arranque, ya que los límites de rendimiento correspondientes a este tamaño de disco son muy bajos, pero suficientes para iniciar con rapidez una VM.

Disco persistente SSD

IOPS Capacidad de procesamiento sostenida (MB/s)
Tamaño de disco (GB) Lectura
(<=8 KB por E/S)
Lectura
(<=16 KB por E/S)
Escritura
(<=8 KB por E/S)
Escritura
(16 KB por E/S)
Lectura Escritura
10 300 300 300 300 4.8 4.8
32 960 960 960 960 15 15
64 1,920 1,920 1,920 1,920 30 30
128 3,840 3,840 3,840 3,840 61 61
256 7,680 7,680 7,680 7,680 122 122
500 15,000 15,000 15,000 15,000 240 240
834 25,000 25,000 25,000 25,000 400 400
1,000 30,000 30,000 30,000 25,000 480 480
1,334 40,000 40,000 40,000 40,000 640 640
1,667 50,000 50,000 50,000 50,000 800 800
2,048 60,000 60,000 60,000 60,000 983 983
3,500–65,536 100,000 75,000 100,000 75,000 1,200 1,200

Tipo de máquina y cantidad de CPU virtuales

Revisa el rendimiento y las métricas de regulación

Puedes revisar las métricas de rendimiento del disco persistente en Cloud Monitoring, la solución de supervisión integrada de Google Cloud.

Varias de estas métricas son útiles para comprender si se limitan tus discos. La limitación está diseñada para atenuar las E/S poco estables. Con la regulación, las operaciones de E/S poco estables pueden distribuirse durante un período, de manera que los límites de rendimiento de tu disco se puedan alcanzar, pero no exceder en un instante determinado.

Si tu carga de trabajo tiene un patrón de uso de E/S poco estable, es previsible que haya aumentos de actividad en bytes regulados que correspondan a los aumentos de actividad de las operaciones de lectura o escritura de bytes. De forma similar, es previsible que haya picos de actividad en las operaciones reguladas que correspondan a los picos de actividad de las operaciones de lectura y escritura.

Si el límite de disco es de 1,000 IOPS de escritura, el disco aceptará una solicitud de escritura cada 1 milisegundo. Si emites solicitudes de escritura más rápido que eso, se presentará un pequeño retraso para extender las solicitudes a 1 milisegundo. Los límites de IOPS y de capacidad de procesamiento que se analizan en esta página se aplican en todo momento, no por minuto o por segundo.

Las bases de datos son un ejemplo común de cargas de trabajo inestables. Las bases de datos tienden a tener breves aumentos de actividad de operaciones de E/S, lo que genera aumentos temporales en la profundidad de la cola. Una mayor profundidad de cola puede dar como resultado una latencia más alta, ya que aumenta la cantidad de solicitudes de operaciones de E/S pendientes en la cola.

Si tu carga de trabajo tiene un patrón de uso de E/S uniforme y alcanzas continuamente los límites de rendimiento del disco, es previsible que haya niveles uniformes de bytes y operaciones regulados.

Para obtener más información, consulta Revisa las métricas de rendimiento del disco persistente.

Optimiza el rendimiento del disco

Para aumentar el rendimiento del disco, sigue los siguientes pasos:

  • Cambia el tamaño de los discos persistentes para aumentar los límites de IOPS por disco y capacidad de procesamiento. Los discos persistentes no tienen ninguna capacidad inutilizable y reservada, por lo que puedes usar el disco completo sin degradación del rendimiento. Sin embargo, algunas aplicaciones y sistemas de archivos pueden tener un peor rendimiento a medida que el disco se llena, por lo que puede que debas considerar aumentar el tamaño del disco para evitar esto.

  • Cambia el tipo de máquina y la cantidad de CPU virtuales en la instancia para aumentar las IOPS por instancia y los límites de capacidad de procesamiento.

Una vez que te asegures de que los cuellos de botella no se deben al tamaño del disco ni al tipo de máquina de la VM, puede que la app y el sistema operativo necesiten algunos ajustes. Consulta Optimiza el rendimiento de discos persistentes y Optimiza el rendimiento de SSD locales.

Otros factores que afectan el rendimiento

¿Qué sigue?