Außerdem können Sie Daten aus einer bestimmten Tabelle in einen S3 -Bucket importieren. Die DynamoDB -Tabellenexportfunktion ist eine vollständig verwaltete, zuverlässige und schnelle Lösung. Das Exportieren einer Tabelle verbraucht weder die Lesekapazität der Tabelle und wirkt sich nicht auf die Leistung und Verfügbarkeit aus.
In diesem Artikel werden alles erläutert, was Sie über den Exportieren von Dynamodb -Tabellen in Amazon S3 wissen sollten. Mit Boto3 lernen Sie, wie Sie Dynamodb -Tabellen in S3 exportieren.
So exportieren Sie Daten von DynamoDB nach Amazon S3
Um Daten von Amazon DynamoDB nach Amazon S3 zu exportieren, können Sie den AWS -Datenpipeline -Dienst verwenden und diese so konfigurieren, dass Daten von Ihrer Dynamodb -Tabelle in einen S3 -Bucket regelmäßig exportieren. Es ist auch möglich, den AWS -Kleberdienst zu verwenden, um Daten von DynamoDB nach S3 zu exportieren, indem Sie einen Kleber erstellen, der auf Ihre DynamoDB -Tabelle und einen Kleberjob verweist, der die Daten in S3 exportiert.
Ein weiterer Ansatz wäre die Verwendung der AWS -SDKs, um ein Skript zu schreiben, das Daten aus Ihrer DynamoDB -Tabelle nach S3 exportiert. Mit dem Skript würde die DynamoDB -API die Tabelle und dann die S3 -API zum Schreiben der Daten in einen Eimer scannen oder abfragen.
Im Folgenden sind die Schritte beim Exportieren einer DynamoDB -Tabelle in Amazon S3 beteiligt:
Schritt 1: Installieren Sie die Boto3 -Bibliothek
Du kannst den ... benutzen PIP Installieren Sie Boto3 Befehl zur Installation der Boto3 -Bibliothek, der Amazon Web Services (AWS) SDK für Python. Insbesondere ermöglicht die Bibliothek Python -Entwickler, Software zu schreiben, die Dienste wie Amazon S3 und Amazon EC2 verwendet.
Der Installationscode ist wie unten gezeigt:
PIP Installieren Sie Boto3
Schritt 2: Importieren Sie die erforderlichen Bibliotheken
Der Boto3 importieren Und JSON importieren Dienstprogramme importieren die erforderlichen Bibliotheken für Ihr Skript. Boto3 ist nützlich für die Interaktion mit AWS -Diensten, während JSON zum Lesen und Schreiben von JSON -Daten verwendet wird.
Ihre Befehlszeile sollte so aussehen:
Boto3 importieren
JSON importieren
Schritt 3: Erstellen Sie Clients für DynamoDB und S3
Sie verwenden Clients, um mit S3 und DynamoDB zu interpragen. Um dies zu erreichen, müssen Sie verwenden DynamoDB = Boto3.Client ('DynamoDB') Und s3 = boto3.Client ('S3') Befehle, um Clients für DynamoDB bzw. Amazon S3 zu erstellen.
Sie können die Befehlszeile unten verwenden:
DynamoDB = Boto3.Client ('DynamoDB')
s3 = boto3.Client ('S3')
Schritt 4: Geben Sie Ihren Tabellennamen und den S3 -Eimernamen an
Definieren Sie Ihre Tabellen- und S3 -Bucket -Namen mit den folgenden Codes:
table_name = 'mytableName'
bucket_name = 'mybucketname' '
Schritt 5: Verwenden Sie den Scan -Betrieb, um Elemente abzurufen
Sie können die Scan- oder Abfrageberationen verwenden, um alle Elemente aus Ihrer Tabelle abzurufen. In dieser Abbildung verwenden wir den Scan -Vorgang für das Abrufen von Elementen wie gezeigt:
Ergebnis = DynamoDB.scan (tableName = table_name)
Schritt 6: Schreiben Sie Elemente in eine Datei
Verwenden Sie das lokale Dateisystem, um Elemente in eine Datei zu schreiben. Die Datei nimmt automatisch die Namen "Daten" an.JSON 'im lokalen Dateisystem. Dieses Dienstprogramm sollte helfen:
mit offen ('Daten.JSON ',' W ') als Data_file:
Datendatei.Schreiben Sie (JSON.Dumps (Ergebnis ['Elemente'])))
Schritt 7: Laden Sie die neue Datei auf Amazon S3 hoch
Sie können Ihre Datei jetzt mit der folgenden Befehlszeile in Ihren angegebenen S3 -Bucket hochladen:
S3.Upload_file ('Daten.JSON ', Bucket_Name,' Daten.json ')
Schritt 8: Validieren Sie die Daten
Dieser Schritt ist optional, aber ideal, wenn Sie Ihre Daten validieren möchten. Sie können das Validierungsverfahren durchführen, indem Sie die Datei von Amazon S3 herunterladen, bevor Sie sie lesen.
Abschluss
Es ist wichtig zu beachten, dass Skript ein grundlegendes Beispiel ist und nur für einige Datensätze geeignet ist. Für große Datensätze erwägen Sie die Verwendung der Boto3.Dynamode.Typen.TypSerializer zum Serialisieren oder Formatieren der Elemente und paginieren Sie die Ergebnisse mit dem Dynamode.Scan() Methode. Der Grenze Und ExklusivstartKey Parameter werden während der Pagination nützlich sein.