Almacenamiento
¿Qué es IOPS?
IOPS measures how many individual read or write operations a storage device completes per second. Random 4K IOPS at a queue depth of one is the number that predicts database behaviour; sequential throughput is the number that appears in marketing.
Por qué es importante IOPS
IOPS aleatorios de 4K con profundidad de cola de uno es el número que predice el comportamiento de bases de datos; el rendimiento secuencial es el número que aparece en marketing.
IOPS en la práctica
Cuando realmente ejecutas un servidor, IOPS es lo que observas cuando las consultas se ralentizan. Miras la latencia de lectura aleatoria de 4K de tu base de datos y ves si el disco es el cuello de botella. Si lo es, te mueves a NVMe o agregas más discos. Si lo ignoras, tu aplicación se arrastra bajo carga, y cada consulta lenta te cuesta usuarios. Puedes cambiar tu configuración de almacenamiento, pero no es instantáneo: moverte a un nivel inferior requiere una reconstrucción, y NVMe adicional se adjunta como un segundo dispositivo de bloque. Hacerlo mal significa que tu servidor se siente rápido en las pruebas pero se cae en producción.
Lo que se suele malinterpretar sobre IOPS
La idea errónea es que IOPS es un número fijo. No lo es; depende de la profundidad de cola y el tamaño de bloque. Un disco puede afirmar altos IOPS a profundidades de cola altas, pero lo que importa para las bases de datos es 4K aleatorio a una profundidad de cola de uno. La corrección: si comparas almacenamiento basándote en cifras de marketing, elegirás el dispositivo equivocado. Mira la cifra de profundidad de cola uno.
IOPS — preguntas frecuentes
¿Qué profundidad de cola debo usar para probar IOPS?
Para cargas de trabajo de bases de datos, usa una profundidad de cola de uno. Ese es el número que predice el comportamiento real porque la mayoría de consultas OLTP emiten lecturas únicas e independientes. Profundidades de cola más altas pueden inflar las cifras de IOPS pero no reflejan cómo tu base de datos realmente accede al disco.
¿En qué se diferencian IOPS del rendimiento?
IOPS cuenta operaciones individuales por segundo; el rendimiento mide bytes por segundo. Una transferencia secuencial como una copia de seguridad puede lograr alto rendimiento pero bajos IOPS, mientras que una base de datos hace muchas lecturas aleatorias pequeñas, por lo que IOPS importa más. El marketing a menudo cita el número secuencial.
Dónde aparece IOPS
- ¿Cuánto más rápido es NVMe que SSD SATA? Aproximadamente cinco veces más IOPS aleatorias — alrededor de 500.000 frente a 90.000 — y aproximadamente cinco veces menor latencia, bajo 0,1 ms frente a…
- NVMe vs SSD vs HDD para una VPS NVMe alcanza aproximadamente 500,000 IOPS aleatorias con una latencia inferior a 100 microsegundos; una SSD SATA alcanza alrededor de 90,000 IOPS; un HDD d…
- ¿Cómo hago un benchmark a un VPS? Mide las tres cosas que realmente varían: CPU de un solo hilo con sysbench, disco con fio en lectura/escritura aleatoria de 4K, y red con iperf3 a un endpo…
Más de almacenamiento
- NVMe
- NVMe es un protocolo de almacenamiento que conecta unidades de estado sólido directamente vía PCIe, alcanzando aproximadamente 500 000 IOPS aleatorias con latencia por debajo de 100 microsegundos.
- RAID 10
- RAID 10 replica datos entre pares de discos y distribuye los datos a través de los espejos, ofreciendo tanto redundancia como alto rendimiento a costa de la mitad de la capacidad bruta.
- Instantánea
- Una instantánea es una copia en un punto en el tiempo de un disco de máquina virtual, tomada al instante y almacenada en la misma infraestructura.