Un análisis detallado de la protección contra la pérdida de energía de los SSD

La protección en caso de pérdida de energía “Power Loss Protection" (PLP) en los SSDs no es un concepto nuevo, pero las aplicaciones y técnicas para salvaguardar un SSD durante y después de un evento de pérdida de energía han mejorado sustancialmente en los diseños recientes del SSD. El objetivo de la protección en caso de pérdida de energía es alcanzar dos metas principales:

  • Drenar con seguridad los datos de forma simultánea (o los datos que residen en los buffers de caché de la DRAM o SRAM del dispositivo) a la memoria persistente o no volátil Flash y
  • Mantener la integridad de la tabla de asignación del SSD, para que el SSD sea reconocido y utilizable una vez más, después de reiniciar el sistema

Nota: La tabla de asignación del SSD, alias Nivel de Transición Flash (FTL), es responsable del mapeo físico y lógico de los datos en el SSD

Bajo una proceso de apagado de sistema normal, el SSD recibe el comando (Comando inmediato de reposo) del dispositivo ATA huésped, alertando al SSD de que el sistema se está apagando y el SSD se prepara para la remoción de la energía. En proceso de apagado de sistema normal, el SSD tiene mucho tiempo para drenar sus buffers de caché y actualizar sus tablas de asignación.

Un SSD bien diseñado empleará un diseño basado en hardware con condensadores incorporados de retención de energia en el SSD y/o la implementación de un PLP basado en firmware, donde la información de metadatos importante es escrita en la Memoria Flash para asegurar la exitosa recuperación del SSD en su siguiente proceso de encendido. Kingston actualmente utiliza condensadores de polímero de tantalio para PLP.

Los SSDs de las primeras generaciones no eran tan resilientes a las pérdidas repentinas de energía como los modelos actuales Era común que un SSD que experimentaba un evento de pérdida repentina de energía, dejaba de responder para el siguiente ciclo de energía. En la mayoría de estos primeros casos, el evento de pérdida de energía dejaba al SSD en un estado irrecuperable y ocurría la pérdida de datos.

Una mirada cercana a los dos enfoques de PFAIL

PLP basado en hardware– El PLP basado en hardware está diseñado con el objetivo principal de reducir la pérdida de datos al retener la energía para el SSD por medio de condensadores incorporados de retención (Power Caps) el tiempo suficiente para que los datos que residen en el búfer de caché del SSD puedan ser escritos a la memoria Flash, y las tablas de asignación sean actualizadas. Un resumen conceptual acerca de un evento típico en un PLP basado en Hardware en un SSD se verá así.

La pérdida repentina de energía es detectada por el controlador SSD

  1. Los condensadores incorporados sostienen la energía del SSD
  2. El controlador envía un comando interno para drenar sus buffers de caché
  3. El controlador actualiza sus tablas de asignación como preparación ante remoción de la energía
  4. El dispositivo se apaga gradualmente

PLP basado en Firmware – El PLP basado en firmware también está diseñado para reducir la posibilidad de pérdida de datos, al asegurar la habilidad del Firmware de reconstruir la tabla de asignación la próxima vez que se encienda el dispositivo después de un evento de pérdida de energía. Un resumen conceptual sobre un PLP basado en firmware se verá así:

  1. La tabla de asignación del SSD se almacena en la memoria flash y es actualizada en la DRAM
  2. Cuando los nuevos datos son escritos en el SSD, el firmware actualiza la tabla de asignación
  3. Los nuevos datos que son escritos, son escritos siempre con etiquetas (o bytes de repuesto), las cuales incluyen LBA, EEC y otra información sobre los datos de la estructura
  4. Pérdidas repentinas de energía
  5. Los bytes de repuesto que contienen la información sobre los datos de la estructura, combinados con la tabla de asignación original le permite al firmware del SSD reconstruir la tabla de asignación del SSD la próxima vez que este se encienda

El PLP basado en firmware es un método altamente efectivo de prevenir la pérdida de datos en las aplicaciones de almacenamiento de tipo empresarial. Por ejemplo, es esencial que los SSDs configurados en arreglos sean capaces de recuperarse y volver a un estado saludable después de un evento de pérdida de energía, para retener la integridad del arreglo RAID. Uno o varios miembros fallidos del arreglo pueden resultar en un arreglo fuera de línea con un alto potencial de pérdidas de datos.

Otro escenario empresarial podría involucrar SSDs que forman una gran "pool compartido" de almacenamiento donde los SSDs físicas son segmentados en múltiples LUNs y se comparten para múltiples huéspedes. La alta disponibilidad es una consideración crítica de diseño en este ejemplo, y el PLP basado en firmware asegura que el SSD que sirve a estos LUNs y huéspedes se recupere exitosamente.

Kingston hace que la resiliencia a pérdida repentina de energía sea una máxima prioridad.

Como parte de su proceso de cualificación estándar, Kingston® somete a sus SSDs (cliente y empresarial) a pruebas cíclicas de ingeniería de apagado y encendido muy extenuantes. Además de las pruebas de compatibilidad, rendimiento y resistencia, los SSDs de Kingston deberán aprobar exitosamente numerosos eventos de pérdida de energía inseguros, reinicializarse y ser totalmente funcional para poder aprobar el proceso de cualificación. Si un SSD se "bloquea" durante una prueba de pérdida de energía, la prueba de cualificación de ingeniería se detiene, y el proceso de cualificación empieza otra vez de cero.

Conclusión

Cada aplicación y ambiente es único, y algunas consideraciones deben ser tomadas en cuenta cuando se decide qué tipo de PLP se ajusta a su ambiente.

La mayoría de las aplicaciones empresariales de hoy en día están protegidas con un suministro de energía de sobra, sistemas de respaldo por batería y generadores de energía para mantener a los centros de datos ejecutándose en caso de una pérdida inesperada de energía. El Software y las redes de alta velocidad han pavimentado el camino para un aumento en el número de arquitecturas para la replicación de datos, quitando el hardware como punto de falla único.

La estabilidad de la energía del centro de dato, junto a las prácticas High Availability (HA) “alta disponibilidad” , deberán ser factores significativos para determinar qué tipo de PLP para el SSD se ajusta mejor a una aplicación de almacenamiento.