View a markdown version of this page

Cómo funciona la entrega de Amazon S3 - Amazon Kinesis Data Streams

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cómo funciona la entrega de Amazon S3

Utilice este tema para obtener información sobre cómo una entrega de Amazon S3 envía los registros de una transmisión de Amazon Kinesis Data Streams a depósitos de Amazon Simple Storage Service de uso general, incluida la configuración del almacenamiento, la compresión, la clase de almacenamiento, los formatos de registro y el cifrado.

Cómo funciona la entrega

Una entrega de Amazon S3 envía los registros a los buckets de Amazon S3 de uso general siguiendo los pasos siguientes:

  1. Lectura: la entrega lee los registros de todos los fragmentos de la transmisión de Kinesis Data Streams.

  2. Búfer: los registros se almacenan en búfer hasta que se alcance el intervalo de actualización de los datos.

  3. Validar: cuando el formato de registro esSTRING, cada registro se valida como una UTF-8 cadena válida; cuando el formato de registro esJSON, cada registro se valida como una carga útil JSON válida. Los registros que no se validan se envían a la cola de mensajes no válidos.

  4. Comprimir y formatear: los registros se formatean según el formato de salida configurado y se comprimen mediante el algoritmo de compresión especificado.

  5. Entregar: los objetos resultantes se escriben en el bucket de Amazon S3 de destino mediante la plantilla de claves configurada.

  6. Dead-letter cola: los registros que no se validan se escriben en la cola de mensajes muertos con un contexto de error.

Configuración de almacenamiento

Cuando creas un envío de Amazon S3, especificas la siguiente configuración de almacenamiento:

  • bucketARN: el ARN del bucket de Amazon S3 de destino.

  • ExpectedBucketOwner— el Cuenta de AWS ID de 12 dígitos del propietario previsto del bucket de destino. Este valor es obligatorio y ayuda a evitar que se entregue a un depósito no deseado si cambia de propietario.

  • CompressionType— el tipo de compresión aplicado a los objetos entregados. Este valor es obligatorio; especifique si NONE desea entregar los objetos sin compresión. Consulte Opciones de compresión.

  • StorageClass— la clase de almacenamiento de Amazon S3 para los objetos entregados (opcional). Consulte Clase de almacenamiento.

  • OutputKeyTemplate— la plantilla utilizada para crear la clave de objeto de Amazon S3 (opcional). Consulte Plantilla de clave de salida de S3 para la entrega de Amazon S3.

Opciones de compresión

Debe especificar un tipo de compresión para la entrega a cubos de Amazon S3 de uso general. Para entregar objetos sin compresión, elijaNONE. Elija uno de los siguientes tipos de compresión:

  • GZIP: compresión gzip estándar. Buen equilibrio entre la relación de compresión y la velocidad.

  • STD: compresión estándar. Mayor relación de compresión con una descompresión más rápida.

  • NINGUNO: no se aplica ninguna compresión. Los registros se entregan sin comprimir.

Clase de almacenamiento

Si lo desea, puede especificar la clase de almacenamiento de Amazon S3 para los objetos entregados. Si no se especifica, la clase de almacenamiento predeterminada es STANDARD. Clases de almacenamiento compatibles:

  • ESTÁNDAR: almacenamiento de uso general para datos a los que se accede con frecuencia.

  • INTELLIGENT_TIERING: mueve automáticamente los datos entre los niveles de acceso en función de los patrones de uso.

  • GLACIER_IR: almacenamiento de datos de bajo costo que requiere una recuperación inmediata.

Para obtener más información sobre las clases de almacenamiento de Amazon S3, consulte Comprender y administrar las clases de almacenamiento en la Guía del usuario de Amazon S3.

Plantilla de clave de salida

Puede configurar la plantilla de claves de salida para controlar la estructura de claves de objetos de Amazon S3 para los archivos entregados. La plantilla admite marcadores de posición dinámicos para los metadatos de fecha, hora y entrega para organizar los datos en el bucket de destino. Para ver la plantilla predeterminada, las variables admitidas y los ejemplos, consultaPlantilla de clave de salida de S3 para la entrega de Amazon S3.

Actualización de datos

La actualización de los datos define el tiempo máximo de almacenamiento en búfer antes de que se entreguen los registros. Puede configurar este valor entre 300 y 900 segundos (de 5 a 15 minutos). El valor predeterminado es de 300 segundos. Los valores más bajos proporcionan una entrega más rápida, mientras que los valores más altos producen menos objetos más grandes.

Dead-letter hacer cola

La cola de correo no enviado es opcional para la entrega en cubos de Amazon S3 de uso general. Si no especificas una configuración de cola de espera, la entrega escribirá de forma predeterminada la información de error en el mismo bucket de destino con un prefijo de error.

Si especificas una cola de mensajes sin respuesta, debes proporcionar lo siguiente:

  • bucketARN: el ARN del bucket de Amazon S3 que recibe información sobre los registros que no se han podido entregar.

  • ExpectedBucketOwner— el Cuenta de AWS identificador de 12 dígitos del propietario previsto del bucket de espera de mensajes sin respuesta (obligatorio si se especifica una cola de mensajes sin respuesta).

  • ErrorOutputPrefix— un prefijo opcional para organizar los objetos de metadatos fallidos dentro del bucket.

Formatos de registro

Las entregas de Amazon S3 admiten los siguientes formatos de registro para la entrega en buckets de Amazon S3 de uso general:

  • JSON: registros JSON simples.

  • STRING — registros de UTF-8 cadenas.

  • BYTE_ARRAY — registros binarios sin procesar.

nota

El formato de GSR_JSON registro no es compatible con la entrega a cubos de Amazon S3 de uso general. Solo se admite para la entrega a tablas de streaming en Apache Iceberg, que requieren un registro de AWS Glue esquemas.

Cross-account entrega

Las entregas de Amazon S3 admiten la entrega multicuenta a cubos de Amazon S3 de uso general. La transmisión de origen y el bucket de destino deben estar en el mismo lugar. Región de AWS Configure la política del bucket de destino para conceder al rol de IAM de entrega permiso para escribir objetos.

Cifrado

Las entregas de Amazon S3 admiten el cifrado del lado del servidor con AWS KMS claves administradas por el cliente para los objetos entregados a depósitos de Amazon S3 de uso general. Puede especificar una clave gestionada por el cliente para cifrar los objetos entregados AWS KMS .

importante

No puede usar el aws/kinesis AWS KMS alias para el cifrado de destino. Debe usar una clave administrada por el cliente AWS KMS .

Si la transmisión de datos de Kinesis de origen está cifrada, se deben tener en cuenta otras consideraciones. No se admite una transmisión cifrada con un Clave administrada de AWS (el aws/kinesis alias) y la función de ejecución del servicio requiere AWS KMS permisos para descifrar los registros de origen. Para conocer los requisitos de cifrado de la transmisión de código fuente, consulteCifrado de secuencias de origen. Para conocer los AWS KMS permisos que necesita la función de ejecución del servicio, consultePermisos de IAM para la entrega de datos.