0Pricing
Cloud & IT Cert Prep · Lección

Buckets, objetos y regiones

Cree buckets de S3, cargue objetos, comprenda la nomenclatura de las claves y descubra cómo S3 replica los datos dentro de una región.

Buckets, objetos y regiones es una lección gratuita de Cloud & IT Cert Prep en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cloud & IT Cert Prep, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.

¿Qué es Amazon S3?

Amazon Simple Storage Service (S3) es el servicio de almacenamiento de objetos de AWS, diseñado para almacenar y recuperar cualquier cantidad de datos desde cualquier lugar de Internet. S3 ofrece 11 nueves de durabilidad (99.999999999 %) al almacenar objetos de forma redundante en varios dispositivos de múltiples Availability Zones dentro de la Region seleccionada. Su capacidad es prácticamente ilimitada, no tiene un límite de capacidad y admite objetos de 0 bytes a 5 TB. S3 es la base de innumerables arquitecturas de AWS: aloja sitios web estáticos, lagos de datos, repositorios de copias de seguridad y mucho más.

Buckets de S3: el contenedor de nivel superior

Un bucket de S3 es un contenedor con nombre único a nivel global para objetos. Los buckets se crean en una Region de AWS específica, pero sus nombres deben ser únicos globalmente en todas las cuentas de AWS del mundo (porque el nombre pasa a formar parte de la URL). Los nombres de los buckets deben tener entre 3 y 63 caracteres, estar en minúsculas, comenzar por una letra o un número y no contener guiones bajos ni letras mayúsculas. Práctica recomendada: incluya su ID de cuenta o un sufijo aleatorio para evitar colisiones de nombres con otras cuentas.

# Create an S3 bucket in a specific region
aws s3api create-bucket \
  --bucket my-company-data-20240101 \
  --region us-west-2 \
  --create-bucket-configuration LocationConstraint=us-west-2

Objetos y claves de S3

Un objeto de S3 consta de los datos (el contenido del archivo), una key (el nombre único del objeto dentro del bucket), metadatos (pares clave-valor definidos por el sistema y por el usuario) y, opcionalmente, un ID de versión (si el versionado está habilitado). La key es la cadena completa similar a una ruta, por ejemplo, photos/2024/summer/beach.jpg. S3 tiene una estructura plana: no existen directorios reales, solo prefijos de claves que parecen directorios. El tamaño máximo de un objeto es de 5 TB; para objetos de más de 100 MB, use Multipart Upload para mejorar el rendimiento y la fiabilidad.

# Upload an object
aws s3 cp ./report.pdf s3://my-company-data-20240101/reports/2024/report.pdf

# List objects with a specific prefix
aws s3 ls s3://my-company-data-20240101/reports/2024/

Formatos de URL de S3

Se puede acceder a los objetos de S3 mediante dos formatos de URL. Path-style: https://s3.<region>.amazonaws.com/<bucket>/<key> (en proceso de obsolescencia para los buckets nuevos). Virtual-hosted-style: https://<bucket>.s3.<region>.amazonaws.com/<key> (el estándar actual). El nombre del bucket se convierte en un subdominio, por lo que los nombres de los buckets deben cumplir las normas de DNS. En las URL prefirmadas y las distribuciones de CloudFront siempre verá el formato virtual-hosted. Comprender la estructura de las URL le ayuda a configurar correctamente las políticas de los buckets y CORS.

# Generate a pre-signed URL valid for 1 hour (3600 seconds)
aws s3 presign s3://my-company-data-20240101/reports/2024/report.pdf \
  --expires-in 3600

Modelo de coherencia de datos de S3

Desde diciembre de 2020, Amazon S3 ofrece coherencia sólida de lectura posterior a escritura para todas las operaciones (PUT de objetos nuevos, sobrescrituras y DELETE) en todas las Regions de forma automática y sin coste adicional. Esto significa que, en cuanto una escritura se realiza correctamente, cualquier lectura posterior devuelve la versión más reciente del objeto. Se trata de una mejora significativa respecto al modelo de coherencia eventual anterior y simplifica el diseño de las aplicaciones, ya que elimina la necesidad de esperar después de escribir o de implementar lógica de reintento.

S3 y las regiones: residencia de los datos

Al crear un bucket de S3, especifica una Region y sus datos permanecen en esa Region, a menos que configure explícitamente la replicación. AWS replica los datos dentro de esa Region en varias AZ para garantizar la durabilidad, pero no los mueve automáticamente a otras Regions. Esta residencia regional de los datos es importante para el cumplimiento normativo: si las regulaciones exigen que los datos permanezcan en la UE, cree el bucket en eu-west-1 o en otra Region de la UE, y sus datos no saldrán de ella.

# Find the region of an existing bucket
aws s3api get-bucket-location \
  --bucket my-company-data-20240101

Multipart Upload para objetos grandes

Multipart Upload es obligatorio para objetos de más de 5 GB y se recomienda para objetos de más de 100 MB. Divide el objeto en partes (5 MB como mínimo por parte y hasta 10.000 partes), carga cada parte de forma independiente (en paralelo) y las combina para formar el objeto final. Si alguna parte falla, solo debe volver a cargar esa parte. AWS CLI y los SDK gestionan automáticamente la carga multiparte cuando utiliza el comando aws s3 cp para archivos grandes; no necesita implementarla manualmente.

# The CLI uses multipart automatically for large files
aws s3 cp large-file-50GB.tar.gz s3://my-bucket/ \
  --storage-class STANDARD

# Or use s3api to control multipart manually
aws s3api create-multipart-upload \
  --bucket my-bucket \
  --key large-file-50GB.tar.gz

Metadatos de objetos de S3

Cada objeto de S3 tiene metadatos del sistema establecidos por AWS (Content-Type, Content-Length, ETag, Last-Modified) y metadatos definidos por el usuario opcionales (pares clave-valor personalizados con el prefijo x-amz-meta-). Los metadatos se almacenan con el objeto y se devuelven en las cabeceras de respuesta HTTP cuando se descarga el objeto. Content-Type es especialmente importante para servir contenido web: si carga un archivo HTML sin establecer Content-Type: text/html, los navegadores pueden ofrecerlo como descarga en lugar de representarlo.

# Upload with explicit Content-Type metadata
aws s3 cp index.html s3://my-website-bucket/ \
  --content-type 'text/html' \
  --metadata 'author=alice,env=production'

S3 para alojar sitios web estáticos

Amazon S3 puede funcionar como host de sitios web estáticos, sirviendo HTML, CSS, JavaScript, imágenes y otros archivos directamente desde un bucket. Habilite el alojamiento de sitios web estáticos en las propiedades del bucket y especifique un documento de índice (index.html) y un documento de error opcional (404.html). La URL del endpoint del sitio web del bucket sigue el formato: http://<bucket>.s3-website.<region>.amazonaws.com. Para usar HTTPS y dominios personalizados, coloque una distribución de CloudFront delante del bucket del sitio web estático de S3.

# Enable static website hosting
aws s3api put-bucket-website \
  --bucket my-website-bucket \
  --website-configuration '{"IndexDocument":{"Suffix":"index.html"},"ErrorDocument":{"Key":"404.html"}}'

S3 Transfer Acceleration

S3 Transfer Acceleration acelera las cargas de objetos a larga distancia mediante el enrutamiento de los datos a través de la CloudFront Edge Location más cercana y, después, a través de la red troncal privada de AWS hasta la Region del bucket de S3. En lugar de cargar directamente en el endpoint de S3, el cliente carga los datos en un endpoint acelerado como my-bucket.s3-accelerate.amazonaws.com. Transfer Acceleration añade un pequeño cargo por GB, pero puede mejorar considerablemente la velocidad de carga para usuarios que se encuentran geográficamente lejos de la Region del bucket.

# Enable Transfer Acceleration on a bucket
aws s3api put-bucket-accelerate-configuration \
  --bucket my-company-data-20240101 \
  --accelerate-configuration Status=Enabled

Etiquetado de objetos de S3

Las etiquetas de objetos son pares clave-valor que se asocian a los objetos de S3 para categorizarlos y administrarlos. Las etiquetas se utilizan para: reglas de ciclo de vida (transicionar o caducar objetos con etiquetas específicas), control de acceso (condiciones de IAM y de las políticas de buckets basadas en los valores de las etiquetas), asignación de costes (Cost Explorer realiza un seguimiento del gasto de S3 por etiqueta) y inventario y análisis. Cada objeto puede tener hasta 10 etiquetas. Las etiquetas se pueden añadir durante la carga o actualizar después de que exista el objeto, sin modificar los datos del objeto.

# Add tags to an existing object
aws s3api put-object-tagging \
  --bucket my-company-data-20240101 \
  --key reports/2024/report.pdf \
  --tagging '{"TagSet":[{"Key":"env","Value":"production"},{"Key":"owner","Value":"finance"}]}'

Comprobación rápida

Compruebe sus conocimientos sobre los conceptos de AWS Solutions Architect (SAA-C03) de esta lección.

Resumen de la lección

En esta lección ha aprendido que: los buckets de S3 son contenedores con nombres únicos a nivel global vinculados a una Region específica; los objetos se almacenan con una estructura plana de claves y admiten metadatos y etiquetas; y S3 ofrece coherencia sólida de lectura posterior a escritura y 11 nueves de durabilidad mediante redundancia en varias AZ. A continuación, exploraremos el control de acceso de S3 mediante políticas de buckets y ACL.

Preguntas frecuentes

¿La lección «Buckets, objetos y regiones» es gratis?

Sí — el texto completo de «Buckets, objetos y regiones» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cloud & IT Cert Prep, actualiza a CoddyKit PRO. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.

¿Qué aprenderé en «Buckets, objetos y regiones»?

Cree buckets de S3, cargue objetos, comprenda la nomenclatura de las claves y descubra cómo S3 replica los datos dentro de una región. Practicas Cloud & IT Cert Prep con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cloud & IT Cert Prep?

No se requiere experiencia previa. Cloud & IT Cert Prep en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Buckets, objetos y regiones»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cloud & IT Cert Prep?

Sí. Cada lección de Cloud & IT Cert Prep incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Buckets, objetos y regiones
  2. Control de acceso de S3: políticas de bucket y ACL
  3. Versionado, MFA Delete y replicación
  4. Clases de almacenamiento y políticas de ciclo de vida
← Volver a Cloud & IT Cert Prep