NOTA: Este blog fue actualizado el 26 de septiembre de 2018 por Earle Philhower III para reflejar los últimos avances en la tecnología SSD de Western Digital.
Este es mi segundo post de la serie de blogs «Velocidades, alimentaciones y necesidades», diseñada para explicar los elementos más técnicos del almacenamiento empresarial en términos comprensibles para todos. En mi primera entrada hablé del papel de la latencia en las arquitecturas de almacenamiento. En esta entrada hablaré de la resistencia de las SSD y de cómo afecta a su elección, además de ofrecerle algunas reglas generales para hacer la elección correcta.
- Elegir la SSD correcta no es fácil
- No todas las memorias flash son iguales
- Corrección de errores, sobreaprovisionamiento y firmware
- La ecuación de la resistencia de las SSD
- «1 DWPD» no es igual a «1 DWPD»
- Lo que ocurre cuando se equivoca en la resistencia de las SSD
- Cómo acertar
- The SSD Endurance Cheat Sheet
- Más información
Elegir la SSD correcta no es fácil
Probablemente haya mirado una hoja de datos de las SSD y se haya sentido un poco abrumado. Al fin y al cabo, elegir la unidad SSD adecuada es un proceso complicado. Tiene que elegir el factor de forma correcto para que la unidad encaje en su servidor. Tiene que elegir entre tres interfaces principales e incompatibles (SATA, SAS o NVMe™). También tiene que elegir la capacidad adecuada, por supuesto, desde cientos de gigabytes hasta varios terabytes. Eso es todo lo que tienes que hacer, ¿verdad? Error.
Hay una elección más que necesita hacer, y es una elección que quizás no haya tenido que hacer antes: el nivel de resistencia de la SSD. La resistencia de las SSD es la cantidad total de datos que se garantiza que una SSD puede escribir en garantía, a menudo especificada en «TBW» o «DWPD» (de los que hablaremos un poco más adelante). La física de la resistencia de las SSD es complicada, pero los resultados son sencillos: Las unidades SSD se desgastan a medida que se escribe en ellas. Si elige una resistencia de SSD incorrecta, acabará sustituyendo la unidad antes de tiempo o pagando de más por una unidad de mayor resistencia de la necesaria.
No todas las memorias flash son iguales
La resistencia de las SSD es limitada porque la memoria flash NAND que las alimenta tiene un número finito de ciclos de «programación/borrado» (P/E) antes de que ya no pueda utilizarse. Estos ciclos se producen cada vez que es necesario sobrescribir los datos existentes en una celda flash. A medida que la industria pasa de las unidades SSD de célula de nivel múltiple (MLC) a las de célula de nivel triple (TLC), que almacenan 3 bits por célula, los ciclos P/E disponibles disminuyen. Esta disminución de los ciclos es, obviamente, perjudicial para la resistencia.
Corrección de errores, sobreaprovisionamiento y firmware
Afortunadamente, la resistencia de las SSD no se establece sólo por los límites de los ciclos P/E. La tecnología colocada alrededor de la NAND por el fabricante también puede cambiar la resistencia, para bien o para mal. Western Digital mejora la resistencia de las SSD con tres tecnologías principales: corrección de errores, sobreaprovisionamiento y firmware.
Técnicas avanzadas de corrección de errores como la tecnología de gestión de la NAND CellCare™ de HGST o la Guardian Technology™ de SanDisk® pueden ayudar a recuperar los datos incluso de las celdas flash marginales y pueden prolongar considerablemente la vida útil de la celda NAND.
El sobreaprovisionamiento añade capacidad flash adicional a la SSD. Este flash adicional no es visible para el usuario, pero sí lo es para la unidad y se utiliza para mejorar la resistencia al permitir una gestión de datos más eficiente.
Por último, el programa que se ejecuta en la SSD, el firmware, puede gestionar de forma inteligente el flash dentro de la SSD. Cuanta más experiencia tenga una empresa con las cargas de trabajo de los usuarios finales y con la propia memoria flash (SanDisk, una marca de Western Digital, cuenta con más de treinta años de historia en este campo), más inteligencia podrá incorporar a este firmware para ayudar a maximizar la resistencia.
La ecuación de la resistencia de las SSD
La resistencia de las SSD suele describirse en términos de escrituras de la unidad por día (DWPD, por sus siglas en inglés) durante un determinado período de garantía (normalmente 3 o 5 años). En otras palabras, si una unidad SSD de 1 TB se especifica para 1 DWPD, puede soportar 1 TB de datos escritos en ella cada día durante el periodo de garantía. Alternativamente, si una SSD de 1 TB se especifica para 10 DWPD, puede soportar 10 TB de datos escritos en ella cada día durante el periodo de garantía.
Otra métrica utilizada para la resistencia a la escritura de las SSD es la de Terabytes escritos (TBW), que describe la cantidad de datos que pueden escribirse en la SSD durante la vida útil de la unidad.
La conversión entre TBW y DWPD es sencilla:
DWPD a TBW: TBW = Capacidad(TB) * DWPD * 365 * Garantía(Años)
TBW a DWPD: DWPD = TBW / (365 * Garantía(Años) * Capacidad(TB) )
«1 DWPD» no es igual a «1 DWPD»
Una trampa común en la que caen los usuarios cuando miran las hojas de datos de las SSD es asumir que «1 DWPD» en una unidad significa lo mismo que «1 DWPD» en otra unidad. Cuando las unidades SSD tienen diferentes capacidades, la cantidad total de datos que se pueden escribir en ellas puede variar drásticamente. Tomemos el caso de una unidad SSD de 15 TB, «1 DWPD», y una unidad SSD de 1 TB, «1 DWPD», ambas con una garantía de 5 años.
TBW(15TB) = 15TB * 1 DWPD * 365 días/año * 5 años = 27.375 TBW
TBW(1TB) = 1TB * 1 DWPD * 365 días/año * 5 años = 1.825 TBW
Lo que ocurre cuando se equivoca en la resistencia de las SSD
Elegir una SSD con una resistencia demasiado alta puede aumentar el coste inicial. Sin embargo, en algunos casos una SSD de mayor resistencia puede proporcionar un mayor rendimiento de escritura que una SSD de menor resistencia. Por lo tanto, si su aplicación puede aprovechar el rendimiento adicional de las SSD, puede considerar la posibilidad de buscar un modelo de mayor resistencia.
Sin embargo, elegir un requisito de resistencia demasiado bajo puede aumentar el coste y los problemas a largo plazo. A medida que la cantidad total de datos escritos supera la resistencia de la garantía, aumenta la posibilidad de pérdida de datos y de fallo de la SSD. Los costes y la frustración de sustituir las unidades que fallan o de lidiar con la pérdida de datos pueden acumularse rápidamente.
Cómo acertar
Cuando sepa cuántos datos escribirá su aplicación, la elección del nivel de resistencia es sencilla: Determine la cantidad media de datos que se escriben al día, multiplíquela por el número de días que el servidor está en servicio y utilice ese número como límite inferior de resistencia. Este número medio es un límite inferior porque es prudente añadir espacio para un crecimiento inesperado.
The SSD Endurance Cheat Sheet
Cuando las mediciones de la carga de trabajo no están fácilmente disponibles, hay algunas reglas generales que se pueden utilizar en su lugar. La siguiente tabla contiene una lista de casos de uso y un rango generalizado de DWPD, adaptado de Top Considerations for Enterprise SSDs.
Debido a que estas son sólo reglas generales (de conversaciones con nuestros clientes y equipos de productos), deberían utilizarse simplemente como guías para comenzar las conversaciones con su proveedor al elegir una SSD para su propia aplicación.
Caso de uso | Descripción | Aprox. DWPD |
Unidad de arranque | Unidad de arranque del servidor. Se actualiza sólo periódicamente. Registros y todos los datos permanentes almacenados en otro lugar. | 0.1 ~ 1.0 |
Distribución de contenidos | Aceleración de los frontales CDN. Medios migrados en función de la popularidad. | 0,5 ~ 2,0 |
Vigilancia | Transmisión de escrituras desde múltiples cámaras, operando continuamente, sobrescribiendo la unidad de forma periódica. | Cámaras * BW |
Virtualización y contenedores | Almacenamiento de nivel 0 para contenedores y máquinas virtuales en un sistema hiperconvergente. Los SSD proporcionan todo el almacenamiento local para el clúster. | 1.0 ~ 3.0 |
OLTP Base de datos | Cargas de trabajo intensivas en datos. Actualizaciones frecuentes de los registros de la base de datos y de los archivos de datos, a menudo miles de veces por segundo. | 3.0+ |
Caché de alto rendimiento | Acelera los discos duros locales. Algunas de las cargas de trabajo de escritura más altas posibles. | 3.0++ |
Seleccionar la unidad SSD correcta para su aplicación requiere elegir la resistencia adecuada, especialmente con las nuevas tecnologías flash de hoy en día. Si se toma el tiempo de examinar las hojas de datos y sus cargas de trabajo para seleccionar la resistencia adecuada para su SSD, maximizará su vida útil y minimizará los costes de compra y los gastos de funcionamiento.
Más información
- Resumen técnico: Adaptación de la resistencia de las SSD a las aplicaciones empresariales más comunes
- Documento técnico: Top Considerations for Enterprise SSDs
- Blog: Las implicaciones del coste total de propiedad de la resistencia