¿Por qué son importantes los IOPS en los sistemas de almacenamiento ?

Al evaluar un nuevo sistema de almacenamiento, especialmente un arreglo todo flash, el número de IOPS (Entradas / Salidas por segundo) que el sistema de almacenamiento puede soportar se usa a menudo para diferenciar un sistema de almacenamiento de otro. Pero, ¿es este realmente un estándar que tiene algún mérito dadas las demandas del centro de datos actual y las capacidades de los sistemas de almacenamiento actuales?

Hay tres factores que, combinados, cuentan la historia completa del rendimiento del almacenamiento; tasa de ancho de banda, latencia e IOPS. La mayoría de los proveedores de almacenamiento tienden a centrarse en IOPS para presumir de lo rápido que es su sistema de almacenamiento. Pero medir el rendimiento del sistema de almacenamiento por IOPS solo tiene valor si las cargas de trabajo que utilizan ese sistema de almacenamiento son exigentes en IOPS.

Tasa de transferencia frente a IOPS

Hay muchas variables que se deben considerar al intentar determinar el rendimiento general de un sistema de almacenamiento. Hay factores externos como se leen o escriben los datos en el sistema de almacenamiento y la velocidad de la estructura de la red de almacenamiento. También existen consideraciones internas como la potencia de la CPU del motor de cálculo de almacenamiento (el controlador de almacenamiento), la eficiencia del software de almacenamiento y, por supuesto, la velocidad de los medios de almacenamiento instalados en el sistema de almacenamiento.

Para los propósitos de este artículo, asumiremos que todos los factores externos son iguales. Si ese es el caso, la tasa de transferencia es esencialmente la velocidad a la que el controlador de almacenamiento puede mover un bloque de datos contiguo a través del software de almacenamiento al medio de almacenamiento. Por lo general, se mide en MB/s y es importante una alta tasa de transferencia, especialmente para cargas de trabajo que son de naturaleza secuencial.

Las IOPS, sin embargo, son diferentes; se miden como un número entero. Se refiere al número máximo de lecturas y escrituras en ubicaciones de almacenamiento no contiguas. Estas operaciones suelen estar dominadas por el tiempo de búsqueda, o el tiempo que tarda una unidad de disco en colocar sus cabezales de lectura / escritura en la ubicación correcta. Debido a que este posicionamiento de cabezales requiere mucho tiempo, la importancia de la potencia de la CPU del controlador de almacenamiento y la eficiencia del software de almacenamiento se minimizan en gran medida en una matriz de disco duro. Los arreglos flash virtualmente eliminan el tiempo de búsqueda, como tal, hacen que las otras variables como la potencia del controlador de almacenamiento y la eficiencia del software de almacenamiento sean mucho más importantes. El controlador de almacenamiento y el software de almacenamiento ya no pueden esconderse detrás del mal desempeño del disco duro. Flash los expone por lo que son.

A modo de ejemplo, comparemos cómo dos cargas de trabajo que acceden a la misma cantidad de datos requieren una cantidad significativamente diferente de IOPS. La primera carga de trabajo requiere la lectura de diez archivos de 750 MB, 7,5 GB y la transferencia tarda 100 segundos. Esto significa que la velocidad de transferencia es de 75 MB/s y consume 10 IOPS, lo que está dentro de las capacidades de un solo disco duro. La segunda carga de trabajo requiere leer diez mil archivos de 750 KB, la misma cantidad de datos, 7.5 GB, pero consume 10,000 IOPS. Dado que la unidad de disco típica no puede generar más de 200 IOPS, esta solicitud no se realizará en los mismos 100 segundos. Este es un ejemplo de cómo diferentes cargas de trabajo pueden requerir un rendimiento significativamente diferente mientras se usa la misma capacidad de almacenamiento.

¿Importan las IOPS? – Respuesta simple, No

Con la definición de IOPS fuera de lugar, la siguiente pregunta es ¿debería un profesional de TI preocuparse por el rendimiento potencial de IOPS de un sistema de almacenamiento? Las IOPS eran una medida mucho más importante en la era de las matrices de discos duros porque la cantidad potencial de IOPS era a menudo menor que la que necesitaba el centro de datos. En la era de los almacenamientos all-flash ocurre lo contrario. La mayoría de los arreglos totalmente flash ofrecerán un rendimiento de IOPS mucho mayor que el que necesitarán la mayoría de los centros de datos.

No se puede confiar en las mediciones de IOPS

El otro problema con el uso de IOPS como una forma de diferenciar entre sistemas de almacenamiento flash es que hay demasiadas formas de generar un número de IOPS. IOPS puede verse significativamente afectado por el tamaño del bloque utilizado, la combinación de actividad de lectura / escritura y la cantidad de aleatoriedad en ese flujo de E / S. Incluso si todos los proveedores estandarizaran cómo se establecería cada una de estas variables, tendría poca relevancia para el centro de datos. Por ejemplo, si todos los proveedores afirman que reportaron IOPS de las pruebas usando tamaños de bloque de 4k y una mezcla de lectura / escritura aleatoria del 50%, el número resultante tendría poco significado para un centro de datos cuyas cargas de trabajo generaban bloques de 32k con un 80% de lectura y escritura. Finalmente, la mayoría de los centros de datos tendrán múltiples cargas de trabajo ejecutándose en su arreglo all-flash. Es probable que admita una amplia variedad de cargas de trabajo con distintas combinaciones de lectura / escritura.

La medida correcta

La forma correcta de medir el rendimiento de una matriz totalmente flash o incluso una matriz híbrida es desarrollar estadísticas de rendimiento basadas en cargas de trabajo particulares o una combinación de cargas de trabajo. Por ejemplo, ejecute una prueba de rendimiento de SQL y una prueba de rendimiento de VDI al mismo tiempo en el mismo sistema de almacenamiento y, en lugar de informar sobre las IOPS consumidas, informe sobre los datos que son más tangibles y relevantes para el centro de datos. En este caso, podría ser el número de instancias de VDI y usuarios de SQL simultáneos admitidos mientras se mantienen tiempos de respuesta aceptables.

Rendimiento actualizable

Como se indicó anteriormente, la mayoría de los arreglos todo flash ofrecerá más rendimiento del que la mayoría de los centros de datos pueden aprovechar hoy. Pero hoy es la palabra clave aquí. A medida que el servidor virtual y la densidad del escritorio virtual, así como los usuarios por instancia de base de datos, continúan escalando, los centros de datos necesitarán cada vez más rendimiento. El medio flash en sí será un poco más rápido, pero el obstáculo clave para expandir el rendimiento será el controlador de almacenamiento y la eficiencia del software de almacenamiento.

Las características y capacidades del software de almacenamiento agregaran una sobrecarga al rendimiento de la memoria flash. La eficiencia de ese software de almacenamiento en la forma en que ejecuta estas diversas capacidades es fundamental para el rendimiento general. Afortunadamente, el proveedor todo flash tiene acceso a una potencia informática cada vez mayor que puede enmascarar la mayor parte de la sobrecarga del software de almacenamiento. Sin embargo, es fundamental que el proveedor de flash pueda proporcionar una ruta de actualización para el hardware de su controlador para que sus clientes puedan aprovechar la mayor potencia de cada iteración de las CPU Intel.

Conclusión

Usar IOPS como una forma de diferenciar entre arreglos flash es una práctica arriesgada. La mayoría de los sistemas proporcionan más IOPS de las que necesita el centro de datos típico. Estos centros de datos pueden emplear mejor su tiempo buscando una matriz flash que proporcione las funciones que necesitan a un precio que puedan pagar, así como una ruta de actualización para mantenerse a la vanguardia de la demanda de rendimiento.

Para aquellos centros de datos que necesitan un rendimiento lo suficientemente alto como para que las IOPS puedan ser relevantes, los números de IOPS proporcionados por el proveedor tienen demasiada variabilidad entre ellos para proporcionar una diferenciación significativa entre ellos. Es mejor que estos centros de datos soliciten resultados específicos basados ​​en una combinación de cargas de trabajo que coinciden estrechamente con su entorno.

Ir arriba