Cloud IO Enabler Podcast
|
Todas las organizaciones requieren almacenar archivos de forma digital, y usan soluciones para gestionarlos como Alfresco, Box o Dropbox por ejemplo, en esta “Amazon S3 Introducción al almacenamiento de archivos” vamos a describir este servicio y las ventajas que su organización puede obtener.
Amazon S3 (Simple Storage Service) es uno de los primeros servicios que dispuso Amazon al público y ha evolucionado exponencialmente en los últimos años.
Como funciona:
Este servicio permite almacenar archivos en la nube con un espacio ILIMITADO.
Un solo archivo puede tener un tamaño máximo de 5 TB (Terabytes) y se los puede gestionar a través de tres mecanismos:
- La consola web de AWS usando las credenciales del usuario autorizado.
- A través de un API REST usando el ‘access key’ correspondiente a un usuario autorizado.
- Usando Amazon CLI (command line interface) con un usuario autorizado y autenticado o con una política habilitante.
En los tres casos es posible realizar operaciones como descargar, subir, actualizar y eliminar un archivo.
La organización de los archivos es a través de buckets, que son similares a carpetas en un sistema de archivos NTFS, EXT4, etc. y pueden añadirse de igual forma. Los nombre de estos buckets son únicos a lo largo de toda la infraestructura de AWS.
Los archivos se componen de metadata y la data, en la metadata se almacenan las cosas normales como tipo de archivo, creador, fecha de modificación, etc. pero adicionalmente podemos aumentar nuestras características como departamento, identificador especial, tipo de documento, etc., esto es muy útil a la hora de clasificar archivos transversalmente.
Características principales:
- Dispone de versionamiento de archivos con lo cual no se pierde ningún cambio.
- Tiene seguridades granulares desde usuarios autorizados y políticas habilitantes hasta lista de control de accesos.
- Tiene la opción de replicación en otras carpetas de la misma región, de otra región o en carpetas de otras cuentas AWS.
- Se puede habilitar un ciclo de vida de archivos para mover de una clase de almacenamiento a otra automáticamente, con lo cual reducimos costos de almacenamiento.
- Tiene disponible la encriptación con KMS o un algoritmo propio de su organización.
- Dispone de la funcionalidad para obtención de archivos de formato CSV, JSON o Parquet file (Hadoop) ejecutando SQL, incluso si están comprimidos como GZIP o BZIP2.
- Esta ya diseñado para alta disponibilidad y recuperación ante desastres.
Clases de almacenamiento:
AWS S3 provee clases de almacenamiento con el fin de reducir los costos del servicio:
- Standard: diseñado para archivos de uso frecuente y con disponibilidad inmediata.
- Infrecuent Access: diseñado para archivos accesados con menos frecuencia y que puede soportar la disponibilidad en orden de milisegundos.
- Infrecuent Access – One Zone: similar al Infrecuent Access pero no serán replicados en diferentes Availability Zones (Data Centers), lo que supone un mayor riesgo ante desastres.
- Intelligent Tiering: esta clase de almacenamiento, en base a inteligencia artificial (IA), decidirá mover su archivo a una clase Standar, a un clase Infrecuent Access, a una clase Glacier o a una clase Glacier Deep.
- Glacier: diseñada para archivos que son muy poco accesados y que puede esperar a ser disponibles en el orden de minutos a horas.
- Glacier Deep: similar a Glacier pero el orden de disponibilidad es de 12 horas en adelante.
Todas estas opciones tienen diferentes indices de durabilidad y disponibilidad y la idea es que su organización elija la clase basado en el caso de negocio y de esta forma invertir el dinero adecuado en almacenamiento. Cabe recalcar la opción Intelligent Tiering, ya que en el tiempo no puede dar indicadores para actuar a largo plazo con alguna otra clase específica en conjuntos de archivos específicos.
Es muy recomendable que revisen las instrucciones más detalladas de estas clases de almacenamiento en: Amazon S3 Storage Classes.
Costos:
Los costos de AWS S3 están en función a cuanto espacio usa nuestros archivos en la nube, cuantas miles de peticiones se han hecho a esos archivos, la cantidad de GB (Gygabytes) transferidas desde y hacia Amazon S3, y, las acciones automáticas producto de replicación y movimiento por millones de objetos en la infraestructura.
Pensamientos Finales
En esta “Amazon S3 Introducción al almacenamiento de archivos”, hemos revisado de forma general como funciona el servicio Amazon S3, que ventajas nos puede proporcionar, cuales son las clases de almacenamiento disponibles y como se gestiona el costo del servicio.
Hay otras características de Amazon S3 no mencionadas como la posibilidad de tener un sitio web sin servidor solo usando Amazon S3 o crear un CDN (Content Delivery Network) para acelerar el uso de recursos estáticos usando Amazon S3 o, su uso como repositorio de backups de bases de datos en Amazon RDS, que esperamos compartir en otros posts.
Suena complejo el cálculo de costos, pero en términos generales, son muy inferiores a otras soluciones de la Nube y se tiene varias opciones de optimización en el tiempo, lo importante aquí es evaluar los mismos y usar estas opciones apropiadamente.
Les animamos a solicitar en los comentarios y/o redes sociales si desean profundizar en algún tema de los revisados.