¿Por que fallan los discos SSD?

Leo en abadiadigital que, en los portátiles con discos sólidos, la tasa de devoluciones se encuentra entre el 20% y el 30%. La mayoría de las devoluciones se deben a fallos en las unidades de disco, pero también se están produciendo muchas devoluciones porque el rendimiento de estas unidades es inferior al de un disco duro normal. ¿Por que esta ocurriendo todo esto?

La explicación rápida es que estamos ante una tecnología nueva y, en consecuencia, todavía requiere afinarla; la explicación completa hay que buscarla en la forma como funcionan los chips de memoria flash, el componente en el que están basados este tipo de unidades.

Para ser mas precisos, las memorias flash presentan unas limitaciones muy importantes:

  • Numero limitado de borrados: En los chips de memoria flash el borrado de una celda de memoria requiere una descarga eléctrica de una tensión relativamente elevada; esto hace que, con cada operación de borrado, la celda se deteriore hasta quedar inutilizada. En la práctica, el número total de borrados ronda el millón. En las aplicaciones habituales de las memorias flash (cámaras fotográficas o reproductores multimedia) llevará años realizar un número tan elevado de borrados, pero en un ordenador personal, donde el disco duro está trabajando de forma casi continua, esta cifra se puede alcanzar en muy poco tiempo.
  • El borrado es una operación peligrosa: La naturaleza destructiva de las operaciones de borrado hace la fiabilidad de estos componentes sea muy inferior a la de un disco duro convencional. No es solo que un borrado pueda destruir las celdas afectadas, es que el deterioro que sufren hace que sus probabilidades de fallar en el momento de realizar una operación de lectura o escritura vayan aumentando con el tiempo.
  • El borrado se ha de hacer por páginas: En los circuitos flash las celdas de memoria están agrupadas por sectores de 512 bytes (como en las unidades de disco), y estos sectores a su vez se agrupan en páginas de un tamaño relativamente grande, del orden de 128kb o 256Kb. Las operaciones de lectura o escritura se hacen por sectores, pero el borrado se hace por páginas; es decir, cada orden de borrado supone limpiar 256 o 512 sectores del disco.

Despues de leer estas limitaciones queda claro porque la tasa de fallos es tan alta; simplemente, la fiabilidad de estos componentes es mucho menor que la de un disco duro convencional. Ahora queda explicar el problema del bajo rendimiento; si siempre se nos ha dicho que las memorias flash tienen unos tiempos de acceso muchísimo menores que un disco duro, ¿Como es posible que los discos SSD sean mas lentos que los convencionales?

De lo dicho anteriormente se desprende que el controlador de memoria flash debe estar programado para reducir al mínimo el número de borrados, algo que no es nada fácil si pensamos en el hecho de que los sectores no se pueden borrar individualmente. Es decir, si queremos borrar un sector no podemos aplicar la solución obvia: Leer la página, borrar la página, reescribir la página pero sin el sector que queríamos eliminar. Hacer esto supondría inutilizar el disco en muy poco tiempo.

La solución es trabajar mediante transacciones; es decir, cuando el sistema ordena borrar un sector la operación no se ejecuta físicamente, sino que se escribe una anotación en el disco indicando que se ha dado esta orden. Cuando se ordena una operación de escritura que, para ejecutarse, necesita borrar datos (vamos a sobreescribir un sector)  se procede de la misma manera. Esto significa que el disco se va llenando con una lista de operaciones a realizar y, cuando el espacio libre empieza a escasear, se ejecuta la transacción; es decir, todas las operaciones de borrado y sobreescritura pendientes se ejecutan en bloque y el espacio extra se libera.

Trabajar de esta forma no tiene ningún efecto negativo si el trabajo que hace el disco consiste en leer o escribir archivos de gran tamaño; casualmente, así es como trabajan los reproductores multimedia y cámaras de fotos, que es la aplicación habitual de las memorias flash. El problema es que los PCs no trabajan así; en los ordenadores lo habitual es que se lean y escriban bloques de datos de pequeño tamaño de forma casi continua. Un buen ejemplo son los programas de correo electrónico; cada vez que llega un correo nuevo hay que grabarlo en el disco, en el momento en que lo leemos hay que escribir la marca de leído, … cada operación que hacemos con nuestro programa implica escribir en el disco una cantidad muy pequeña de información.

En resumen, que un programa de correo electrónico genera una carga enorme de trabajo sobre el controlador de nuestro disco SSD; eso explica porque estos discos pueden llegar a ser mucho mas lentos que los convencionales.

Respuestas33 a “¿Por que fallan los discos SSD?”

  1. [...] tiempo hablaba de los problemas que dan los discos SSD, que se traducen en problemas de rendimiento y fiabilidad. Ahora, podemos ver estas diferencias en [...]

  2. elbien dice:

    recuerdo antes de todos esto al desarollador del puppy linux comentando que habia quemado un par de memorias flas por haber intentado usarlas como disco duro (su sistema operarivo cabia en 120 mb), y lo soluciono con cargar todo el sistema en memoria y grabar sesiones al finalizar, algo asi como lo que comentaba lordreyden, claro que con un sistema operativo que necesita 2gb para arrancar, estas cosas serian impensables, lo que me deja pensando un poco sobre quien es el del problema en este caso…
    (por ejemplo, si se me cuelga mi windows vista, y el disco tiene un monton de operaciones de borrado y escritura en espera, es muy probable que el sistema no quiera arrancar luego, yo creo que un 20 o 30% de las veces)

  3. Tecnomilton dice:

    ¿que acaso no existe un driver capaz de manejar correctamente a estos SSDs? eso de no borrar celdas hasta que se haya grabado todas deberia ser un estandar en estos polemicos.

  4. [...] un año hablaba sobre las limitaciones de los SSD y porque son menos fiables que los discos mecánicos convencionales. En este hilo de Slashdot [...]

  5. monitor dice:

    Dudo mucho, pero mucho que esto de que los hd ssd sean menos fiables y tambien dudo que el borrado afecte en algo al SSD si fuera así.
    He hecho pruebas y despues de un borrado se recuperan los datos incluso despues de un formateo, por lo tanto funciona igual que una CF o un HD, si fuera como comentas los datos seria irecuperables ya que todo estaria a 0

  6. Alwar dice:

    Claro, porque cuando formateas lo que borras no es ese sector fisico, si no que borras una entrada en la lista de archivos que tiene tu sistema de ficheros. Si haces un formateo “lento” si se borraría todo y no podrías recuperar nada. Igual pasa con los archivos, cuando tu borras uno, incluso uno que esta en la papelera de reciclaje lo que haces es borrar la referencia a el, y como has borrado la referencia, no sabes en que sector del disco está y por tanto no puedes leerlo. Esto hace que las operaciones de escritura sean menores.

    Y básicamente escritura = borrado, ya que cada bit solo puede se 1 o 0, luego según el protocolo cuando borres pondras a 0 o 1, y cuando escribes pues pondras 1 o 0 según los datos que estés guardando.

  7. [...] se alcanzan las mismas velocidades en la escritura de datos en el disco, por problemas intrínsecos de las memorias flash, pero las mejoras en este aspecto han sido notables en los últimos años y [...]

  8. [...] con SSD han sido devueltos a las compañías por mal funcionamiento, esto, principalmente, debido a la forma en que éstas funcionan sobre todo en operaciones de borrado donde se requiere una descarga de energía que afecta la celda donde se almacenan los datos [...]

  9. EEDU dice:

    Y yo me pregunto, ¿si en el disco SSD con S.O. de Windows “no borramos nada” de la papelera de reciclaje, y la dejamos siempre llena, y cada semana o mes, la vaciamos del todo ?
    ¿mejoraria el rendimiento de los discos SSD?

    EEDU

    • alejandro dice:

      Aparte de lo de la politica con la papelera de reciclaje; tambien debes reubicar en otra unidad el archivo swap; los Temp y por ultimo Mis Documentos.

  10. alejandro dice:

    Aqui hay una guia de usuarios; como se daran cuenta, en Europa y USA, estas unidades SSD han sido muy requeridas por gamers y servidores. Sin embargo la lista de fallas es interminable y por lo que veo, esto esta recien en etapa de desarrollo.

    http://www.tomshardware.com/reviews/ssd-performance-tweak,2911.html

    En mi caso uso un disco RAID 0 (2 x 80 GB ) para almacenar los juegos.
    Una vez, sin darme cuenta instale en C: ( 40 GB sata) todo mi STEAM ( servidor de juegos); pero sucedia que los juegos propiamente dichos tambien se almacenaban alli.
    Cuando arme nuevamente la maquina, decidi instalar STEAM en el RAID donde habitualmente instalaba los otros juegos…..EUREKA!!!!, los cuello de botella disminuyeron notablemente, y todo lo relacionado con mis juegos STEAM se cargaban y liberaban mas rapido.
    Supongamos: un RAID de 2 x 500GB marca WD con 32Mb de cache cuesta la mitad que un solo disco SSD de 60GB.
    Todavia le falta mucho camino a los SSD. Suerte.

  11. Alex dice:

    Si asi es no entiendo el por que crear una tecnologia tan cara, limitada en capacidad, en uso y con un rendimiento inferior, algo falla en este planteamiento

  12. Alex dice:

    A dia de hoy efectuando pruebas con SSD Kingston de 256Gb con Barracuda 7.200, el SSD supera en 200% las tasas de transferencias, tanto en tatos logicos como en paquetes incomprensibles, los cuales son los problematicos para las controladoras, asi mismo lsi hablamos de IOPS, estos son claramente superior a los clasicos HDD, para alcanzar las tasas de los SSD tienes que montar Raid con varios discos duros.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Random Plugin created by Best Account Services