by administrador

Share

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.

[asa2_feed]1[/asa2_feed]

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.

Nos encantaría recibir tus comentarios

  1. teo 26 de octubre de 2014 at 19:24 - Reply

    hola, deseo consultarte algo, mirando lo que dices segun lo que entendi, los mejores discos, para servidor son los sdd, pero dime en mi caso tengo la controladora raid lsi 9361, pero estoy indeciso si comprar sdd para un servidor con unas 500 maquinas virtuales, seran mejor los sdd? o los nuevos discos sas de 12 Gbps: http://www.seagate.com/www-content/product-content/enterprise-hdd-fam/enterprise-capacity-3-5-hdd/constellation-es-4/es-es/docs/enterprise-capacity-3-5-hdd-ds1791-3-1403es.pdf puesto que la controladora no es compatible con TRIM aunque los discos sdd traen soporte y es engorroso la degradacion por esta causa, ademas me refiero es si a cuanto a rendimiento seran optimos estos discos duros sas de 12 Gbps, ahora tambien vi que hitachi ha sacado sus discos duros, espero tu consejo, aqui el link de hitachi: http://www.hgst.com/hard-drives/enterprise-hard-drives/enterprise-sas-drives/ultrastar-he8

    • javierin 27 de octubre de 2014 at 08:32 - Reply

      Hola

      Desconozco el detalle del servidor y las maquinas virtuales, pero a priori creo que estás infradimensionando el servidor. Si vas a tener 500 máquinas virtuales en un solo servidor, vas a tener problemas de contención de CPU, RAM, IO de disco. Intentando plantearlo como que solo algunas estarán disponibles, creo que necesitarás bastante espacio.

      Cuanto ocupan tus VMs? Cuantas vas a tener encendidas a la vez? Que comportamiento tienen con el disco? Son intensivas como bases de datos o una vez arrancan ya no hacen nada con el disco?

      Un saludo Teo

  2. Andres 29 de octubre de 2014 at 01:51 - Reply

    Hola Javierín;

    Mi consulta es la siguiente, pues soy novato en esto de los SSD pero me entusiasman mucho. ¿Existe alguna diferencia en el MUNDO REAL si utilizo para base de datos 1 solo disco SSD enterprise vs un RAID 10 con los mismos discos? La base de datos es SQL Server 2008 R2 y su uso no es intensivo (calculo que no mas de 10GB diarios cuando mucho) Lo pregunto porque entre montar una BD en un solo disco eSSD y montarsela en un RAID 10 (4 discos eSSD mínimo) la diferencia de dinero es sideral y tal vez la diferencia en rendimiento (velocidad de acceso a datos, escritura, etc.) no sea tal. La diferencia la daría la seguridad extra que te brinda el RAID en caso de fallo de un disco, pero con la fiabilidad que tienen estos discos SSD Enterprise (explicada en detalle en otro articulo tuyo que leí) esa seguridad extra del RAID se relativiza bastante con un buen backup. Todo esto supeditado a la pregunta: ¿Es realmente mejor el rendimiento de una BD en un RAID que en un solo disco? sobre el entendido que la base de marras cabe en un solo disco, obviamente. Gracias de antemano por tu respuesta.

    • javierin 29 de octubre de 2014 at 17:38 - Reply

      El problema del mundo real que te puedes encontrar cuando usas 1 único disco de datos para un servidor es que se rompa, ya que no tienes otro disco con el que seguir manteniendo el servicio y te toca recuperar uno de tus backups (que obviamente has de realizar con frecuencia, junto con pruebas de restauración e integridad de los datos). La configuración que me comentas de RAID 1+0 está bien, pero dudo que la controladora de disco a la que vas a conectar esos SSD sea capaz de sacar todo el jugo de IOPS que puedes obtener de esos discos. Además, una configuración RAID 1+0 puede causar un fallo total del array en caso de que se rompan dos discos de la misma pareja, es decir:

      Si el RAID 1+0 es de 4 discos con la forma
      1 -R1-> 2
      3 -R1-> 4
      Tomando como base que el raid 1 se hace entre los discos 1 y 2, y entre el 3 y 4, el fallo de los discos 1 y 2, o de los discos 3 y 4 (simultáneo o antes de que se termine de reconstruir tras insertar uno de reemplazo) te deja sin raid.

      Te recomiendo que hagas configuraciones o RAID1 de dos discos, o RAID6 (doble paridad) de 4 díscos mínimo, o bien tener un disco de sobra preparado para necesidad de reemplazo.

      Sobre el rendimiento de la base de datos, depende puramente de los patrones de acceso de la base de datos. Si es una base de datos que realiza full table scans o accesos muy secuenciales, podrías sacar beneficio de esa tasa de transferencia adicional, sin embargo, has de preguntarte también si el servidor que va a manejar la base de datos es capaz de procesar los casi 1.2 Gbytes/segundo que pueden ofrecer 2 discos SSD en paralelo.

      Si por el contrario tu patrón de accesos es totalmente aleatorio, es bastante probable que te topes con la limitación en el lado del servidor antes que saturar el SSD. En ese caso nos daría mejor rendimiento hacer un particionamiento de la base de datos en diferentes volúmenes SSD.

      Espero que te haya ayudado mi respuesta.

  3. AndresG 29 de octubre de 2014 at 17:19 - Reply

    Hola, ayer postie algo aca y hoy no lo veo. Asi que aqui va de nuevo: Soy entusiata de los SSD pero no soy muy experto en ellos. Mi pregunta va por el lado de las bases de datos (en adelante BD). ¿Se nota mucho, EN EL MUNDO REAL, la diferencia de tener instalada una BD en un solo disco SSD a tenerla instalada en un RAID 10 de discos SSD?? Me refiero a diferencia en renidmiento, velocidad de acceso, escritura, etc. La BD en cuestión es MS-SQL Server 2008 R2, pesa apenas 45GB y su uso no es intensivo (todos los días crece apenas entre 100-200MB). Se que un RAID te da seguridad por si un disco falla, pero con lo fiables que ahora son los SSD con un buen servicio de backup puedes arreglartelas. Pero si hay diferencia en rendimiento la cosa cambia. ¿Es mucha ventaja usar SSD en RAID para una BD??? ¿me quedo con el SSD modo single? Gracias de antemano por vuestra respuesta.

    • javierin 29 de octubre de 2014 at 17:40 - Reply

      Siempre que te asegures de que tu backup contiene TODO lo necesario para una restauración y lo pruebes regularmente, coincido en que el backup es la mejor garantía de tranquilidad para tus datos. Igualmente, puedes tener un disco Spare para reemplazar uno que se rompa dentro de un RAID1. Incluso te diría más, puedes tener uno de gama escritorio e igual o mayor capacidad preparado para un desastre y utilizarlo para reconstruir el raid (aunque no vaya a rendir lo mismo) mientras compras en el proveedor de harware un reemplazo para tu SSD Enterprise. De esta forma tendrías inmovilizado mucho menos dinero en disco SSD.

  4. Carlos 15 de diciembre de 2014 at 09:22 - Reply

    Hola, trás leer tu post me gustaría pedirte ayuda si fuera posible. Vamos a montar un servidor en la empresa y en el que habrá unas 50 conexiones con accessos continuos a la base de datos, más copias de seguridad más otros accessos y gestión desde el servidor. Para algo así que tipo de discos sería lo más recomendable?

    gracias de antemano. Un saludo.

    • javierin 15 de diciembre de 2014 at 09:43 - Reply

      Hola

      Que base de datos en concreto va a ser? Dispone de índices efectivos o por el contrario está todo el dia haciendo full table scans?
      Al parecer por lo que comentas, el rol principal de este servidor va a ser base de datos, independientemente de que al final vaya a ser multipropósito. Si esto es efrectivamente así, yo compraría una pareja de discos SSD dedicados a los datos de la base de datos y sus archivos temporales. El resto del almacenamiento podrías usar SAS o NL-SAS, dependiendo de tus necesidades de espacio y presupuesto. En cualquier caso, no compres discos de sobremesa, sobre todo en los discos rotacionales. Unos Enterprise os costarán algo más de dinero pero tendréis 5 años de garantía y firmwares optimizados.

  5. Carlos 15 de diciembre de 2014 at 10:47 - Reply

    Gracias Javier. La base de datos en principio es Access. Se usará para multiprópisto pues desde el servidor se regularán los accesos y los permisos de los tecnicos. Se harán muchos accesos diarios tanto a la base como a uso de otros ficheros, además de compartición de impresoras y demás. Para copias de seguridad había pensado en un disco por usb para copias semanales y harían falta copias diarias en ¿qué tipo de disco?

    PD: no me salen los enlaces. xD

    Un saludo

    • javierin 15 de diciembre de 2014 at 11:16 - Reply

      Hola Carlos

      La opción del USB puede ser también válida siempre que asumas que tus datos estarán físicamente junto al servidor, por lo que una inundación/fuego se los llevaría por delante junto con tu copia original de los datos. Además, si tenéis que cumplir alguna normativa ISO, es posible que tengáis que tener controlado el acceso a donde está el servidor para que nadie pueda irse alegremente con el backup de los datos de la empresa en el bolsillo (o cifrar el disco usb).

      Aparte de esto, Para tus copias diarias, puedes hacerlo en cualquier disco SATA sin problema. Los volcados/backups suelen ser actividades secuenciales, así que puedes dedicar a ellos cualquier disco funcional que tengas a mano, incluso el típico SATA de 80-200GB que has retirado de algún ordenador viejo. Monitorizalo con alguna herramienta de comprobación SMART para detectar fallos.
      A ver si con estos enlaces lo ves mejor:
      SSD para servidor Samsung 845DC EVO 240GB precio contenido, pero buena durabilidad
      Disco SATA Hitachi Enterprise 2TB 5 años de garantía, gama enterprise.

  6. alex 13 de enero de 2015 at 02:11 - Reply

    Hola, soy muy novato en todo esto, pero resulta que tengo una web en la que me ha ido bien y me pide demasiados recursos de servidor. Es una especie de red social, en la que los usuarios suben foto, sus estados, pueden buscar canciones, hay foro y chat… voy cambiando de servidores y en todos va lento con llegar a los 50 usuarios online porque tengo unas bases de datos enormes y el script de esa red social hace muchísimas consultas. Entonces qué me recomendarías? me han comentado que podría coger dos servidores con balance de cargas para distribuir el tráfico y luego otro servidor con las base de datos… entonces debería coger en todos los discos SSD? o sólo en el de la base de datos que según todo el mundo es el que más ralentiza mi web? y a cual le debería meter más potencia en cuanto a ram y demás? al de la base de datos? siento si me he desviado un poco del tema de los discos pero necesito ayuda, agradezco la que me puedas aportar. Como digo soy novato, no entiendo muchos de los términos, con lo que si es una respuesta sencilla muchísimo mejor
    PD: las bases de datos están en myISam y me recomiendan pasara innoDB, no sé lo que es, y tampoco sé si influye a la hora de elegir los discos
    Gracias

    • javierin 15 de enero de 2015 at 14:11 - Reply

      Sospecho que el problema que tienes viene más de que te faltarán índices que hagan las búsquedas más rápidas. (aparte de una posible necesidad de cambiar la estructura de la bbdd u optimizar el código) Igualmente, poner todo en SSD no es disparatado tampoco, ojo.

  7. JL 23 de enero de 2015 at 16:37 - Reply

    Excelentes posts, ayudan mucho !

    Gracias

  8. jfibergran 14 de enero de 2018 at 23:26 - Reply

    Hola, aunque el post es muy antiguo, me gustaría pedir tu ayuda…

    Actualmente tengo 1 servidor con proxmox, usado para máquinas virtuales con servidores web que sirven datos de una base de datos de prostgresql, todas las máquinas son réplicas unas de otras, pero con datos distintos.

    El caso, es que actualmente tenemos unas 100 máquinas por servidor y el acceso a disco es muy lento. Estoy planteando la idea de usar SSD. En concreto los crucial MX500, que no son enterprise pero tienen buen rendimiento. Los precios de los Discos duros enterprise son demasiado elevados.

    Había pensado montar 1 raid10 con 6 unidades ssd de 1tb con crucial mx500. En ellos pondría las máquinas con BBDD y servidor web, por otro lado, usaría dos unidades de disco wd red de 3tb con un raid1 para las copias de seguridad de estas máquinas. Y el sistema iría en 2 discos wd gold de 500G ¿te parece buena configuración? ¿se te ocurre algo mejor?

    Saludos,

    • Admin 13 de febrero de 2018 at 11:05 - Reply

      Tanto ocupan tus VMs como para no poder meterlo todo en SSD? En mis plantillas de VM el sistema apenas sobrepasa los 2 GB y si hablamos de contenedores, apenas supera los 100MB.

  9. Enrique Martínez 18 de octubre de 2018 at 15:54 - Reply

    Estimado: Tengo un disco duro Seagate Constellation ES.3 Modelo ST 4000NM0023 de 4 Terabytes, me gustaría saber como puedo utilizarlo en una PC de escritorio marca Aztek con procesador Intel Celeron. Me dicen que el disco es SAS y que la maquina utiliza discos SATA. Habría forma de utilizar el disco SAS. Si es así que necesito para ello. Por el tiempo que te tomes en la respuesta muchas gracias.

  10. Enrique Martínez 18 de octubre de 2018 at 15:59 - Reply

    Javier: Necesito conectar un disco SAS a una Pc basica con SATA, es posible. Gracias.

    • Admin 2 de noviembre de 2018 at 14:23 - Reply

      No es posible. Si es posible al revés. Las controladoras SAS si aceptarán discos SATA, pero no a la inversa.

Entradas relacionadas