Introducción al Módulo y Niveles de Almacenamiento en AWS

Clase 32 de 75Curso de AWS Certified Solutions Architect Associate

Introducción al Módulo y Niveles de Almacenamiento en AWS

En 2023, Nexiia Bank completó su migración completa a la nube de AWS, trasladando más de 50 petabytes de datos financieros, históricos y transaccionales desde sus data centers tradicionales. Esta migración no solo representó un hito técnico, sino que transformó la forma en que el banco almacena y accede a la información crítica.

Hoy en día, cada vez que un cliente consulta su estado de cuenta, solicita un crédito o accede a su historial de transacciones, está interactuando con datos alojados en múltiples niveles de almacenamiento de AWS, incluyendo Amazon S3 Standard, S3 Intelligent-Tiering y S3 Glacier. Esta arquitectura permite a Nexia Bank mantener un equilibrio inteligente entre rendimiento, durabilidad y costo, optimizando la experiencia del cliente y reduciendo significativamente los gastos operativos.

Este caso real ilustra cómo una estrategia de almacenamiento en la nube bien diseñada puede impulsar la innovación financiera sin comprometer la eficiencia.

Jerarquía de Almacenamiento en AWS

AWS ofrece una amplia gama de servicios de almacenamiento, cada uno diseñado para casos de uso específicos. Comprender esta jerarquía es fundamental para diseñar arquitecturas eficientes.

Almacenamiento por Bloques: Amazon EBS

Amazon Elastic Block Store (EBS) proporciona volúmenes de almacenamiento a nivel de bloque para instancias EC2:

  • Características principales:
    • Persistencia independiente de la instancia EC2
    • Baja latencia (milisegundos)
    • Acceso exclusivo (no compartido entre múltiples instancias)
    • Capacidad de 1 GB a 64 TB
    • Limitado a una única zona de disponibilidad
  • Tipos de volúmenes:
    • gp3/gp2: SSD de propósito general (3,000-16,000 IOPS)
    • io2/io1: SSD de IOPS provisionadas (hasta 64,000 IOPS)
    • st1: HDD optimizado para throughput (streaming, big data)
    • sc1: HDD en frío (datos accedidos con poca frecuencia)

Comparativa de volúmenes EBS

Almacenamiento de Objetos: Amazon S3

Amazon Simple Storage Service (S3) es un servicio de almacenamiento de objetos diseñado para almacenar y recuperar cualquier cantidad de datos:

  • Características principales:
    • Escalabilidad prácticamente ilimitada
    • Durabilidad del 99.999999999% (11 nueves)
    • Acceso desde cualquier lugar a través de HTTP/HTTPS
    • Organización en buckets y objetos (hasta 5 TB por objeto)
    • Disponibilidad regional y global
  • Clases de almacenamiento:
    • S3 Standard: acceso frecuente, alta disponibilidad
    • S3 Intelligent-Tiering: optimización automática de costos
    • S3 Standard-IA: acceso infrecuente, recuperación rápida
    • S3 One Zone-IA: acceso infrecuente, una sola zona
    • S3 Glacier: archivado, recuperación en minutos a horas
    • S3 Glacier Deep Archive: archivado a largo plazo, recuperación en horas

Comparativa de clases de S3

Almacenamiento de Archivos: Amazon EFS y FSx

Los servicios de almacenamiento de archivos proporcionan sistemas de archivos compartidos accesibles desde múltiples instancias:

Amazon Elastic File System (EFS):

  • Sistema de archivos NFS elástico para Linux
  • Escalabilidad automática (petabytes)
  • Acceso simultáneo desde miles de instancias
  • Multi-AZ por defecto
  • Modos de rendimiento: General Purpose y Max I/O
  • Modos de throughput: Bursting y Provisioned

Amazon FSx:

  • FSx for Windows File Server:
    • Sistema de archivos SMB para Windows
    • Integración con Active Directory
    • Soporte para NTFS, ACLs, etc.
  • FSx for Lustre:
    • Sistema de archivos de alto rendimiento para HPC
    • Throughput de hasta cientos de GB/s
    • Integración con S3
  • FSx for NetApp ONTAP:
    • Compatibilidad con protocolos NFS, SMB e iSCSI
    • Funciones avanzadas de gestión de datos
  • FSx for OpenZFS:
    • Sistema de archivos ZFS de alto rendimiento
    • Snapshots, compresión y deduplicación

Comparativa de servicios de almacenamiento de archivos

Almacenamiento en Instancia: Instance Store

Los volúmenes de Instance Store proporcionan almacenamiento temporal a nivel de bloque directamente conectado al servidor físico:

  • Características principales:
    • Almacenamiento efímero (se pierde al detener/terminar la instancia)
    • Latencia extremadamente baja (microsegundos)
    • Alto throughput (GB/s)
    • Sin costo adicional (incluido en el precio de la instancia)
    • Ideal para cachés, datos temporales y buffers

Diferencias de Acceso: Bloque, Objeto y Archivo

Cada tipo de almacenamiento utiliza un método de acceso diferente, optimizado para casos de uso específicos.

Almacenamiento por Bloques (EBS, Instance Store)

  • Características:
    • Acceso a nivel de sector (512 bytes o 4 KB)
    • Requiere un sistema de archivos (ext4, NTFS, etc.)
    • Control total sobre el almacenamiento
    • Modificaciones parciales eficientes
    • Baja latencia
  • Casos de uso:
    • Sistemas operativos
    • Bases de datos
    • Aplicaciones que requieren acceso a disco de bajo nivel
# Ejemplo de operación a nivel de bloque dd if=/dev/zero of=/dev/xvdf bs=1M count=1000

Almacenamiento de Objetos (S3)

  • Características:
    • Acceso a nivel de objeto completo (no parcial)
    • Objetos inmutables (no se modifican, se reemplazan)
    • Metadatos extensibles
    • URLs para acceso directo
    • Alta escalabilidad
  • Casos de uso:
    • Contenido estático (imágenes, videos)
    • Backups y archivos
    • Data lakes
    • Aplicaciones web y móviles
# Ejemplo de operación a nivel de objeto aws s3 cp archivo.jpg s3://mi-bucket/carpeta/archivo.jpg

Almacenamiento de Archivos (EFS, FSx)

  • Características:
    • Acceso a través de sistemas de archivos estándar
    • Jerarquía de directorios
    • Permisos a nivel de archivo
    • Compartido entre múltiples clientes
    • Bloqueo de archivos
  • Casos de uso:
    • Compartir archivos entre servidores
    • Directorios de usuarios
    • Sistemas de gestión de contenidos
    • Flujos de trabajo colaborativos
# Ejemplo de operación a nivel de archivo mount -t nfs4 fs-12345678.efs.us-east-1.amazonaws.com:/ /mnt/efs