Rendimiento del almacenamiento en bloque

Cuando configures una opción de almacenamiento para las apps que se ejecutan en tus instancias, usa los siguientes procesos:

  1. Conoce tu carga de trabajo: determina cuánto espacio necesitas y qué características de rendimiento requieren tus apps.
  2. Determina el tipo de disco correcto: compara el rendimiento entre los tipos de discos.
  3. Configura tus instancias y el tamaño del disco para optimizar el rendimiento del almacenamiento: consulta los factores que afectan el rendimiento del almacenamiento.

Cargas de trabajo

Los requisitos de rendimiento para una app determinada se suelen dividir en dos patrones de E/S distintos:

  • Operaciones de lectura y escritura pequeñas (< 1 MB)
  • Operaciones de lectura y escritura grandes

Para las operaciones de lectura y escritura pequeñas, el factor limitante son las operaciones de entrada/salida aleatorias por segundo (IOPS). Las cargas de trabajo que involucran muchas operaciones de E/S simultáneas y pequeñas son cargas de trabajo controladas por IOP.

Para las operaciones de lectura y escritura grandes, el factor limitante es la capacidad de procesamiento. Las cargas de trabajo que implican operaciones de E/S aleatorias, grandes o principalmente secuenciales son cargas de trabajo controladas por la capacidad de procesamiento.

Comparación de rendimiento de almacenamiento en bloque

Puedes proporcionar varios tipos diferentes de almacenamiento en bloque para que los usen tus instancias. Cada tipo tiene diferentes características de precio, rendimiento y durabilidad.

  • Los discos persistentes estándar son adecuados para grandes cargas de trabajo de procesamiento de datos y pueden verse afectados por los costos.
  • Los discos persistentes SSD son adecuados para aplicaciones empresariales y necesidades de bases de datos de alto rendimiento, y pueden verse afectados por los costos.
  • Los SSD locales proporcionan rendimiento y latencia más baja, pero no son redundantes y existen solo durante la vida útil de una instancia específica.

Las IOPS por GB y la capacidad de procesamiento representan el rendimiento agregado total de los datos en un solo disco, ya sea adjunto a una sola instancia o compartido entre varias instancias. Para varias instancias que leen desde el mismo disco, la capacidad de procesamiento agregada y la capacidad de IOPS del disco se comparten entre las instancias. Para fines de planificación, te recomendamos usar las siguientes IOPS por GB y los índices por capacidad de procesamiento:

Discos persistentes
estándar zonales
Discos persistentes
estándar regionales
Discos persistentes
SSD zonales
Discos persistentes
SSD regionales
SSD local (SCSI) SSD local (NVMe)
IOPS máximas sostenidas
IOPS de lectura por GB 0.75 0.75 30 30 266.7 453.3
IOPS de escritura por GB 1.5 1.5 30 30 186.7 240
IOPS de lectura por instancia 7,500* 3,000* 15,000–100,000* 15,000–100,000* 400,000 680,000
IOPS de escritura por instancia 15,000* 15,000* 15,000–30,000* 15,000–30,000* 280,000 360,000
Capacidad de procesamiento máxima sostenida (MB/s)
Capacidad de procesamiento de lectura por GB 0.12 0.12 0.48 0.48 1.04 1.77
Capacidad de procesamiento de escritura por GB 0.12 0.12 0.48 0.48 0.73 0.94
Capacidad de procesamiento de lectura por instancia 240-1,200* 240* 240–1,200* 240–1,200* 1,560 2,650
Capacidad de procesamiento de escritura por instancia 76-400** 38-200** 76-800* 38-400* 1,090 1,400

* Las IOPS de disco persistente y el rendimiento de la capacidad de procesamiento dependen de la cantidad de CPU virtuales de instancia y del tamaño del bloque de E/S. Consulta Tamaño de volumen y cantidad de CPU virtuales de instancias para obtener más información.

Comparación de un 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/s.

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

Comparación entre precio y rendimiento

Si bien debes tener en cuenta varios puntos cuando seleccionas el tamaño y tipo de volumen para tu app, uno de los factores que no necesitas tener en cuenta es el precio por el uso del volumen. El disco persistente no tiene costo por E/S. Por lo tanto, no es necesario estimar la E/S mensual para calcular el presupuesto que se gastará en discos. Sin embargo, para las cargas de trabajo orientadas a IOPS, es posible desglosar el costo mensual a fin de ver el precio por IOPS, con fines comparativos.

En los siguientes ejemplos de cálculo de precios, se usan precios de disco persistente de EE.UU. En estos ejemplos, considera los costos relativos de los discos persistentes estándar en comparación con los discos persistentes SSD. Los discos persistentes estándar tienen un precio de $0.040 por GB y los discos persistentes SSD tienen un precio de $0.170 por GB. Cuando aumentas el tamaño de un volumen, también aumentas los límites de rendimiento de forma automática, sin costo adicional.

Para determinar el costo por IOPS de un disco persistente, divide el precio por GB por mes por la cantidad de IOPS por GB. En la siguiente tabla, se calcula el precio por IOPS de lectura aleatoria por GB. Además, puedes usar los mismos cálculos para obtener el precio por IOPS de escritura.

Tipo de disco Precio por GB por mes IOPS de lectura por GB Precio por IOPS por GB
Disco persistente estándar $0.040 0.75 $0.040 / 0.75 = $0.0533
Disco persistente SSD $0.170 30 $0.170 / 30 = $0.0057

Factores que afectan los límites de rendimiento

Tamaño de volumen y cantidad de CPU virtuales de instancias

Disco persistente estándar

Las IOPS de disco persistente estándar y el rendimiento de la capacidad de procesamiento aumentan de manera lineal con el tamaño del disco hasta que alcanzan los siguientes límites por instancia:

  • Capacidad de procesamiento de lectura: hasta 1,200 MB/s con un tamaño de disco de 10 TB.
  • Capacidad de procesamiento de escritura: hasta 400 MB/s con un tamaño de disco de 3.4 TB.
  • IOPS de lectura: hasta 7,500 IOPS con un tamaño de disco de 10 TB.
  • IOPS de escritura: hasta 15,000 IOPS con un tamaño de disco de 10 TB.

Una cantidad de 16 o más CPU virtuales para tu instancia no limita el rendimiento de los discos persistentes estándar.

Tener menos de 8 CPU virtuales para tu instancia reduce el límite de operaciones de escritura para la capacidad de procesamiento porque los límites de salida de red son proporcionales a la cantidad de CPU virtuales. La capacidad de procesamiento de escritura observada también depende del tamaño de la E/S (16 KB de E/S consumen más capacidad de procesamiento que 8 KB de E/S en el mismo nivel de IOPS).

Para obtener beneficios de rendimiento de discos persistentes en tus instancias existentes, cambia el tamaño de tus discos persistentes a fin de aumentar las IOPS y la capacidad de procesamiento por disco persistente.

Tamaño de volumen (GB) IOPS aleatorias sostenidas Capacidad de procesamiento sostenida (MB/s)
Lectura
(<=16 KB / E/S)
Escritura
(<=8 KB / E/S)
Escritura
(16 KB / 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** 7,500 15,000 7,500 1,200 400
65,536 7,500 15,000 7,500 1,200 400

* Usa este tamaño de volumen solo para volúmenes de inicio. Un pico de actividad de E/S proporciona un mayor rendimiento para los volúmenes de inicio que el escalamiento lineal descrito aquí.

** La capacidad de procesamiento cercana al límite depende del uso de CPU y la disponibilidad de recursos, por lo que se espera una variabilidad del rendimiento.

Disco persistente SSD

El rendimiento de IOPS de los discos persistentes SSD depende de la cantidad de CPU virtuales en la instancia y del tamaño del disco. El rendimiento escala de manera lineal hasta que alcanza los límites de volumen o de cada instancia de Compute Engine.

Por ejemplo, considera un disco persistente SSD con un tamaño de volumen de 1,000 GB. Según las tablas que aparecen a continuación, el límite de lectura es de 30,000 IOPS. Sin embargo, si usas una instancia con solo 4 CPU virtuales, el límite de lectura es de 15,000 IOPS.

Las VM de núcleo inferior tienen límites de capacidad de procesamiento y de IOPS de escritura inferiores debido a las limitaciones de salida de red en la capacidad de procesamiento de escritura. Para obtener más información, consulta Límites de salida de red en la capacidad de procesamiento de escritura. El ancho de banda de lectura del SSD y la coherencia de IOPS cerca de los límites máximos dependen, en gran medida, del uso de la entrada de red. Es normal que haya cierta variabilidad, en especial para E/S de 16 KB cerca de los límites máximos de IOPS.

Los discos persistentes SSD están diseñados para latencias de milisegundos de un solo dígito. La latencia observada es específica de la app.

Para mejorar el rendimiento del disco persistente SSD en tus instancias existentes, cambia el tipo de máquina de la instancia a fin de aumentar los límites por VM y cambia el tamaño de tus discos persistentes a fin de aumentar las IOPS y la capacidad de procesamiento por disco persistente.

IOPS aleatorias sostenidas Capacidad de procesamiento sostenida (MB/s)
Tamaño de volumen (GB) Lectura
(<=8 KB / E/S)
Lectura
(<=16 KB / E/S)
Escritura
(<=8 KB / E/S)
Escritura
(16 KB / 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 30,000 25,000 640 640
1,667 50,000 50,000 30,000 25,000 800 800
2,048 60,000 60,000 30,000 25,000 983 800
4,096 100,000 75,000 30,000 25,000 1,200 800
8,192 100,000 75,000 30,000 25,000 1,200 800
16,384 100,000 75,000 30,000 25,000 1,200 800
32,768 100,000 75,000 30,000 25,000 1,200 800
65,536 100,000 75,000 30,000 25,000 1,200 800
Cantidad de CPU virtuales de instancia Lectura
(<=8 KB / E/S)
Lectura
(<=16 KB / E/S)
Escritura
(<=8 KB / E/S)
Escritura
(16 KB / E/S)
Lectura* Escritura
1 CPU virtual 15,000 15,000 9,000 4,500 240 72
De 2 a 3 CPU virtuales 15,000 15,000 15,000 4,500/CPU virtual 240 72/CPU virtual
De 4 a 7 CPU virtuales 15,000 15,000 15,000 15,000 240 240
De 8 a 15 CPU virtuales 15,000 15,000 15,000 15,000 800 400
De 16 a 31 CPU virtuales 25,000 25,000 25,000 25,000 1,200 800
De 32 a 63 CPU virtuales 60,000 60,000 30,000 25,000 1,200 800
Más de 64 CPU virtuales** 100,000 75,000 30,000 25,000 1,200 800

* Capacidad de procesamiento máxima según los tamaños de bloque de E/S de 256 KB o más.

** Es posible que no se pueda alcanzar el máximo rendimiento con el uso completo de CPU.

Tipo de máquina

Los tipos de máquina optimizados para el procesamiento están sujetos a límites de disco persistentes específicos por CPU virtual que difieren de los límites para otros tipos de máquina. En las siguientes tablas, se muestran estos límites.

Ten en cuenta que el rendimiento por volumen sigue siendo el mismo que el descrito en las secciones sobre el rendimiento de disco estándar y el rendimiento de disco SSD.

Disco persistente estándar C2

Cantidad de CPU virtuales de instancia IOPS aleatorias sostenidas Capacidad de procesamiento sostenida (MB/s)
Lectura
(<=16 KB / E/S)
Escritura
(<=8 KB / E/S)
Escritura
(16 KB / E/S)
Lectura* Escritura
4 CPU virtuales 3,000 4,000 4,000 240 240
8 CPU virtuales 3,000 4,000 4,000 240 240
16 CPU virtuales3,000 4,000 4,000 240 240
30 CPU virtuales 3,000 8,000 8,000 240 240
60 CPU virtuales 3,000 15,000 15,000 240 240

Disco persistente SSD C2

Cantidad de CPU virtuales de instancia IOPS aleatorias sostenidas Capacidad de procesamiento sostenida (MB/s)
Lectura
(<=16 KB / E/S)
Escritura
(<=8 KB / E/S)
Escritura
(16 KB / E/S)
Lectura* Escritura
4 CPU virtuales 4,000 4,000 4,000 240 240
8 CPU virtuales 4,000 4,000 4,000 240 240
16 CPU virtuales8,000 4,000 4,000 320 240
30 CPU virtuales 15,000 8,000 8,000 600 240
60 CPU virtuales 30,000 15,000 15,000 1,200 400

Operaciones de lectura y escritura simultáneas

En los discos persistentes estándar, las operaciones de lectura y escritura simultáneas comparten los mismos recursos. Si tu instancia usa una capacidad de procesamiento de lectura o IOPS mayor, será capaz de realizar menos operaciones de escritura. Por el contrario, las instancias que usen una capacidad de procesamiento de escritura mayor, serán capaces de realizar menos operaciones de lectura.

Los discos persistentes SSD son capaces de alcanzar los límites máximos de capacidad de procesamiento de lectura y escritura de forma simultánea. Sin embargo, este no es el caso de IOPS. No es posible que los discos persistentes SSD alcancen sus límites máximos de lectura y escritura de forma simultánea. Si quieres alcanzar los límites máximos de capacidad de procesamiento de operaciones de lectura y escritura simultáneas, debes optimizar el tamaño de E/S a fin de que el volumen pueda alcanzar sus límites de capacidad de procesamiento sin sufrir un cuello de botella de IOPS.

Límites de IOPS de instancia para operaciones de lectura y escritura simultáneas:

Los números de IOPS en la siguiente tabla están basados en un tamaño de E/S de 8 KB. Otros tamaños de E/S, como 16 KB, pueden tener diferentes números de IOPS, pero mantienen la misma distribución de lectura/escritura.

Disco persistente estándar Disco persistente SSD (8 CPU virtuales) Disco persistente SSD (más de 32 CPU virtuales)
Lectura Escritura Lectura Escritura Lectura Escritura
7,500 IOPS 0 IOPS 15,000 IOPS 0 IOPS 60,000 IOPS 0 IOPS
5,625 IOPS 3,750 IOPS 11,250 IOPS 3,750 IOPS 45,000 IOPS 7,500 IOPS
3,750 IOPS 7,500 IOPS 7,500 IOPS 7,500 IOPS 30,000 IOPS 15,000 IOPS
1,875 IOPS 11,250 IOPS 3,750 IOPS 11,250 IOPS 15,000 IOPS 22,500 IOPS
0 IOPS 15,000 IOPS 0 IOPS 15,000 IOPS 0 IOPS 30,000 IOPS

Límites de capacidad de procesamiento de instancia para operaciones de lectura y escritura simultáneas:

Disco persistente estándar Disco persistente SSD (8 CPU virtuales) Disco persistente SSD (más de 16 CPU virtuales)
Lectura Escritura Lectura Escritura Lectura Escritura
1,200 MB/s 0 MB/s 800 MB/s* 400 MB/s* 1,200 MB/s* 800 MB/s*
900 MB/s 100 MB/s
600 MB/s 200 MB/s
300 MB/s 300 MB/s
0 MB/s 400 MB/s

* Para los discos persistentes SSD, la capacidad de procesamiento máxima de lectura y la de escritura son independientes entre sí, por lo que estos límites son constantes.

Mayor rendimiento de volumen lógico

Los discos persistentes pueden tener un tamaño de hasta 64 TB, y puedes crear volúmenes lógicos únicos de hasta 257 TB mediante la administración de volúmenes lógicos dentro de la VM. Un tamaño de volumen mayor afecta el rendimiento de las siguientes maneras:

  • No todos los sistemas de archivos locales funcionan bien a esta escala. Las operaciones comunes, como la activación y la verificación del sistema de archivos, pueden tardar más de lo esperado.

  • El máximo rendimiento del disco persistente se logra en tamaños más pequeños. Los discos tardan más en leer o escribir de manera completa con este almacenamiento en una VM. Si es compatible con tu aplicación, considera usar varias VM para obtener una mayor capacidad de procesamiento total del sistema.

  • Hacer instantáneas de grandes cantidades de disco persistente puede tardar más de lo esperado en completarse y puede proporcionar una vista inconsistente del volumen lógico sin una cuidadosa coordinación con la aplicación.

Límites de salida de red en la capacidad de procesamiento de escritura

Cada operación de escritura de disco persistente contribuye al límite de salida de red acumulativo de la instancia de tu máquina virtual (VM).

Para calcular el tráfico máximo de operaciones de escritura de disco persistente que puede emitir una instancia de VM, resta el tráfico de salida de red de una instancia de su límite de red de 2 Gbit/s/CPU virtual. La capacidad de procesamiento restante representa la capacidad de procesamiento disponible para el tráfico de escritura de discos persistentes.

Compute Engine almacena datos en discos persistentes para que tengan redundancia incorporada. Las instancias escriben datos en discos persistentes tres veces en paralelo para conseguir esta redundancia. Además, cada solicitud de escritura posee una cierta cantidad de sobrecarga, que usa el ancho de banda de salida.

Cada instancia tiene un límite de operaciones de escritura de disco persistente basado en el límite de salida de red de la VM. En una situación en la que el disco persistente compite con el tráfico IP por la salida de red, el 60% del límite de salida de red se aplica al tráfico de disco persistente, lo que deja un 40% para el tráfico IP. En la siguiente tabla, se muestra el ancho de banda esperado de operaciones de escritura de disco persistente, con tráfico IP adicional y sin él:

Disco persistente estándar Disco persistente de estado sólido
Cantidad de CPU virtuales Límite de operaciones de escritura de disco persistente estándar (MB/s) Asignación de operaciones de escritura de disco persistente estándar (MB/s) Tamaño de volumen estándar necesario para alcanzar el límite (GB) Límite de operaciones de escritura de disco persistente SSD (MB/s) Asignación de operaciones de escritura de disco persistente SSD (MB/s) Tamaño de disco persistente SSD necesario para alcanzar el límite (GB)
1 72 43 600 72 43 150
2 144 86 1,200 144 86 300
4 240 173 2,000 240 173 500
8+ 400 346 3,334 400 346 834

Para comprender cómo se calcularon los valores de esta tabla, tomemos, por ejemplo, el valor de 1 CPU virtual y disco persistente estándar. En este ejemplo, calculamos que el multiplicador de ancho de banda para cada solicitud de operación de escritura es 3.3x, lo que significa que los datos se escriben 3 veces y tienen una sobrecarga del 10%. Para calcular el límite de salida, divide el límite de salida de red (2 Gbit/s, que es equivalente a 238 MB/s) por 3.3:

Ancho de banda de operación de escritura máximo para 1 CPU virtual = 238 / 3.3 = ~72 MB/s en tu disco persistente estándar.

También puedes obtener la capacidad de disco necesaria para alcanzar este rendimiento mediante la capacidad de procesamiento de escritura de disco persistente estándar por GB proporcionada en la tabla de rendimiento presentada con anterioridad:

Capacidad de disco necesaria a fin de alcanzar el ancho de banda de escritura máximo para 1 CPU virtual = 72 / 0.12 = ~600 GB

Similar a los discos persistentes zonales, el tráfico de operaciones de escritura desde los discos persistentes regionales contribuye al límite de salida de red acumulativo de una instancia de VM. Para calcular la salida de red disponible para discos persistentes regionales, usa el factor de 6.6.

Ancho de banda de operación de escritura máximo para 1 CPU virtual = 238 / 6.6 = ~36 MB/s para tu disco persistente estándar replicado.

Para más de 16 VM principales, el ancho de banda de salida de red máximo que consumen las operaciones de escritura del disco no cambia con el aumento de la capacidad de procesamiento de escritura por encima de 400 MB/s hasta 800 MB/s y se mantiene en 1,320 MB/s. (400 MB/s * 3.3).

Próximos pasos

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Compute Engine