View a markdown version of this page

Comment fonctionne la livraison Amazon S3 - Amazon Kinesis Data Streams

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Comment fonctionne la livraison Amazon S3

Consultez cette rubrique pour découvrir comment une diffusion Amazon S3 envoie des enregistrements depuis un flux Amazon Kinesis Data Streams vers des compartiments Amazon Simple Storage Service à usage général, y compris la configuration du stockage, la compression, la classe de stockage, les formats d'enregistrement et le chiffrement.

Comment fonctionne la livraison

Une livraison Amazon S3 envoie des enregistrements vers des compartiments Amazon S3 à usage général en suivant les étapes suivantes :

  1. Lecture  : la diffusion lit les enregistrements de tous les fragments du flux Kinesis Data Streams.

  2. Tampon  : les enregistrements sont mis en mémoire tampon jusqu'à ce que l'intervalle de rafraîchissement des données soit atteint.

  3. Valider  : lorsque le format d'enregistrement estSTRING, chaque enregistrement est validé en tant que UTF-8 chaîne valide ; lorsque le format d'enregistrement l'estJSON, chaque enregistrement est validé en tant que charge utile JSON valide. Les enregistrements dont la validation échoue sont envoyés dans la file d'attente des lettres mortes.

  4. Compresser et formater  : les enregistrements sont formatés selon le format de sortie configuré et compressés à l'aide de l'algorithme de compression spécifié.

  5. Livrer  : les objets résultants sont écrits dans le compartiment Amazon S3 de destination à l'aide du modèle de clé configuré.

  6. Dead-letter file d'attente  : les enregistrements dont la validation échoue sont écrits dans la file d'attente de lettres mortes avec le contexte de l'erreur.

Configuration du stockage

Lorsque vous créez une livraison Amazon S3, vous spécifiez la configuration de stockage suivante :

  • BucketArn  : l'ARN du compartiment Amazon S3 de destination.

  • ExpectedBucketOwner— l' Compte AWS identifiant à 12 chiffres du propriétaire attendu du compartiment de destination. Cette valeur est obligatoire et permet d'éviter toute livraison vers un compartiment involontaire en cas de changement de propriétaire.

  • CompressionType— le type de compression appliqué aux objets livrés. Cette valeur est obligatoire ; spécifiez NONE de fournir des objets sans compression. Consultez Options de compression.

  • StorageClass— la classe de stockage Amazon S3 pour les objets livrés (facultatif). Consultez Classe de stockage.

  • OutputKeyTemplate— le modèle utilisé pour créer la clé d'objet Amazon S3 (facultatif). Consultez Modèle de clé de sortie S3 pour la livraison d'Amazon S3.

Options de compression

Vous devez spécifier un type de compression pour la diffusion vers des compartiments Amazon S3 à usage général. Pour diffuser des objets sans compression, choisissezNONE. Choisissez l'un des types de compression suivants :

  • GZIP — compression gzip standard. Bon équilibre entre taux de compression et vitesse.

  • STD — Compression standard Z. Taux de compression plus élevé avec une décompression plus rapide.

  • AUCUNE  : aucune compression n'a été appliquée. Les enregistrements sont livrés non compressés.

Classe de stockage

Vous pouvez éventuellement spécifier la classe de stockage Amazon S3 pour les objets livrés. Si elle n'est pas spécifiée, la classe de stockage par défaut est STANDARD. Classes de stockage prises en charge :

  • STANDARD  : stockage à usage général pour les données fréquemment consultées.

  • INTELLIGENT_TIERING  : déplace automatiquement les données entre les niveaux d'accès en fonction des modèles d'utilisation.

  • GLACIER_IR  : stockage à faible coût pour les données nécessitant une récupération immédiate.

Pour plus d'informations sur les classes de stockage Amazon S3, consultez Comprendre et gérer les classes de stockage dans le guide de l'utilisateur Amazon S3.

Modèle de clé de sortie

Vous pouvez configurer le modèle de clé de sortie pour contrôler la structure de clé d'objet Amazon S3 pour les fichiers livrés. Le modèle prend en charge des espaces réservés dynamiques pour les métadonnées de date, d'heure et de livraison afin d'organiser vos données dans le compartiment de destination. Pour le modèle par défaut, les variables prises en charge et des exemples, consultezModèle de clé de sortie S3 pour la livraison d'Amazon S3.

Actualité des données

La fraîcheur des données définit la durée maximale de mise en mémoire tampon avant la livraison des enregistrements. Vous pouvez configurer cette valeur entre 300 et 900 secondes (5 à 15 minutes). La durée par défaut est 300 secondes. Des valeurs plus faibles permettent une livraison plus rapide, tandis que des valeurs plus élevées produisent des objets plus petits et plus grands.

Dead-letter file d'attente

Une file d'attente de lettres mortes est facultative pour la livraison vers des compartiments Amazon S3 à usage général. Si vous ne spécifiez pas de configuration de file d'attente de lettres mortes, la diffusion écrit par défaut les informations d'erreur dans le même compartiment de destination avec un préfixe d'erreur.

Si vous spécifiez une file d'attente de lettres mortes, vous devez fournir les informations suivantes :

  • BucketArn  : l'ARN du compartiment Amazon S3 qui reçoit des informations sur les enregistrements qui n'ont pas pu être transmis.

  • ExpectedBucketOwner— l' Compte AWS identifiant à 12 chiffres du propriétaire attendu du compartiment de files d'attente de lettres mortes (obligatoire lorsque vous spécifiez une file d'attente de lettres mortes).

  • ErrorOutputPrefix— un préfixe facultatif pour organiser les objets de métadonnées d'échec au sein du bucket.

Formats d'enregistrement

Les livraisons Amazon S3 prennent en charge les formats d'enregistrement suivants pour la livraison vers des compartiments Amazon S3 à usage général :

  • JSON  : enregistrements JSON simples.

  • STRING — enregistrements de UTF-8 chaînes.

  • BYTE_ARRAY — enregistrements binaires bruts.

Note

Le format GSR_JSON d'enregistrement n'est pas pris en charge pour la livraison vers des compartiments Amazon S3 à usage général. Il n'est pris en charge que pour la diffusion vers des tables de streaming sur Apache Iceberg, qui nécessitent AWS Glue Schema Registry.

Cross-account livraison

Les livraisons Amazon S3 prennent en charge la livraison entre comptes vers des compartiments Amazon S3 à usage général. Le flux source et le bucket de destination doivent se trouver dans le même compartiment Région AWS. Configurez la politique du compartiment de destination pour accorder au rôle IAM de livraison l'autorisation d'écrire des objets.

Chiffrement

Les livraisons Amazon S3 prennent en charge le chiffrement côté serveur avec des AWS KMS clés gérées par le client pour les objets livrés vers des compartiments Amazon S3 à usage général. Vous pouvez spécifier une AWS KMS clé gérée par le client pour chiffrer les objets livrés.

Important

Vous ne pouvez pas utiliser l'aws/kinesis AWS KMS alias pour le chiffrement de destination. Vous devez utiliser une clé gérée par le client AWS KMS .

Si votre flux de données Kinesis source est chiffré, des considérations supplémentaires s'appliquent. Un flux chiffré avec un Clé gérée par AWS (l'aws/kinesisalias) n'est pas pris en charge et le rôle d'exécution du service nécessite AWS KMS des autorisations pour déchiffrer les enregistrements sources. Pour connaître les exigences en matière de chiffrement du flux source, consultezChiffrement du flux source. Pour les AWS KMS autorisations dont le rôle d'exécution du service a besoin, consultezAutorisations IAM pour la fourniture de données.