0Pricing
Cloud & IT Cert Prep · Lección

Optimización de costes de S3 y transferencia de datos

Aplique S3 Intelligent-Tiering, reglas de ciclo de vida, S3 Select y CloudFront para reducir significativamente los costes de almacenamiento y transferencia de datos

Optimización de costes de S3 y transferencia de datos es una lección gratuita de Cloud & IT Cert Prep en CoddyKit. Esta es la lección 4 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.

Fundamentos de los costes de almacenamiento de S3

Los costes de almacenamiento de Amazon S3 varían considerablemente según la clase de almacenamiento y el patrón de acceso. S3 Standard cobra aproximadamente 0,023 USD por GB al mes; a escala de petabytes, esto se vuelve significativo. La buena noticia es que S3 ofrece siete clases de almacenamiento optimizadas para distintas frecuencias de acceso, con precios que van desde 0,023 USD/GB (Standard) hasta 0,00099 USD/GB (Glacier Deep Archive). La clave para optimizar los costes de S3 es asignar los datos a la clase de almacenamiento adecuada y automatizar las transiciones mediante políticas de ciclo de vida.

# S3 storage class costs (us-east-1 approximate):
# S3 Standard:              $0.023/GB/month
# S3 Intelligent-Tiering:   $0.023/GB (frequent) + $0.0125 (infrequent)
# S3 Standard-IA:           $0.0125/GB/month + retrieval fee
# S3 One Zone-IA:           $0.01/GB/month (single AZ)
# S3 Glacier Instant:       $0.004/GB/month + retrieval fee
# S3 Glacier Flexible:      $0.0036/GB/month + retrieval time
# S3 Glacier Deep Archive:  $0.00099/GB/month + retrieval time

S3 Intelligent-Tiering

S3 Intelligent-Tiering mueve automáticamente los objetos entre niveles de acceso según los patrones de acceso reales, sin tarifas de recuperación ni duración mínima para el nivel de acceso frecuente. Supervisa el acceso a los objetos individualmente: los objetos a los que no se accede durante 30 días pasan al nivel de acceso infrecuente (40 % más barato) y, después de 90 días, al nivel de archivo de acceso instantáneo (68 % más barato). Se aplica una pequeña tarifa mensual de supervisión (0,0025 USD por cada 1.000 objetos). Utilice Intelligent-Tiering cuando no pueda predecir los patrones de acceso o cuando tenga datos de acceso frecuente y poco frecuente mezclados en el mismo bucket.

# Enable Intelligent-Tiering on objects
aws s3api put-object \
  --bucket my-bucket \
  --key data/report.parquet \
  --body report.parquet \
  --storage-class INTELLIGENT_TIERING

# Or set as default for entire bucket
aws s3api put-bucket-intelligent-tiering-configuration \
  --bucket my-bucket \
  --id whole-bucket-tiering \
  --intelligent-tiering-configuration '{
    "Id": "whole-bucket-tiering",
    "Status": "Enabled",
    "Tierings": [
      {"AccessTier": "ARCHIVE_ACCESS", "Days": 90},
      {"AccessTier": "DEEP_ARCHIVE_ACCESS", "Days": 180}
    ]
  }'

Reglas de ciclo de vida de S3 para la clasificación automática

Las reglas de ciclo de vida de S3 automatizan las transiciones y las caducidades de los objetos según su antigüedad. Puede definir reglas por prefijo o etiqueta y especificar las transiciones en determinados umbrales de días. Un ciclo de vida de archivado habitual sería: Standard → Standard-IA (30 días) → Glacier Instant Retrieval (90 días) → Deep Archive (365 días) → Delete (2555 días). Esto puede reducir con el tiempo los costes de almacenamiento por GB de 0,023 USD a 0,00099 USD, una reducción del 95 % para los datos archivados. Las transiciones del ciclo de vida requieren un tamaño mínimo de objeto de 128 KB para IA y Glacier; no resulta rentable transferir objetos más pequeños.

# Lifecycle rule: transition logs to archive
aws s3api put-bucket-lifecycle-configuration \
  --bucket app-logs-bucket \
  --lifecycle-configuration '{
    "Rules": [{
      "ID": "log-archive",
      "Filter": {"Prefix": "logs/"},
      "Status": "Enabled",
      "Transitions": [
        {"Days": 30,  "StorageClass": "STANDARD_IA"},
        {"Days": 90,  "StorageClass": "GLACIER_IR"},
        {"Days": 365, "StorageClass": "DEEP_ARCHIVE"}
      ],
      "Expiration": {"Days": 2555}
    }]
  }'

S3 Select y Glacier Select

S3 Select permite recuperar únicamente los datos que necesita de un objeto de S3 mediante expresiones SQL, en lugar de descargar el objeto completo. En el caso de un archivo CSV de 10 GB del que solo necesita 100 filas, S3 Select puede recuperar únicamente esas filas, lo que reduce considerablemente los costes de transferencia de datos y el tiempo de procesamiento de la aplicación. Glacier Select hace lo mismo con los objetos de Glacier. S3 Select admite los formatos CSV, JSON y Parquet. Esto resulta especialmente útil en canalizaciones de análisis de datos en las que muchas consultas solo acceden a un subconjunto de cada archivo de datos.

# S3 Select: query a CSV object using SQL expression
aws s3api select-object-content \
  --bucket analytics-data \
  --key sales/2026-06.csv \
  --expression-type SQL \
  --expression "SELECT * FROM S3Object WHERE region = 'us-east'" \
  --input-serialization 'CSV={FileHeaderInfo=USE}' \
  --output-serialization 'CSV={}' \
  output.csv

# Only the matching rows are returned
# Saves data transfer cost vs downloading entire file

Carga multiparte y Transfer Acceleration de S3

Para cargar objetos grandes, S3 Multipart Upload divide los objetos en partes (un mínimo de 5 MB por parte) que se cargan en paralelo, lo que mejora el rendimiento y permite reanudar las cargas. Las partes que fallen se pueden volver a intentar sin reiniciar toda la carga. Elimine las cargas multiparte incompletas mediante reglas de ciclo de vida para evitar que se le cobre por las partes incompletas. S3 Transfer Acceleration dirige las cargas a través de las ubicaciones edge de AWS CloudFront para acelerarlas desde ubicaciones lejanas; resulta útil para usuarios que cargan archivos grandes desde distintos lugares del mundo, pero añade costes (entre 0,04 y 0,08 USD/GB adicionales). Utilícelo únicamente cuando la aceleración proporcione una mejora cuantificable.

# Multipart upload example
aws s3api create-multipart-upload \
  --bucket my-bucket --key large-file.zip

# Abort incomplete multipart uploads via lifecycle
aws s3api put-bucket-lifecycle-configuration \
  --bucket my-bucket \
  --lifecycle-configuration '{
    "Rules": [{
      "ID": "cleanup-incomplete-uploads",
      "Status": "Enabled",
      "AbortIncompleteMultipartUpload": {"DaysAfterInitiation": 7}
    }]
  }'

Comprender los costes de transferencia de datos

Los costes de transferencia de datos son uno de los conceptos más sorprendentes de las facturas de AWS. Reglas clave: la transferencia de datos entrante (hacia AWS) es gratuita. La transferencia de datos saliente a Internet cuesta aproximadamente 0,09 USD/GB (los primeros 10 TB al mes). La transferencia de datos entre regiones cuesta aproximadamente 0,02 USD/GB. La transferencia de datos entre AZ dentro de la misma región cuesta 0,01 USD/GB en cada dirección. La transferencia dentro de la misma AZ es gratuita. Diseñe las arquitecturas para minimizar la transferencia de datos entre regiones y hacia Internet; por eso las implementaciones regionales y CloudFront son fundamentales para una distribución de contenido rentable.

# Data transfer cost examples (us-east-1):
# Internet (outbound):       $0.09/GB (first 10 TB)
# CloudFront -> internet:    $0.0085/GB (much cheaper!)
# Cross-region:              $0.02/GB
# Cross-AZ (same region):    $0.01/GB each direction
# Same AZ:                   $0.00/GB (free)
# S3 -> CloudFront:          $0.00/GB (free!)

# Cost reduction tip:
# S3 -> CloudFront -> users
# vs
# EC2 -> internet -> users
# CloudFront is 10x cheaper for data egress

CloudFront para reducir los costes de transferencia de datos

Distribuir contenido mediante Amazon CloudFront reduce considerablemente los costes de transferencia de datos de dos formas. En primer lugar, CloudFront cobra tarifas de salida inferiores a las del acceso directo a Internet desde EC2 o S3 (aproximadamente 0,0085 USD/GB frente a 0,09 USD/GB). En segundo lugar, CloudFront almacena en caché el contenido en ubicaciones edge, lo que reduce el número de veces que los datos se sirven desde el origen; potencialmente, puede servir el mismo contenido millones de veces desde la caché con una sola recuperación del origen. La transferencia de datos de S3 a CloudFront también es gratuita. Esto convierte a CloudFront en una herramienta de optimización de costes, no solo de rendimiento.

# Cost comparison for 100 TB/month of outbound traffic:
# Direct from EC2/S3 to internet:
#   100,000 GB x $0.09/GB = $9,000/month

# Via CloudFront (assuming 80% cache hit rate):
#   20,000 GB origin pull: free (S3->CF) or $0.02 (EC2->CF)
#   100,000 GB CF->internet: 100,000 x $0.0085 = $850
#   Total: ~$1,250 vs $9,000 = 86% savings

# Create CloudFront distribution with S3 origin
aws cloudfront create-distribution \
  --distribution-config file://cf-config.json

VPC Endpoints para evitar los costes de NAT Gateway

Los cargos por procesamiento de datos de NAT Gateway (0,045 USD/GB) pueden convertirse en un coste significativo cuando las instancias de EC2 en subredes privadas acceden con frecuencia a S3 o DynamoDB. En su lugar, utilice VPC Gateway Endpoints para S3 y DynamoDB; dirigen el tráfico a través de la red troncal de AWS con un coste cero y no requieren un NAT Gateway para estos servicios. Además, los VPC Interface Endpoints (PrivateLink) para otros servicios de AWS eliminan las tarifas de procesamiento de NAT Gateway correspondientes al tráfico de esos servicios, aunque los propios Interface Endpoints tienen un pequeño coste por hora.

# Create VPC Gateway Endpoint for S3 (free!)
aws ec2 create-vpc-endpoint \
  --vpc-id vpc-12345 \
  --service-name com.amazonaws.us-east-1.s3 \
  --vpc-endpoint-type Gateway \
  --route-table-ids rtb-private-AZ1 rtb-private-AZ2

# Traffic from EC2 in private subnet to S3:
# WITHOUT endpoint: EC2 -> NAT GW ($0.045/GB) -> S3
# WITH endpoint:    EC2 -> S3 via VPC endpoint ($0.00/GB)

# For DynamoDB:
aws ec2 create-vpc-endpoint \
  --service-name com.amazonaws.us-east-1.dynamodb \
  --vpc-endpoint-type Gateway

Optimizar los costes de solicitudes de S3

S3 cobra tanto por cada solicitud de API como por cada GB almacenado. Las solicitudes PUT, COPY, POST, LIST cuestan 0,005 USD por cada 1.000; las solicitudes GET, SELECT cuestan 0,0004 USD por cada 1.000. En las aplicaciones que realizan millones de solicitudes, estos costes se acumulan. Optimice sus costes de las siguientes formas: agrupe objetos pequeños en objetos más grandes (menos solicitudes), utilice CloudFront para servir respuestas almacenadas en caché (reduce las solicitudes GET al origen), evite las operaciones de listado siempre que sea posible (LIST es costosa) y utilice S3 Batch Operations para operaciones masivas en lugar de millones de llamadas individuales a la API.

# S3 Batch Operations: process millions of objects at once
aws s3control create-job \
  --account-id 123456789012 \
  --manifest '{
    "Spec":{"Format":"S3BatchOperations_CSV_20180820","Fields":["Bucket","Key"]},
    "Location":{"ObjectArn":"arn:aws:s3:::manifest-bucket/manifest.csv","ETag":"abc123"}
  }' \
  --operation '{
    "S3CopyObject": {
      "TargetResource": "arn:aws:s3:::destination-bucket",
      "StorageClass": "GLACIER"
    }
  }' \
  --report '{"Bucket":"arn:aws:s3:::report-bucket","Enabled":true}'

AWS DataSync para la transferencia de datos

Para transferencias de datos a gran escala entre entornos locales y AWS, o entre servicios de AWS, AWS DataSync resulta más rentable que escribir código de transferencia personalizado. DataSync utiliza un protocolo diseñado específicamente para este fin, que alcanza hasta 10 veces el rendimiento de las herramientas de código abierto e incluye validación de datos, programación y supervisión integradas. Los datos transferidos mediante DataSync a S3, EFS o FSx se cobran según las tarifas estándar de transferencia de datos de AWS; sin embargo, la eficiencia de DataSync permite completar las transferencias más rápidamente, reduciendo el tiempo de cómputo de EC2 (y su coste) necesario para migraciones grandes.

# Create DataSync task to copy S3 bucket to another region
aws datasync create-task \
  --source-location-arn arn:aws:datasync:us-east-1:123:location/loc-source \
  --destination-location-arn arn:aws:datasync:us-west-2:123:location/loc-dest \
  --name 'DR-replication' \
  --options '{
    "VerifyMode": "ONLY_FILES_TRANSFERRED",
    "OverwriteMode": "ALWAYS",
    "TransferMode": "CHANGED"
  }'

# DataSync pricing: $0.0125/GB transferred

Storage Lens para obtener visibilidad de S3

Amazon S3 Storage Lens proporciona visibilidad en toda la organización sobre el uso del almacenamiento de S3 y las métricas de actividad en distintas cuentas y regiones. Muestra oportunidades de optimización de costes, como la identificación de buckets sin reglas de ciclo de vida, buckets con cargas multiparte incompletas o la distribución de las clases de almacenamiento. El panel predeterminado de S3 Storage Lens es gratuito; el panel de métricas avanzadas (0,20 USD por cada millón de objetos) añade un análisis detallado por prefijo y métricas de antigüedad de los datos. Utilice Storage Lens como punto de partida para cualquier ejercicio de optimización de costes de S3, con el fin de identificar los buckets de mayor impacto.

# Enable S3 Storage Lens dashboard
aws s3control put-storage-lens-configuration \
  --account-id 123456789012 \
  --config-id default \
  --storage-lens-configuration '{
    "Id": "default",
    "IsEnabled": true,
    "DataExport": {
      "S3BucketDestination": {
        "AccountId": "123456789012",
        "Arn": "arn:aws:s3:::my-storage-lens-export",
        "Format": "CSV",
        "OutputSchemaVersion": "V_1"
      }
    }
  }'

Comprobación rápida

Compruebe su comprensión de los conceptos de AWS Solutions Architect (SAA-C03) tratados en esta lección.

Resumen de la lección

En esta lección ha aprendido lo siguiente: S3 Intelligent-Tiering y las reglas de ciclo de vida reducen los costes de almacenamiento al mover automáticamente los datos a clases de almacenamiento más económicas, CloudFront reduce considerablemente los costes de transferencia de datos en comparación con servirlos directamente desde S3 o EC2 y VPC Gateway Endpoints eliminan los cargos de NAT Gateway para el tráfico de S3 y DynamoDB. S3 Storage Lens proporciona visibilidad sobre las oportunidades de optimización. A continuación, exploraremos KMS, ACM y los patrones de cifrado.

Preguntas frecuentes

¿La lección «Optimización de costes de S3 y transferencia de datos» es gratis?

Sí — el texto completo de «Optimización de costes de S3 y transferencia de datos» 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 «Optimización de costes de S3 y transferencia de datos»?

Aplique S3 Intelligent-Tiering, reglas de ciclo de vida, S3 Select y CloudFront para reducir significativamente los costes de almacenamiento y transferencia de datos 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 4 de 4.

¿Cuánto tiempo toma la lección «Optimización de costes de S3 y transferencia de datos»?

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. Dimensionamiento adecuado y Compute Optimizer
  2. Instancias reservadas, Savings Plans y Spot
  3. Cost Explorer, presupuestos y etiquetas de asignación de costes
  4. Optimización de costes de S3 y transferencia de datos
← Volver a Cloud & IT Cert Prep