Fonctionnement de l'importation de données vers DynamoDB depuis Amazon S3 - Amazon DynamoDB

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.

Fonctionnement de l'importation de données vers DynamoDB depuis Amazon S3

Pour importer des données dans DynamoDB, celles-ci doivent se trouver dans un compartiment Amazon S3 au format CSV, JSON DynamoDB ou Amazon Ion. Les données peuvent être compressées au format ZSTD ou GZIP, ou peuvent être importées directement sous une forme non compressée. Les données sources peuvent être un seul objet Amazon S3 ou plusieurs objets Amazon S3 qui utilisent le même préfixe.

Vos données seront importées dans une nouvelle table DynamoDB, qui sera créée lorsque vous lancerez la demande d'importation. Vous pouvez créer cette table avec des index secondaires, puis interroger et mettre à jour vos données dans tous les index primaires et secondaires dès que l'importation est terminée. Vous pouvez également ajouter un réplica de table globale une fois l'importation terminée.

Note

Au cours du processus d'importation Amazon S3, DynamoDB crée une nouvelle table cible pour l'importation. L'importation dans des tables existantes n'est actuellement pas prise en charge par cette fonction.

L'importation depuis Amazon S3 ne consomme pas de capacité d'écriture sur la nouvelle table, vous n'avez donc pas besoin de prévoir de capacité supplémentaire pour importer des données dans DynamoDB. La tarification de l'importation de données est basée sur la taille non compressée des données sources dans Amazon S3, qui est traitée à la suite de l'importation. Les éléments traités mais qui ne parviennent pas à être chargés dans la table en raison d'un formatage ou d'autres incohérences dans les données sources sont également facturés dans le cadre du processus d'importation. Pour plus de détails sur la tarification, consultez Tarification Amazon DynamoDB.

Vous pouvez importer des données depuis un compartiment S3 appartenant à un autre compte si vous disposez des autorisations appropriées pour lire dans ce compartiment. La nouvelle table peut également se trouver dans une région différente de celle du compartiment Amazon S3 source. Pour de plus amples informations, veuillez consulter Configuration et autorisations d'Amazon Simple Storage Service.

La durée des importations est directement liée aux caractéristiques de vos données dans Amazon S3. Cela inclut la taille des données, le format des données, le schéma de compression, l'uniformité de la distribution des données, le nombre d'objets Amazon S3 et d'autres variables connexes. Plus particulièrement, les ensembles de données dont les clés sont réparties uniformément seront plus rapides à importer que les ensembles de données asymétriques. Par exemple, si la clé de votre index secondaire utilise le mois de l'année pour effectuer le partitionnement, mais que toutes vos données sont du mois de décembre, l'importation de ces données peut prendre beaucoup plus de temps.

Les attributs associés aux clés doivent être uniques dans la table de base. Si certaines clés ne sont pas uniques, l'importation remplacera les éléments associés jusqu'à ce que seul le dernier remplacement soit conservé. Par exemple, si la clé primaire est le mois et que plusieurs éléments sont définis sur le mois de septembre, chaque nouvel élément remplacera les éléments précédemment écrits et un seul élément avec la clé primaire « mois » définie sur septembre sera conservé. Dans ce cas, le nombre d'éléments traités dans la description de la table d'importation ne correspondra pas au nombre d'éléments de la table cible.

AWS CloudTrail enregistre toutes les actions de console et d'API pour l'importation de tables. Pour de plus amples informations, veuillez consulter Journalisation des opérations de DynamoDB à l'aide d' AWS CloudTrail.

La vidéo suivante explique comment importer directement des données depuis Amazon S3 dans DynamoDB.