Comment sauvegarder une table DynamoDB sur Amazon S3 ?

Date de la dernière mise à jour : 16/06/2020

Comment sauvegarder une table Amazon DynamoDB à l'aide d'Amazon Simple Storage Service (Amazon S3) ?

Brève description

DynamoDB propose deux méthodes de sauvegarde intégrées :

Ces deux méthodes utilisent Amazon S3. Cependant, vous n'avez pas accès aux compartiments S3 qui sont utilisés pour ces sauvegardes. Pour créer des sauvegardes que vous pouvez télécharger localement ou utiliser dans un autre service AWS, utilisez AWS Data Pipeline, Amazon EMR ou AWS Glue.

Solution

Data Pipeline

Utilisez AWS Data Pipeline pour exporter votre table vers un compartiment S3 du même compte ou d'un autre compte. Pour plus d'informations, consultez Importer et exporter des données DynamoDB à l'aide d'AWS Data Pipeline.

  • Avantages : il s'agit de la méthode la plus simple. Choisissez cette méthode lorsque vous souhaitez effectuer une sauvegarde unique en utilisant le plus petit nombre de ressources AWS possible. Data Pipeline utilise Amazon EMR pour créer la sauvegarde, et la génération de script est effectué pour vous. Vous n'avez pas besoin d'apprendre Apache Hive ou Apache Spark pour accomplir cette tâche.
  • Inconvénients : cette méthode n'est pas aussi personnalisable que les autres. Si vous souhaitez créer des sauvegardes continues sur Amazon S3, choisissez l'une des autres méthodes. Elle n’est n'est pas non plus recommandée si vous souhaitez utiliser la sauvegarde dans d'autres services AWS.

Amazon EMR

Utilisez Hive pour exporter vos données vers un compartiment S3. Pour plus d'informations, consultez Exportation de données à partir de DynamoDB. Ou utilisez le connecteur open source emr-dynamodb-connector pour gérer votre propre méthode de sauvegarde personnalisée dans Spark ou Hive.

  • Avantages : ces méthodes constituent la bonne pratique à suivre si vous êtes un utilisateur Amazon EMR actif et que Hive ou Spark vous est familier. Ces méthodes offrent plus de contrôle que la méthode Data Pipeline.
  • Inconvénients : si vous débutez avec Amazon EMR, ces méthodes ne constituent pas une bonne pratique. Si vous n'utilisez pas Amazon EMR, mais souhaitez une solution continue et personnalisable, la méthode AWS Glue est la bonne pratique, même si AWS Glue ne vous est pas familier.

AWS Glue

Utilisez AWS Glue pour copier votre table vers Amazon S3. Pour plus d'informations, consultez Comment exporter une table Amazon DynamoDB vers Amazon S3 à l'aide d'AWS Step Functions et d'AWS Glue.

  • Avantages : il s'agit de la bonne pratique à suivre si vous souhaitez des sauvegardes automatisées et continues que vous pouvez également utiliser dans un autre service, comme Amazon Athena.
  • Inconvénients : si AWS Glue ne vous est pas familier, cette méthode peut être difficile, mais probablement pas aussi complexe que les méthodes Amazon EMR. Cette méthode est généralement plus onéreuse que la méthode Data Pipeline.

Si aucune de ces options n'offre la flexibilité souhaitée, utilisez l'API DynamoDB pour créer votre propre solution.


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

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?