AWS es un conocido proveedor de la nube cuyo objetivo principal es asignar recursos del servidor para que los ingenieros de software implementen sus aplicaciones. AWS ofrece muchos servicios, uno de los cuales es EC2, que proporciona máquinas virtuales para ejecutar aplicaciones de software en la nube.
Sin embargo, para aplicaciones intensivas en datos, almacenar datos dentro de las instancias de EC2 no siempre es la opción óptima. Si bien EC2 ofrece velocidades rápidas de lectura y escritura, no está optimizado para la escalabilidad. Una mejor alternativa es usar el almacenamiento S3 en su lugar.
Almacenamiento de datos en EC2 vs S3
Amazonas S3 fue diseñado específicamente para almacenar cantidades masivas de datos no estructurados:
- Tiene un sistema de resiliencia altamente confiable, gracias al cual la tasa de durabilidad supera el 99.99%.
- S3 replica automáticamente los datos en múltiples servidores para evitar la pérdida potencial de datos.
- Se integra perfectamente con otros servicios de AWS para análisis de datos y aprendizaje automático.
- El almacenamiento de datos en S3 es significativamente más rentable en comparación con EC2.
El caso de uso principal donde se puede preferir EC2 es cuando se requiere acceso de datos frecuentes. Por ejemplo, durante la capacitación del modelo de aprendizaje automático, donde el conjunto de datos debe leerse repetidamente para cada lote. En la mayoría de los otros casos, S3 es la mejor opción.
Sobre este artículo
El objetivo de este artículo es demostrar cómo crear un S3 básico Almacenamiento. Al final del tutorial, tendremos un almacenamiento S3 en funcionamiento que permite el acceso remoto a las imágenes cargadas.
Para mantener el enfoque en aspectos clave, cubriremos solo el proceso de creación de almacenamiento y no sumergirnos en las mejores prácticas de seguridad.
Tutorial
# 01. Crear almacenamiento S3
Para realizar cualquier operación relacionada con S3 Storage Management, seleccione el Almacenamiento opción desde el menú de servicio. En el submenú que aparece, elija S3.
AWS organiza datos en colecciones llamadas cubos. Para crear un balde, haga clic Crear un balde.
Cada cubo requiere un nombre global único. La mayoría de las otras configuraciones se pueden dejar como predeterminada.
Una vez que se seleccionen todas las opciones, haga clic en Crear un balde. Después de unos segundos, AWS lo redirigirá al panel de gestión de deseos.
# 02. Crear carpeta (paso opcional)
Las carpetas en S3 funcionan de manera similar a las carpetas de computadora estándar, lo que ayuda a organizar datos jerárquicos. Además, cualquier archivo almacenado en una carpeta S3 tendrá un prefijo de URL que incluya la ruta de la carpeta.
Para crear una carpeta, haga clic en el Crear carpeta botón.
En la ventana que aparece, elija un nombre personalizado para la carpeta.
Después de hacer clic en el Botón Crear carpetase creará la carpeta! Ahora puedes navegar a él. Como aún no se han cargado imágenes, la carpeta está vacía por ahora, pero agregaremos imágenes en el paso 4.
# 03. Ajustar el acceso a los datos
Como recordatorio, nuestro objetivo es crear un almacenamiento de imágenes visible públicamente que permita el acceso remoto. Para lograr esto, necesitamos ajustar las políticas de acceso a datos.
Haciendo clic en el Permisos Pestaña En el nombre del cubo, verá una lista de opciones para modificar la configuración de acceso.
Necesitamos desbloquear el acceso público, así que haga clic en el respectivo Botón Editar En la interfaz y desmarque todas las casillas de verificación relacionadas con el bloqueo de acceso.
Después de guardar los cambios, deberíamos ver un icono de marca de exclamación con el “Apagado” texto. Entonces, navegue al Política de balde Sección y haga clic Editar.
Para permitir el acceso de lectura, inserte el siguiente texto de la política:
# 04. Cargar imágenes
Ahora es el momento de subir imágenes. Para hacer eso, navegue al creado “Imágenes” carpeta y haga clic en el Subir botón.
Haga clic en el Agregar archivos botón, que abrirá un explorador de archivos en su computadora. Elija e importe las imágenes desde allí.
Dependiendo del número y el tamaño de las imágenes importadas, AWS podría tardar un tiempo en procesarlas.
En este ejemplo, he importado nueve imágenes.
# 05. Datos de acceso
Después de que las imágenes se hayan importado con éxito, haga clic en cualquiera de sus nombres de archivo para obtener más información.
En el panel abierto, verá metadatos relacionados con la imagen elegida. Como podemos ver en el “URL de objeto” Field, AWS creó una URL única para nuestra imagen.
Además, podemos notar que la URL contiene las imágenes/ prefijo, que corresponde exactamente a la estructura de la carpeta que definimos anteriormente.
Finalmente, dado que hemos autorizado el acceso de lectura, ahora podemos acceder públicamente a esta URL.
Si hace clic en la URL de la imagen y la copia en la barra de direcciones del navegador, ¡se mostrará la imagen!
La parte sorprendente de esto es que ahora puedes crear una plantilla de URL en la forma. https://<bucket_url>/<folder_path>/<filename>.
Al hacerlo, puede reemplazar dinámicamente el campo
Conclusión
En este artículo, hemos introducido el sistema de almacenamiento AWS S3, que es muy útil para almacenar grandes cantidades de datos no estructurados. Con sus mecanismos avanzados de escalabilidad y seguridad, S3 es perfecto para organizar volúmenes de datos masivos a un costo mucho menor en comparación con los contenedores EC2.
Todas las imágenes son del autor a menos que se indique lo contrario.