Uso de operaciones por lotes con S3 Express One Zone
Puede utilizar operaciones por lotes de Amazon S3 para realizar operaciones en objetos almacenados en buckets de S3. Para obtener más información sobre las operaciones por lotes de S3, consulte Realización de operaciones por lotes a gran escala en objetos de Amazon S3.
En los siguientes temas se trata la realización de operaciones por lotes con objetos almacenados en buckets de directorio de la clase de almacenamiento S3 Express One Zone.
Uso de operaciones por lotes con buckets de directorio
Puede realizar la operación Copiar y las operaciones Invocar función de AWS Lambda en los objetos almacenados en los buckets de directorio. Con Copiar, puede copiar objetos entre buckets del mismo tipo (por ejemplo, de un bucket de directorio a otro). También puede copiar entre buckets de uso general y buckets de directorio. Con Invocar función de AWS Lambda, puede utilizar una función de Lambda para realizar acciones en los objetos de su bucket de directorio con el código que defina.
Copia de objetos
Puede copiar entre el mismo tipo de bucket o entre buckets de directorio y buckets de uso general. Al copiar en un bucket de directorio, debe usar el formato de Nombre de recurso de Amazon (ARN) correcto para ese tipo de bucket. El formato de ARN de un bucket de directorio es arn:aws:s3express:
. region
:account-id
:bucket/bucket-base-name
--x-s3
También puede rellenar el bucket de directorio con datos mediante la acción Importar de la consola de S3. Importar es un método simplificado para crear trabajos de Batch Operations a fin de copiar objetos de buckets de uso general a buckets de directorio. Para Importar trabajos de copia de buckets de uso general a buckets de directorio, S3 genera automáticamente un manifiesto. Para obtener más información, consulte Importación de objetos a un bucket de directorio y Especificar un manifiesto.
Invocación de funciones de Lambda (LambdaInvoke
)
Existen requisitos especiales para utilizar las operaciones por lotes para invocar funciones de Lambda que actúan en los buckets de directorio. Por ejemplo, debe estructurar la solicitud de Lambda mediante un esquema de invocación JSON v2 y especificar InvocationSchemaVersion 2.0 al crear el trabajo. Para obtener más información, consulte Invocar a la función AWS Lambda.
Diferencias clave
A continuación se muestra una lista de las principales diferencias al usar Operaciones por lotes para realizar operaciones masivas en objetos almacenados en buckets de directorio que utilizan la clase de almacenamiento S3 Express One Zone:
-
Para los buckets de directorio, se admiten SSE-S3 y el cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS). Si realiza una solicitud de
CopyObject
que especifica el uso del cifrado del servidor con claves proporcionadas por el cliente (SSE-C) en un bucket de directorio (origen o destino), la respuesta devuelve un error400 (Bad Request)
de HTTP.Le recomendamos que el cifrado predeterminado del bucket utilice la configuración de cifrado deseada y que no invalide el cifrado predeterminado del bucket en las solicitudes de
CreateSession
o solicitudes de objetosPUT
. A continuación, los objetos nuevos se cifran automáticamente con la configuración de cifrado deseada. Para obtener más información sobre los comportamientos de invalidación del cifrado en los buckets de directorio y cómo cifrar copias de objetos nuevos en un bucket de directorio con SSE-KMS, consulte Especificación del cifrado del servidor con AWS KMS para cargas de objetos nuevos.Las claves de bucket de S3 no son compatibles, cuando se copian objetos cifrados con SSE-KMS de buckets de uso general a buckets de directorio, de buckets de directorio a buckets de uso general o entre buckets de directorio, mediante la operación Copy en operaciones por lotes. En ese caso, Amazon S3 realiza una llamada a AWS KMS cada vez que se realiza una solicitud de copia para un objeto cifrado con KMS. Para obtener más información sobre el uso de SSE-KMS en buckets de directorio, consulte Configuración y supervisión del cifrado predeterminado para los buckets de directorio y Uso del cifrado del servidor con claves de AWS KMS (SSE-KMS) en buckets de directorio.
-
Los objetos de los buckets de directorio no se pueden etiquetar. Solo se puede especificar un conjunto de etiquetas vacío. De forma predeterminada, Operaciones por lotes copia las etiquetas. Si copia un objeto que tiene etiquetas entre los buckets de uso general y los de directorio, recibirá una respuesta
501 (Not Implemented)
. -
S3 Express One Zone le ofrece la opción de elegir el algoritmo de suma de comprobación que se utiliza para validar los datos durante las cargas o descargas. Puede seleccionar uno de los siguientes algoritmos de comprobación de integridad de datos Secure Hash Algoritms (SHA) o Cyclic Redundancy Check (CRC): CRC32, CRC32, SHA-1 y SHA-256. Las sumas de comprobación basadas en MD5 no son compatibles con la clase de almacenamiento S3 Express One Zone.
-
De forma predeterminada, todos los buckets de Amazon S3 establecen la configuración de S3 Object Ownership en Aplicada al propietario del bucket y las listas de control de acceso (ACL) están deshabilitadas. Esta opción no se puede modificar para los bucket de directorio. Puede copiar un objeto desde buckets de uso general a buckets de directorio. Sin embargo, no puede anular la ACL predeterminada al copiar a o desde un bucket de directorio.
-
Independientemente de cómo especifique el manifiesto, la propia lista debe almacenarse en un bucket de uso general. Operaciones por lotes no puede importar los manifiestos existentes desde (ni guardar los manifiestos generados en) buckets de directorio. Sin embargo, los objetos descritos en el manifiesto se pueden almacenar en buckets de directorio.
-
Operaciones por lotes no puede especificar un bucket de directorio como ubicación en un informe de inventario de S3. Los informes de inventario no admiten buckets de directorio. Para crear un archivo de manifiesto para los objetos dentro de un bucket de directorio, use la operación de la API
ListObjectsV2
para enumerar los objetos. A continuación, inserte la lista en un archivo CSV.
Concesión de acceso
Para realizar trabajos de copia, debe tener los siguientes permisos:
-
Para copiar objetos de un bucket de directorio a otro bucket de directorio, debe disponer del permiso
s3express:CreateSession
. -
Para copiar objetos de buckets de directorio a buckets de uso general, debe tener el permiso
s3express:CreateSession
y el permisos3:PutObject
para escribir la copia del objeto en el bucket de destino. -
Para copiar objetos de buckets de uso general en buckets de directorio, debe tener el permiso
s3express:CreateSession
y el permisos3:GetObject
para leer el objeto de origen que se está copiando.Para obtener más información, consulte CopyObject en la Referencia de la API de Amazon Simple Storage Service.
-
Para invocar una función de Lambda, debe conceder permisos al recurso según la función de Lambda. Compruebe los permisos de la API correspondientes para saber qué permisos son necesarios.