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.
Les bonnes pratiques ci-dessous s'appliquent à l'importation de données depuis Amazon S3 vers DynamoDB
Restez en dessous de la limite de 50 000 objets S3
Chaque tâche d'importation prend en charge un maximum de 50 000 objets S3. Si votre jeu de données contient plus de 50 000 objets, pensez à les consolider en objets plus grands.
Éviter les objets S3 trop volumineux
Les objets S3 sont importés en parallèle. Le fait de disposer de nombreux objets S3 de taille moyenne permet une exécution parallèle sans surcharge excessive. Pour les éléments de moins de 1 Ko, envisagez de placer 4 000 000 d'éléments dans chaque objet S3. Si la taille moyenne de vos objets est plus grande, placez proportionnellement moins d'éléments dans chaque objet S3.
Rendre les données triées aléatoires
Si un objet S3 contient des données dans un ordre trié, il peut créer une partition dynamique. Dans cette situation, une partition reçoit toute l'activité, puis la partition suivante, etc. Les données triées sont définies en tant qu'éléments en séquence dans l'objet S3 qui seront écrits sur la même partition cible lors de l'importation. Une situation courante dans laquelle les données sont triées est un fichier CSV dans lequel les éléments sont triés par clé de partition, afin que les éléments répétés partagent la même clé de partition.
Pour éviter de créer une partition dynamique, nous vous recommandons de choisir un ordre aléatoire pour ces cas. Cela peut améliorer les performances, en répartissant les opérations d'écriture. Pour de plus amples informations, veuillez consulter Répartition efficace de l'activité d'écriture lors du chargement des données dans DynamoDB.
Compresser les données pour maintenir la taille totale des objets S3 en dessous de la limite régionale
Dans le processus d'importation depuis S3, la taille totale des données d'objet S3 à importer est limitée. La limite est de 15 To dans les régions us-east-1, us-west-2 et eu-west-1, et 1 To dans toutes les autres Régions. La limite est basée sur les tailles brutes des objets S3.
La compression permet à un plus grand nombre de données brutes de respecter la limite. Si la compression à elle seule ne suffit pas à maintenir l'importation dans les limites, vous pouvez également contacter le Support Premium AWS
Noter l'impact de la taille de l'élément sur les performances
Si la taille moyenne de vos éléments est très petite (inférieure à 200 octets), le processus d'importation peut prendre un peu plus de temps que pour les éléments de grande taille.
Envisager d'importer sans aucun index secondaire global
La durée d'une tâche d'importation peut dépendre de la présence d'un ou de plusieurs index secondaires globaux (GSIs). Si vous prévoyez de créer des index avec des clés de partition à faible cardinalité, vous pouvez accélérer l'importation si vous repoussez la création de l'index après la fin de la tâche d'importation (plutôt que de les inclure dans la tâche d'importation).
Note
La création d'un GSI lors de l'importation n'entraîne pas de frais d'écriture (contrairement à la création d'un GSI après l'importation).