Migrieren Sie eine Tabelle mithilfe von Export nach S3 und Import aus S3 - Amazon-DynamoDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Migrieren Sie eine Tabelle mithilfe von Export nach S3 und Import aus S3

Voraussetzungen

Informationen zur Preisgestaltung

AWS Gebühren für PITR (abhängig von der Größe der Tabelle und davon, wie lange sie aktiviert PITR ist). Wenn Sie PITR außer dem Export nichts benötigen, können Sie ihn nach Abschluss des Exports ausschalten. AWS Außerdem fallen Gebühren für Anfragen an S3, für das Speichern der exportierten Daten in S3 und für den Import an (basierend auf der unkomprimierten Größe der importierten Daten).

Weitere Informationen zu den DynamoDB-Preisen finden Sie unter DynamoDB-Preise.

Anmerkung

Beim Import von S3 nach DynamoDB gibt es Beschränkungen für die Größe und Anzahl der Objekte. Weitere Informationen finden Sie unter Importkontingente.

Schritt 1: Fordern Sie einen Tabellenexport nach Amazon S3 an

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die DynamoDB-Konsole.

  2. Klicken Sie im Navigationsbereich links in der Konsole auf Exports to S3 (Exporte nach S3).

  3. Wählen Sie eine Quelltabelle und einen Ziel-S3-Bucket aus. Geben Sie den Bucket URL des Zielkonto-Buckets im Format ein. s3://bucketname/prefix Das Präfix ist ein optionaler Ordner, mit dem Sie Ihren Ziel-Bucket besser organisieren können.

  4. Wählen Sie Vollständiger Export. Bei einem vollständigen Export wird der vollständige Tabellen-Snapshot Ihrer Tabelle so ausgegeben, wie er zu dem von Ihnen angegebenen Zeitpunkt war.

    1. Wählen Sie Aktuelle Uhrzeit aus, um den letzten vollständigen Tabellen-Snapshot zu exportieren

    2. Wählen Sie für das exportierte Dateiformat zwischen DynamoDB JSON und Amazon Ion. Die Standardoption ist DynamoDBJSON.

  5. Klicken Sie auf das Symbol Export (Exportieren), um mit dem Export zu beginnen.

  6. Der Export kleiner Tabellen sollte in wenigen Minuten abgeschlossen sein, aber Tabellen im Terabyte-Bereich können mehr als eine Stunde dauern.

Schritt 2: Einen Tabellenimport von Amazon S3 anfordern

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die DynamoDB-Konsole.

  2. Klicken Sie im Navigationsbereich links in der Konsole auf Import from S3 (Import aus S3).

  3. Wählen Sie auf der angezeigten Seite Import from S3 (Import aus S3).

  4. Geben Sie die Amazon S3 S3-Quelle einURL. Sie können sie auch über die Schaltfläche S3 durchsuchen finden:s3://bucket/prefix/AWSDynamoDB/<XXXXXXXX-XXXXXX>/Data/.

  5. Geben Sie an, ob Sie der S3-Bucket-Besitzer sind.

  6. Wählen Sie unter Dateikomprimierung importieren die Option aus GZIP, die dem Export entspricht.

  7. Wählen Sie unter Dateiformat importieren die Option DynamoDB aus, die dem Export JSON entspricht.

  8. Klicken Sie auf die Schaltfläche Weiter und wählen Sie die Optionen für die neue Tabelle aus, in der Ihre Daten gespeichert werden sollen.

  9. Wählen Sie erneut Next (Weiter), um Ihre Importoptionen zu überprüfen, und klicken Sie dann auf Import (Importieren), um die Importaufgabe zu starten. Ihre neue Tabelle wird in den Tabellen mit dem Status Wird erstellt angezeigt. Die Tabelle ist während dieser Zeit nicht zugänglich.

  10. Sobald der Import abgeschlossen ist, wird der Status als Aktiv angezeigt und Sie können mit der Verwendung der Tabelle beginnen.

  11. Kleine Importe sollten in wenigen Minuten abgeschlossen sein, aber Tabellen im Terabyte-Bereich können mehr als eine Stunde dauern.

Synchronisieren von Tabellen während der Migration

Wenn Sie Schreibvorgänge in der Quelltabelle für die Dauer der Migration unterbrechen können, sollten Quelle und Ausgabe nach der Migration exakt übereinstimmen. Wenn Sie Schreibvorgänge nicht unterbrechen können, liegt die Zieltabelle nach der Migration normalerweise etwas hinter der Quelltabelle zurück. Um die Quelltabelle catch, können Sie Streaming (DynamoDB Streams oder Kinesis Data Streams for DynamoDB) verwenden, um die Schreibvorgänge wiederzugeben, die seit dem Backup oder Export in der Quelltabelle stattgefunden haben.

Sie sollten mit dem Lesen der Stream-Datensätze vor dem Zeitstempel beginnen, als Sie die Quelltabelle nach S3 exportiert haben. Wenn der Export nach S3 beispielsweise um 14:00 Uhr erfolgte und der Import in die Zieltabelle um 23:00 Uhr abgeschlossen wurde, sollten Sie das Lesen des DynamoDB-Streams um 13:58 Uhr starten. In der Tabelle mit den Streaming-Optionen für die Erfassung von Änderungsdaten sind die Funktionen der einzelnen Streaming-Modelle zusammengefasst.

Die Verwendung von DynamoDB Streams mit Lambda bietet einen optimierten Ansatz für die Synchronisierung von Daten zwischen den DynamoDB-Quell- und Zieltabellen. Sie können eine Lambda-Funktion verwenden, um jeden Schreibvorgang in der Zieltabelle erneut abzuspielen.

Anmerkung

Die Elemente werden 24 Stunden lang in den DynamoDB Streams aufbewahrt. Sie sollten also planen, Ihre Sicherung und Wiederherstellung oder den Export und Import innerhalb dieses Zeitfensters abzuschließen.