Almacenamiento computable: compresión transparente, modelo de E / S de base de datos y vida de SSD

Fuente: Public Account ScaleFlux

Velocidad futura

lo que Andy da, Bill se lo lleva. 

Cada vez que Intel proporciona una potencia informática más potente, Microsoft no puede hacer nada.

Andy y Bill'Law, que nació en 1990, sigue siendo eficaz. Con el crecimiento exponencial del volumen de datos, se vuelve cada vez más intenso en el campo del almacenamiento y procesamiento de datos. "En los próximos 10 años, los cambios en la empresa superarán los cambios totales en los últimos 50 años". Este es el texto del libro de Bill Gates de 1999 "Future Speed". Es difícil para nosotros enumerar todos los cambios clave uno por uno, pero también seguimos esta predicción en el campo de almacenamiento. Por ejemplo, el chico genio de Huawei mencionado recientemente, Zhang Ji investiga la optimización inteligente relacionada con el disco y la base de datos, Yao Ting investiga nuevos medios de almacenamiento y sistemas de almacenamiento de valor clave, Zuo Pengfei investiga los sistemas de memoria no volátil, todos los cuales están directamente relacionados con el campo del almacenamiento. La relación parece indicar que todavía se están produciendo cambios en el campo del almacenamiento.

Una productividad más eficiente está destinada a reemplazar la productividad original y las relaciones de producción. Desde la tecnología de partición de mainframes y minicomputadoras hasta la virtualización x86 y la tecnología de orquestación de contenedores y contenedores de tendencia actual, se hacen todos los esfuerzos para aumentar la densidad de implementación de las aplicaciones, aumentar la utilización de los recursos informáticos y, en última instancia, reducir el costo de propiedad. El campo de almacenamiento no es una excepción. Mirando el historial de Flash:

Los SSD continúan aterrizando y desplegándose a gran escala en aplicaciones empresariales clave. Desde MLC, TLC hasta QLC, la capacidad aumenta gradualmente y el costo disminuye gradualmente, pero según el principio de realización de la tecnología SSD, el problema de la vida también se está volviendo más prominente.

Escribe amplificación y vida

Los SSD no pueden sobrescribir directamente datos antiguos como la memoria y los discos duros mecánicos. Solo pueden borrar el bloque y escribir una de las páginas "limpias". Cuando el espacio restante del SSD se reduce y aparece una gran cantidad de fragmentos de datos, se deben leer todos los datos del bloque y los datos válidos se reescribirán en el bloque borrado. Este proceso se denomina recolección de basura (GC), que conduce a la amplificación de escritura. De hecho, existe un indicador más cuantitativo para medir la amplificación de escritura, llamado Factor de amplificación de escritura (WAF para abreviar). JEDEC (Asociación de tecnología de estado sólido, la organización que lanzó el estándar SSD) define el factor de amplificación de escritura WAF:


La imagen muestra un ejemplo de cómo se calcula WAF en JEDEC. Este bloque contiene 64 páginas (256 sectores). Suponiendo que los datos de Página1 ~ Página3 (8 sectores) necesitan actualizarse, el algoritmo es:

  1. Copie toda la página 0 ~ página 63 a la DRAM;

  2. Actualizar Page1 ~ Page3 en DRAM;

  3. Borre este bloque y vuelva a escribir los datos de la DRAM;

???? En este momento, el factor de amplificación de escritura es 256/8 = 32, y la amplificación de escritura aumenta la cantidad de escritura 32 veces, lo que conduce a más borrado y escritura.

Como todos sabemos, las partículas de memoria flash tienen un límite en la cantidad de borrado y escritura, por lo que al medir la vida útil de la SSD, el TBW (o DWPD) se usa generalmente como base para la medición. La amplificación de escritura da como resultado la "ampliación" de los tiempos de escritura y borrado de partículas de memoria flash, lo que reduce aún más la vida útil. La fórmula de cálculo es la siguiente:

Al mismo tiempo, a medida que aumenta la cantidad de escritura, aumentará la probabilidad de bloques defectuosos. Por confiabilidad, el índice de medición más importante es UBER (Tasa de bits de error irreparable), que mide la relación entre el número de errores de datos por bit leído y el número total de lecturas que aún se generan después de aplicar el mecanismo de corrección de errores.

UBER describe la probabilidad de errores de lectura de datos. Cuanto menor sea el valor, mejor. La siguiente figura describe la relación lineal entre UBER y la cantidad de datos escritos:

  • 0 ~ 600, UBER es siempre 0

  • 600 ~ 800. En este momento, debido al aumento continuo del volumen de escritura, se forma una pequeña cantidad de bloques defectuosos y el UBER aumenta lentamente de 0 a 0,003

  • 800 ~ 1000, la falla de más partículas y la superposición de la amplificación de escritura en el borrado y la escritura de partículas hace que las partículas NAND restantes sean más propensas a formar bloques defectuosos, lo que conduce a un pequeño aumento en la cantidad de escritura, y el UBER también aumenta considerablemente. En este momento, la tasa de error de lectura de datos Fuerte aumento.

Si hay algo, se le agregará; si no, hasta lo que tiene le será quitado.

En resumen, para las SSD que a menudo ofrecen servicios críticos para la empresa, considerando la confiabilidad, no solo se trata de la cantidad de escritura, ya que aumenta la cantidad de borrado y escritura, los errores de lectura causados ​​también son inaceptables para las aplicaciones de nivel empresarial. TBW y UBER no deben discutirse por separado, al igual que en el campo de la base de datos Recovery Time Objective (RTO) y Recovery Point Objective (RPO) siempre aparecen al mismo tiempo, solo hablando del tiempo de recuperación de los servicios de datos, o enfatizando ciegamente la pérdida de datos cero, es un deshonesto . Por supuesto, la industria también continúa aumentando el número de borrado y escritura de partículas de almacenamiento SSD y el algoritmo GC. Al mismo tiempo, combinado con la compresión transparente del almacenamiento computable, también trae una nueva dirección para la mejora de la vida y estabilidad de SSD.

Compresión y vida

Hablando cualitativamente, la compresión reducirá inevitablemente la escritura de datos y, en última instancia, aumentará la vida de escritura de las partículas de almacenamiento. Pero en el campo de la ingeniería, se necesitan datos más detallados. Para considerar los beneficios para la vida de la compresión, en primer lugar, no afectan al negocio (consulte: Almacenamiento computable: compresión de datos y pushdown de cálculo de bases de datos ) como premisa. Hay muchos factores relacionados que determinan la vida útil de la escritura, como la calidad de las partículas de almacenamiento, el modelo de datos, la temperatura, la humedad y la metafísica. El modelo de escritura debe ser uno de los factores más importantes, que primero debe regresar a los escenarios comerciales importantes de los servicios de nivel empresarial de SSD. JESD219 (un documento en JEDEC que introduce específicamente la carga de trabajo de análisis en la prueba de vida de SSD) analiza las características de las cargas de trabajo de SSD de nivel empresarial y lleva a cabo estrictas pruebas de simulación de carga de datos sobre esta base. Con la ayuda del estándar de facto JESD219, es conveniente para nosotros verificar aún más los beneficios de la compresión de datos para reducir la amplificación de escritura.

Carga de trabajo JESD219

Contiene los siguientes puntos:

  • Popularidad de los datos: el acceso al conjunto de datos está relativamente concentrado, el 5% de los datos obtiene un 50% de frecuencia de acceso y el 20% de los datos obtiene un 80% de frecuencia de acceso;

  • Tamaño de IO: principalmente IO pequeño, el 67% del tamaño de IO es 4 KB, IO demasiado grande o IO demasiado pequeño son relativamente pequeños, como se muestra en la siguiente figura, es la proporción de diferentes tamaños de I / O;

  • Duración de la prueba: JESD219 también utiliza este modelo de carga de trabajo para probar la relación de compresión y la amplificación de escritura, y realiza pruebas para diferentes datos de relación de compresión, diferentes tamaños de espacio reservado y diferentes capacidades. Entre ellos, para estar cerca del escenario comercial real, para garantizar que la prueba continúe La duración es muy necesaria, para esto usamos el patrón IO anterior para continuar probando durante 10,000 minutos;

  • Método de grabación: escriba el muestreo del factor de amplificación una vez por minuto;

Echemos un vistazo al script que crea la carga después del cambio mágico (parte interceptada):

El registro de finalización final se muestra en la siguiente figura:

La imagen muestra JESD219, basado en el mismo modelo de carga, utilizando la prueba de capacidad SSD de 3.2TB / 3.84TB / 6.4TB de nivel empresarial comúnmente utilizada, la relación de compresión de datos es 1: 1 / 1.2: 1/2: 1 / 2.13: 1 / 3.7: 1 / 9: 1 aumenta gradualmente, dura 10000 minutos y registra y escribe datos ampliados. Visible a partir de los resultados de la prueba

  1. Todos los modelos alcanzarán un estado estable después de pruebas continuas durante un período de tiempo, momento en el que la amplificación de escritura tiende a ser estable;

  2. El mismo SSD de 3.2TB, la relación de compresión de datos es de 1: 1 / 1.2: 1 / 2.13: 1/9: 1, la amplificación de escritura se reduce drásticamente y los resultados de SSD de 3.84TB y 6.4TB son similares;

Puede verse que a medida que aumenta la relación de compresión, diferentes tipos de SSD pueden obtener continuamente los beneficios de una amplificación de escritura reducida.

Seleccione una relación de capacidad SSD típica, compare y analice datos específicos, como se muestra en la siguiente figura

El espacio reservado de SSD empresarial general es 28% (espacio disponible 3,2 TB), cuando la relación de compresión de datos es 1: 1, el factor de amplificación de escritura es 1,79, cuando la relación de compresión de datos es 1,2: 1, el factor de amplificación de escritura se reduce a 1,48 (solo aumento 20% de compresión y amplificación de escritura reducida en un 17%). Cuando la relación de compresión de datos es 2,1: 1, el factor de amplificación de escritura es 0,58 y la amplificación de escritura se reduce en un 67%.

Generalmente, el espacio reservado de SSD para consumidores es del 7% (el espacio disponible es 3.84TB). Cuando la relación de compresión de datos es 1: 1, el factor de amplificación de escritura es 3.67. Cuando la relación de compresión de datos es 1.2: 1, el factor de amplificación de escritura se reduce a 1.95, simplemente hazlo La amplificación de escritura de compresión del 20% se reduce en un 49%, que se acerca a la relación de compresión de datos SSD de nivel empresarial de 1: 1 con un factor de amplificación de escritura de 1,79. Cuando la relación de compresión de datos es 2,1: 1, el factor de amplificación de escritura es 0,62 y la amplificación de escritura se reduce en un 83%.

Mirando hacia atrás en TBW y UBER, uno puede resumir:

La compresión no solo mejora el rendimiento, sino que también mejora la vida y la estabilidad.

Además de considerar la compresión en sí misma, hay muchos aspectos que deben tenerse en cuenta en combinación con los servicios de nivel empresarial, como si es transparente para la empresa, si la copia cero no genera una sobrecarga adicional, escalabilidad, etc. La siguiente figura se basa en la compresión transparente del almacenamiento computable como referencia.

JESD219 ha considerado suficiente, pero si desea acercarse a la carga de la aplicación, debe ir más allá. Tomando el escenario de la base de datos como ejemplo, usando MySQL, usando Sysbench para crear presión de lectura y escritura (OLTP mezcla de lectura y escritura oltp_read_write, conjunto de datos de 2TB), puede observar que su modelo IO (basado en eBPF tracking IO) y JESD219 siguen siendo bastante diferentes:

  1. Tamaño de E / S, el 73% de E / S se concentra en 16 ~ 31 kbytes, la razón es que la página de datos de InnodDB tiene un valor predeterminado de 16 KB. El 15% de las E / S se concentra por debajo de 1 KB porque redolog tiene un valor predeterminado de 512 bytes para las operaciones de E / S;

  2. La popularidad de los datos, en la prueba de sysbench, principalmente E / S discretas, intenta acceder de manera uniforme al conjunto completo de datos de 2TB;

Por supuesto, esto puede ser más específico para simular la carga de la aplicación mediante la modificación mágica del script JESD219, que no se expande aquí.

Diez veces cambio

Hay mucho espacio en la parte inferior.

El físico Richard P. Feynman pronunció un discurso titulado "Hay mucho espacio en la parte inferior" ("Todavía hay mucho por hacer en la parte inferior") en la Conferencia Anual Americana de Física en diciembre de 1959. El desarrollo de la física en el futuro tendrá un impacto profundo. La tecnología de almacenamiento computable como el "fondo" de las aplicaciones también tendrá un mayor impacto en la arquitectura de la aplicación.

referencia

  • Almacenamiento computable: compresión de datos y pushdown de cálculo de base de datos: https://mp.weixin.qq.com/s/VFgBtn1dyHW0VUsHxKW6BA

  • Sobre el impacto de la recolección de basura en SSD Endurance basado en flash: https: //www.usenix.org/system/files/conference/inflow16/inflow16-paper-verschoren.pdf

  • Escribir análisis de amplificación en unidades de estado vendidas basadas en Flash: https: //dl.acm.org/doi/abs/10.1145/1534530.1534544

  • QZFS: Compresión acelerada QAT en el sistema de archivos para almacenamiento de datos agnóstico y rentable de la aplicación: https: //www.usenix.org/system/files/atc19-hu.pdf

  • Mejora del rendimiento y la vida útil de las unidades de estado sólido mediante la compresión acelerada por hardware: https: //ieeexplore.ieee.org/document/6131148

  • SSD de espacios de nombres en zonas (ZNS): https: //zonedstorage.io/introduction/zns/#: ~: text = Preguntas frecuentes, SSD de espacios de nombres en zonas (ZNS), ™ (NVMe ™).

  • JESD219 : https: //www.jedec.org/sites/default/files/docs/JESD219.pdf

Autor:

Jin Ge @ Scaleflux, 熊中哲 @Scaleflux

Para obtener más información en video, que incluye capacitación, entrevistas y presentaciones de productos, siga nuestro canal de información de video de cuenta oficial de WeChat

Sitio web oficial de información de video de ScaleFlux:
http://scaleflux.com/videos.html
Canal de ScaleFlux Youku:
https://i.youku.com/scaleflux?spm=a2hzp.8244740.0.0

                                                        

El texto completo ha terminado.

Disfruta MySQL :)


La clase "MySQL Core Optimization" de Teacher Ye se ha actualizado a MySQL 8.0, escanee el código para comenzar el viaje de la práctica de MySQL 8.0

Supongo que te gusta

Origin blog.csdn.net/n88Lpo/article/details/108459087
Recomendado
Clasificación