El almacenamiento en la nube es un componente imprescindible del cloud computing, AWS ofrece una gama completa de servicios de almacenamiento pero eso puede generar un poco de confusión para los usuarios a la hora de elegir el servicio adecuado.
Por ello en este post vamos a analizar los 3 principales servicios de AWS que son Amazon Elastic Block Store (Amazon EBS), Amazon Simple Storage Service (Amazon S3) y Amazon Elastic File System (Amazon EFS).
A través de esta comparación lo que queremos es darte las herramientas necesarias para identificar la mejor opción que se ajusta a tus necesidades.
Pero antes de pasar a la comparativa empezamos primero por definir cada uno de estos servicios.

Qué es Amazon S3?

Es un servicio de almacenamiento de objetos diseñado para realizar copias de seguridad y archivar en línea los datos y las aplicaciones en los servicios web de Amazon.
Cada objeto se almacena como un archivo con sus metadatos incluidos y se le asigna un número de identificación.
S3 ofrece capacidades de conformidad y seguridad integrales que cumplen con los requisitos normativos más estrictos. Está enfocado para el contenido estático de las webs, aplicaciones, hosting …
Además, S3 ofrece la posibilidad de configurar el ciclo de vida de los objetos para administrarlos de manera económica durante todo su ciclo de vida a través de definir el momento en que un objeto pase de una clase de almacenamiento a otra más barata (de menos acceso).

Qué es Amazon EBS?

Es un servicio que proporciona almacenamiento de bloques persistentes (a largo plazo) con la instancia de EC2 de AWS. Los volúmenes almacenados en EBS se replican automáticamente dentro de una zona de disponibilidad para ser protegidos frente a los errores y desastres que pueden ocurrir, ofreciendo alta disponibilidad y durabilidad.
Generalmente EBS se utiliza para proporcionar respaldo y recuperación de desastres o almacenamiento más tradicional para cargas de trabajo en la nube, que puede ser el caso de las bases de datos relacionales y otras Business Applications.

Qué es Amazon EFS?

Este servicio ofrece almacenamiento simple escalable y elástico basado en discos de estado solido (SSD) por demanda para instancias EC2 y escala en función de las necesidades de almacenamiento, ofrece una interfaz simple que te permite crear y configurar sistemas de archivos de forma rápida y sencilla.
EFS es muy recomendable para tareas a corto plazo que pueden ser sensibles al rendimiento, como por ejemplo los entornos de desarrollo. Este servicio puede estar también utilizado en tareas a largo plazo como repositorio de datos para servidores de medios por ejemplo.

Ya que tenemos los tres servicios definidos pasamos a realizar una comparativa en función de los costes, tamaño, rendimiento y otras características que te permitirán elegir la opción correcta y adecuada a tus necesidades.

Caracteristicas
Amazon S3 Amazon EBS Amazon EFS
Coste de almacenamiento (ej.región de de US-East) - Primeros 50TB mensuales/ a 0,023$
Siguientes.
- 450 TB a 0,022$ por GB.
- Más de 500 TB mensuales a 0,021$ per GB.
- Volumen de uso general (gp2) a 0,10 USD-mes.
- SSD de IOPS provisionados (io1) 0,125$ de almacenamiento aprovisionado y 0,065 usd por IOPS aprovisionado al mes.
- Almacenamiento estándar a 0,3$ Gb/mes.
- Rendimiento aprovisionado a 6$ por MB /mes.
Tamaño de almacenamiento Sin límite de objetos 16 TB máximo Sin limitación del file system
Limitación de tamaño de archivos Los objetos individuales pueden variar desde un mínimo de 0 bytes hasta un máximo de 5 TB. Sin limitación en el Disco EBS Los archivos individuales tienen un limite de 47,9TB
Rendimiento - El servicio administrado es altamente escalable admite 3500 solicitudes PUT/LIST/DELETE por segundo.
- Soporta 5500 solicitud por segundo.
- Escala manualmente el tamaño de los volúmenes sin detener la instancia.
- Rendimiento de referencia de 3 IOPS por GB para volumen de uso general
- - Utiliza IOPS aprovisionados para aumentar el rendimiento
Servicio altamente escalable
Soporta hasta 7000 operaciones del sistema de ficheros por segundo
Datos almacenados - Los datos almacenados se quedan en la región
- Las réplicas se realizan dentro de la región en múltiples zonas de disponibilidad.
- Los objetos de Amazon S3 se pueden copiar a otra región mediante la función de replicación de región cruzada.
- Los datos almacenados permanecen en la misma zona de disponibilidad.
- Las replicas están hechas dentro de la AZ para una mayor durabilidad.
Los datos almacenados en EFS se quedan en la región
Las replicas se realizan dentro de la región
Acceso a los datos Accesible a través de internet según la política de acceso configurada Solo se puede acceder mediante una única instancia de Amazon EC Se puede acceder de 1 a 1000 de las instancias de EC2 desde varias AZ, al mismo tiempo
Disponibilidad La disponibilidad de los objetos es de 99,99% 99,99% Altamente disponible (sin SLA publico)
Problema eventual de consistencia AWS Amazon S3 ofrece una eventual coherencia para sobrescribir PUTS y DELETES en todas las regiones. Sin problemas Sin problemas

En conclusión podemos decir que S3 es el servicio más barato, siendo configurable y accesible desde cualquier sitio. EFS es mucho más caro que EBS, pero EBS solo puede ser accesible desde una instancia Amazon EC2, pudiendo generar un problema para algunos tipos de aplicaciones. Sin embargo, Amazon EFS es más potente cuando se trata de sistemas de archivos compartidos y escalables.
Una consideración importante a tener en cuenta es que hoy en día hay aplicaciones donde se pueden utilizar las tres opciones en función de la modularidad que tenga.
Lo que hay que hacer al final es conseguir el mejor equilibrio entre las necesidades, el coste y el rendimiento deseado para poder elegir la opción más correcta.