Comment envoyer un chargement en bloc vers une table DynamoDB ?

Date de la dernière mise à jour : 01/09/2020

Comment charger des données en bloc vers une table Amazon DynamoDB ?

Solution

Utilisez l'une des options suivantes pour charger des données en bloc vers DynamoDB.

BatchWriteItem

Utilisez l'opération d'API BatchWriteItem pour émettre plusieurs appels PutItem simultanément. Vous pouvez également utiliser des processus ou des threads parallèles dans votre code pour émettre plusieurs appels d'API BatchWriteItem parallèles et ainsi accélérer le chargement des données.

AWS Data Pipeline

Si les données se trouvent dans Amazon Simple Storage Service (Amazon S3), vous pouvez utiliser Data Pipeline pour effectuer une exportation vers DynamoDB. Data Pipeline automatise le processus de création d'un cluster Amazon EMR et d'exportation de vos données depuis Amazon S3 vers DynamoDB dans des requêtes BatchWriteItem parallèles. Lorsque vous utilisez Data Pipeline, vous ne devez pas écrire le code pour le transfert parallèle. Pour plus d'informations, consultez Importation des données de Amazon S3 vers DynamoDB.

Amazon EMR

Pour charger des données vers DynamoDB avec Amazon EMR et Apache Hive :

  1. Créez un cluster EMR :
    Pour Version, sélectionnez emr-5.30.0 ou version ultérieure.
    Pour Applications, sélectionnez une option qui inclut Hive.
  2. Créez une table Hive externe qui désigne l'emplacement Amazon S3 correspondant à vos données.
  3. Créez une autre table Hive externe et pointez-la vers la table DynamoDB.
  4. Utilisez la commande INSERT OVERWRITE pour écrire des données depuis Amazon S3 vers DynamoDB. Pour plus d'informations, voir Importing Data to DynamoDB.

AWS Database Migration Service (AWS DMS)

Vous pouvez utiliser AWS DMS pour exporter des données d'une base de données relationnelle vers une table DynamoDB. Pour plus d'informations, consultez Using an Amazon DynamoDB database as a target for AWS Database Migration Service.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?