Diferencias entre discos SATA, SAS, NL-SAS, SSD
Antes de nada quiero aclarar que SATA y SAS (y NL-SAS) son interfaces mientras que SSD es un tipo de disco con tecnología flash que usa SAS o SATA como interfaz igualmente.
¿Que características tienen los discos SATA, SCSI, SAS y NL-SAS?
Discos duros SATA: Perfectos para sobremesas, portátiles, pequeños servidores de desarrollo. Hosts para virtualización en los que no haya actividad de disco de más de 5 VMs. Perfectos para hacer raids para almacenamiento barato de backup. Tienen una tasa de fallos elevada comparada con otros tipos de disco más costosos.
Discos duros SCSI: Este estándar hace años que ha caído en desuso. Es similar al SCSI, pero hoy en día no vas a encontrar esto en el mercado.
Discos duros NEARLINE-SAS: Suelen ser discos sata optimizados con firmwares enterprise (mejoras en comprobación de errores, etc). Aunque mucha gente los denomina SATA renombrado, realmente llevan una cola de comandos mayor, permiten usar más de un canal de comunicación de forma simultánea y control por más de un host de forma simultánea. Los discos NL-SAS tienen la MISMA durabilidad que los SATA a nivel mecánico.
Discos duros SAS: Son el reemplazo natural a SCSI. Disponen de una interfaz compatible físicamente con SATA, consumen menos energía, disponen de mejor rendimiento en condiciones de estrés que los discos sata y ofrecen una fiabilidad bastante mayor tras un uso intensivo como el que se le puede dar en un servidor de carga media. También ofrecen posibilidad de llegar a mayores velocidades rotacionales debido a los procesos más afinados de su fabricación.
SSD: Son los nuevos en el panorama. Aparecieron hace unos 6 años (Mi primer SSD fue un Intel X25-M que aún funciona, desde 2009 que lo compré) y ofrecen una relación coste / rendimiento difícilmente equiparable. Estos no son propiamente discos, sino que se basan en las tecnologías de almacenamiento flash para guardar la información y una primera categorización podría ser según el tipo de memoria que lleven dentro.
Tipos de memoria SSD: SLC, MLC, eMLC, TLC
SLC (cara y extremadamente duradera). Es la que cualquier fabricante te vende en sus discos Enterprise SSD a unos precios ridículamente altos (3000€ por un disco de 200GB). Cada celda utilizada en la flash SLC representa un bit. He utilizado varios discos de HP SLC (de 120 GB) y llevan funcionando más de 2 años en bases de datos de uso intensivo que escriben cientos de gigas a lo largo de cada día.
MLC (más barata y al principio menos duradera, aunque esto ha ido cambiando con los años). Cada celda de flash MLC almacena dos bits, que pueden encontrarse en 4 estados diferentes, «00, 01, 10, 11». Al tener que modificarse cada vez que uno de estos dos bits cambian, la durabilidad se ve reducida en comparación con la flash SLC. Es el tipo de memoria habitual de los SSD de escritorio. Utilizo a diario equipos con este tipo de memoria que tienen instalados: 1x OCZ Agility 2, 2x OCZ Agility 3, 1x OCZ Vertex 3, 2x Intel 520, 2x Samsung 840 Pro y un Intel DC S3500. De estos, ha muerto el OCZ Agility 2 en un apagón eléctrico. Los Intel 520 llevan escritos 120 Terabytes y tienen un estado de salud del 94% en una escala de 0 a 100.
eMLC (Enterprise Grade MLC) La arquitectura es la misma que en MLC, se almacenan dos bits por cada celda de memoria, pero la memoria se selecciona en fábrica para tener mejor durabilidad. Tiene una fiabilidad muy superior a la de los SSD de escritorio. Personalmente he probado cuatro Intel DC S3700 y no puedo más que recomendarlos.
TLC (aún más barata y con una durabilidad aún un poco reducida). En este caso, la información se agrupa todavía más y cada celda de flash almacena tres bits, lo cual da ocho estados posibles: «000, 001, 010, 011, 100, 101, 110, 111». Esto hace que sea más probable que en MLC que un cambio en la información afecte a una celda de flash, lo que repercute en menor durabilidad que MLC.
Recomendación de discos duros
El mejor almacenamiento para guardar muchos datos, o realizar backups es el SATA. Si usas RAID y tus discos son grandes, de 1 TB o más, te recomiendo fervientemente el uso de una controladora raid hardware y el uso de RAID-6. Con el aumento de tamaño de los discos, la probabilidad de encontrarte con un bit irrecuperable durante la reconstrucción (que tiene que leerse TOOOOOODOS los discos enteritos), es cada vez más alta. Tener RAID-6 te ofrece un segundo disco de paridad en el que apoyarte si encuentras uno de estos bits chungos en el momento crítico de la reconstrucción.
Según los estudios realizados por un fabricante de almacenamiento de backup (backblaze), los discos SATA Hitachi tienen mejor durabilidad con el paso de los años. Los Western Digital Red también están ganando muchos seguidores desde hace un par de años.
El mejor almacenamiento para hosts de virtualización con poca carga y que usen almacenamiento local es el SAS. En un entorno virtualizado, un fallo de discos puede llevarse por delante de golpe varios servidores. SAS te ofrecerá mejor fiabilidad. Como siempre, te recomiendo una controladora raid hardware que tenga un mínimo de caché y batería. Deshabilita la caché de los discos y usa la de la controladora. La batería de la controladora preservará tus datos hasta 48 horas incluso si se ha ido la luz. Cuando el servidor se encienda de nuevo, esos datos se volcarán a disco inmediatamente.
El mejor almacenamiento para servidores de bases de datos y entornos virtualizados con una carga media es el SSD local. Hoy en día un SSD Intel S3700 de 400 GB cuesta unos 800 euros. Teniendo en cuenta que da un rendimiento unas 600 veces superior a un SAS de 15000 RPM, no me parece nada exagerado.
Para entornos con almacenamiento compartido, como clústeres de virtualización te recomiendo que busques lo más rápido que puedas permitirte. Piensa en tus visitas al datacenter. Visualiza las luces de los discos duros de 2 racks enteros parpadeando cuando la sala está a oscuras. Ahora imagina que esos servidores se virtualizan y todas esas luces son accesos simultáneos a un único almacenamiento compartido. Según mi experiencia, un entorno de 600 VMs en 16 hosts, con una carga de trabajo media, se pueden llevar del orden de 3000 IOps. Esto son 20 discos SAS sudando la gota gorda. Para estos entornos, sé todo lo temeroso que quieras. Los desastres ocurren. Una doble fuente de alimentación te ahorrará disgustos. Una doble controladora te hará dormir más tranquilo. Un segundo array de discos te permitirá repartir tu información o incluso replicarla. Un contrato de mantenimiento con un fabricante serio te permitirá tener un disco roto reemplazado en pocas horas.