Wie kann ich eine DynamoDB-Tabelle in Amazon S3 sichern?

Lesedauer: 4 Minute
0

Ich möchte meine Amazon-DynamoDB-Tabelle mit Amazon Simple Storage Service (Amazon S3) sichern.

Kurzbeschreibung

DynamoDB bietet zwei standardmäßige Backup-Methoden:

Beide Methoden eignen sich für die Sicherung Ihrer Tabellen zur Notfallwiederherstellung. Mit ihnen können Sie die Daten jedoch nicht für Anwendungsfälle nutzen, die Datenanalysen oder ETL-Aufgaben (Extrahieren, Transformieren und Laden) beinhalten. Die Funktion Zu S3 exportieren in DynamoDB ist die einfachste Möglichkeit, Backups zu erstellen, die Sie lokal herunterladen oder mit einem anderen AWS-Dienst verwenden können. Um den Prozess der Backup-Erstellung anzupassen, können Sie Amazon EMR oder AWS Glue verwenden.

Lösung

DynamoDB-Funktion Zu S3 exportieren

Mit dieser Funktion können Sie Daten aus einer Amazon-DynamoDB-Tabelle innerhalb Ihres Fensters für die zeitpunktbezogene Wiederherstellung jederzeit in einen Amazon S3-Bucket exportieren. Weitere Informationen finden Sie unter DynamoDB Datenexport zu Amazon S3 – Funktionsweise.

Ein Beispiel für die Verwendung dieser Funktion finden Sie unter Exportieren Sie Amazon DynamoDB-Tabellendaten in Ihren Data Lake in Amazon S3, ohne dass Code geschrieben werden muss.

Die Funktion Zu S3 exportieren ermöglicht auch andere Verwendungen Ihrer Daten, darunter diese:

  • Durchführen von ETL-Aufgaben an exportierten Daten auf S3 und Importieren der Daten zurück in DynamoDB
  • Aufbewahren älterer Snapshots für Audits
  • Integrieren der Daten in andere Dienste oder Anwendungen
  • Erstellen eines S3-Data-Lake aus den DynamoDB-Daten und Analysieren der Daten aus verschiedenen Diensten wie Amazon Athena, Amazon Redshift und Amazon SageMaker
  • Ausführen von Abfragen an Ihren Daten aus Athena oder Amazon EMR nach Bedarf, ohne Ihre DynamoDB-Kapazität zu beeinträchtigen

Beachten Sie bei der Verwendung dieser Funktion die folgenden Vor- und Nachteile:

  • Vorteile: Mit dieser Funktion können Sie Daten über AWS-Regionen und Konten hinweg exportieren, ohne benutzerdefinierte Anwendungen erstellen oder Code schreiben zu müssen. Die Exporte haben keinen Einfluss auf die Lesekapazität oder die Verfügbarkeit Ihrer Produktionstabellen.
  • Nachteile: Die Funktion exportiert die Tabellendaten nur im DynamoDB-JSON- oder Amazon-Ion-Format. Informationen zum nativen erneuten Import der Daten mit einem S3-Bucket finden Sie unter DynamoDB-Datenimport zu Amazon S3: Funktionsweise. Sie können auch eine neue Vorlage erstellen oder AWS Glue, Amazon EMR oder das AWS SDK verwenden, um die Daten erneut zu importieren.

Amazon EMR

Verwenden Sie Amazon EMR, um Ihre Daten in einen S3-Bucket zu exportieren. Dies ist mit den folgenden Methoden möglich:

  • Ausführen von Hive/Spark-Abfragen für DynamoDB-Tabellen mithilfe von DynamoDBStorageHandler. Weitere Informationen finden Sie unter Exportieren von Daten aus DynamoDB.
  • Verwenden des Open-Source-Tools emr-dynamodb-tool auf GitHub, um DynamoDB-Tabellen zu exportieren/importieren.

Beachten Sie bei der Verwendung dieser Methoden die folgenden Vor- und Nachteile:

  • **Vorteile:**Wenn Sie ein aktiver Amazon-EMR-Benutzer und mit Hive oder Spark vertraut sind, können Sie Ihre Konfigurationen mit diesen Methoden besser verwalten als mit der nativen Funktion Nach S3 exportieren. Sie können auch bestehende Cluster zu diesem Zweck nutzen.
  • **Nachteile:**Für diese Methoden müssen Sie einen EMR-Cluster erstellen und verwalten. Wenn Sie DynamoDBStorageHandler verwenden, müssen Sie mit Hive oder Spark vertraut sein.

AWS Glue

Verwenden Sie AWS Glue, um Ihre Tabelle nach Amazon S3 zu kopieren. Weitere Informationen finden Sie unter Verwendung von AWS Glue und Amazon DynamoDB-Export.

  • Vorteile: Da es sich bei AWS Glue um einen Serverless-Service handelt, müssen Sie keine Ressourcen erstellen und verwalten. Sie können direkt auf DynamoDB zurückschreiben. Sie können beim Export von Daten benutzerdefinierte ETL-Logik für Anwendungsfälle wie Filterung und Konvertierung hinzufügen. Sie können außerdem Ihr bevorzugtes Format aus den Optionen CSV, JSON, Parquet oder ORC wählen. Weitere Informationen finden Sie unter Data format options for inputs and outputs in AWS Glue.
  • Nachteile: Wenn Sie diese Option wählen, müssen Sie die Nutzung von Spark beherrschen. Außerdem ist die Verwaltung eines Quellcodes für Ihre AWS-Glue-ETL-Aufgabe erforderlich. Weitere Informationen finden Sie unter "connectionType": "dynamodb".

Wenn keine dieser Optionen die Flexibilität bietet, die Sie benötigen, können Sie die DynamoDB-API verwenden, um Ihre eigene Lösung zu erstellen.

Ähnliche Informationen

Anfordern eines Tabellenexports in DynamoDB

How to export an Amazon DynamoDB table to Amazon S3 using AWS Step Functions and AWS Glue

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 9 Monaten