Establecimiento de la clase de almacenamiento de un objeto - Amazon Simple Storage Service

Establecimiento de la clase de almacenamiento de un objeto

Puede especificar una clase de almacenamiento para un objeto cuando lo carga. Si no lo hace, Amazon S3 utiliza la clase de almacenamiento predeterminada Amazon S3 Standard para objetos en buckets de uso general. También puede cambiar la clase de almacenamiento de un objeto que ya está almacenado en un bucket de uso general Amazon S3 a cualquier otra clase mediante la consola de Amazon S3, los SDK de AWS o la AWS Command Line Interface (AWS CLI). Todos estos enfoques utilizan las operaciones de la API de Amazon S3 para enviar solicitudes a Amazon S3.

nota

No puede cambiar la clase de almacenamiento de objetos almacenados en buckets de directorio.

Puede indicar a Amazon S3 que modifique la clase de almacenamiento de los objetos automáticamente añadiendo la configuración de S3 Lifecycle a un bucket. Para obtener más información, consulte Administración del ciclo de vida de los objetos.

Cuando establezca una configuración de Replicación de S3, puede especificar la clase de almacenamiento de los objetos replicados como cualquier otra clase de almacenamiento. Sin embargo, no puede replicar objetos que están almacenados en las clases S3 Glacier Flexible Retrieval o S3 Glacier Deep Archive. Para obtener más información, consulte Elementos del archivo de configuración de la replicación.

Al configurar la clase de almacenamiento mediante programación, debe proporcionar el valor de la clase de almacenamiento. La siguiente es una lista de nombres de consola para las clases de almacenamiento con sus valores de API correspondientes:

  • Almacenamiento de redundancia reducida: REDUCED_REDUNDANCY

  • S3 Express One Zone: EXPRESS_ONEZONE

  • S3 Glacier Deep Archive: DEEP_ARCHIVE

  • S3 Glacier Flexible Retrieval: GLACIER

  • S3 Glacier Instant Retrieval: GLACIER_IR

  • S3 Intelligent-Tiering: INTELLIGENT_TIERING

  • S3 One Zone-IA: ONEZONE_IA

  • S3 Standard: STANDARD

  • S3 Standard-IA: STANDARD_IA

Establecimiento de la clase de almacenamiento de un objeto nuevo

Para establecer la clase de almacenamiento al cargar un objeto, puede utilizar los métodos siguientes.

Para configurar la clase de almacenamiento al cargar un objeto nuevo en la consola:

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en: https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Buckets de uso general.

  3. En la lista de buckets, elija el nombre del bucket en el que desea cargar las carpetas o los archivos.

  4. Seleccione Cargar.

  5. En la ventana Cargar, seleccione Propiedades.

  6. En Clase de almacenamiento, elija una clase de almacenamiento para los archivos que esté cargando.

  7. (Opcional) Configure las propiedades adicionales de los archivos que vaya a cargar. Para obtener más información, consulte Carga de objetos

  8. En la ventana Cargar, realice una de las siguientes acciones:

    • Arrastre archivos y carpetas a la ventana Cargar.

    • Elija Agregar archivo o Agregar carpeta, elija los archivos o carpetas que desee cargar y Abrir.

  9. En la parte inferior de la página, elija Cargar.

Puede especificar la clase de almacenamiento de un objeto al crearlo mediante las operaciones PutObject, POST Object y CreateMultipartUpload de la API y agregar el encabezado de la solicitud x-amz-storage-class. Si no se agrega este encabezado, Amazon S3 utiliza S3 Standard (STANDARD), la clase de almacenamiento predeterminada.

Esta solicitud de ejemplo usa el comando PutObject para establecer la clase de almacenamiento de un objeto nuevo en S3 Intelligent-Tiering:

PUT /my-image.jpg HTTP/1.1 Host: amzn-s3-demo-bucket1.s3.Region.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: INTELLIGENT_TIERING

En este ejemplo, se usa el comando put-object para cargar my_images.tar.bz2 para amzn-s3-demo-bucket1 en la clase de almacenamiento GLACIER :

aws s3api put-object --bucket amzn-s3-demo-bucket1 --key dir-1/my_images.tar.bz2 --storage-class GLACIER --body my_images.tar.bz2

Si el tamaño del objeto es superior a 5 GB, utilice el siguiente comando para establecer la clase de almacenamiento:

aws s3 cp large_test_file s3://amzn-s3-demo-bucket1 --storage-class GLACIER

Cambio de la clase de almacenamiento de un objeto existente

Para establecer la clase de almacenamiento al cargar un objeto, puede utilizar los métodos siguientes.

Puede cambiar la clase de almacenamiento de un objeto mediante la consola de Amazon S3 si el tamaño del objeto es inferior a 5 GB. Si es mayor, se recomienda añadir la configuración del ciclo de vida de S3 para cambiar la clase de almacenamiento del objeto.

Para cambiar la clase de almacenamiento de un objeto en la consola:

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Buckets de uso general.

  3. En la lista de buckets, elija el nombre del bucket que contiene los objetos que desea cambiar.

  4. Seleccione la casilla de verificación situada a la izquierda de los nombres de los objetos que desea cambiar.

  5. En el menú Acciones, elija Editar clase de almacenamiento en la lista de opciones que aparece.

  6. Seleccione una de las clases de almacenamiento disponibles para su objeto.

  7. En Configuración de copia adicional, elija si desea Copiar la configuración de origen, No especificar la configuración o Especificar la configuración. Copiar la configuración de origen es la opción predeterminada. Si solo desea copiar el objeto sin los atributos de configuración de origen, elija No especificar la configuración. Elija Especificar la configuración para especificar la configuración de la clase de almacenamiento, las ACL, las etiquetas de objetos, los metadatos, el cifrado del servidor y las sumas de comprobación adicionales.

  8. En la esquina inferior derecha, elija Guardar cambios. Amazon S3 guarda los cambios.

Para cambiar la clase de almacenamiento de un objeto existente, utilice los métodos siguientes.

Este ejemplo de solicitud utiliza el comando PutObject para establecer la clase de almacenamiento de un objeto existente en S3 Intelligent-Tiering:

PUT /my-image.jpg HTTP/1.1 Host: amzn-s3-demo-bucket1.s3.Region.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: INTELLIGENT_TIERING

Este ejemplo utiliza el comando cp para cambiar la clase de almacenamiento de un objeto existente de la clase de almacenamiento actual a la clase de almacenamiento DEEP_ARCHIVE :

aws s3 cp object_S3_URI object_S3_URI --storage-class DEEP_ARCHIVE

Restringir permisos de política de acceso a una clase de almacenamiento específica

Cuando concede permisos de política de acceso para operaciones de Amazon S3, puede usar la clave de condición s3:x-amz-storage-class para restringir la clase de almacenamiento que se debe utilizar al almacenar objetos cargados. Por ejemplo, cuando concede el permiso de s3:PutObject, puede restringir las cargas de objetos a una clase de almacenamiento específica. Para ver una política de ejemplo, consulte Ejemplo: restricción de cargas de objetos a objetos con una clase de almacenamiento específica.

Para obtener más información sobre el uso de condiciones en políticas y una lista completa de claves de condición de Amazon S3, consulte los temas siguientes: