Einen Journalexport in QLDB anfordern - Amazon Quantum Ledger Database (Amazon QLDB)

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.

Einen Journalexport in QLDB anfordern

Amazon QLDB bietet eine API, mit der Sie einen Export Ihrer Journalblöcke für einen bestimmten Datums- und Zeitbereich und ein bestimmtes Amazon S3 S3-Bucket-Ziel anfordern können. Ein Journal-Exportauftrag kann die Datenobjekte entweder in der Text- oder Binärdarstellung des Amazon Ion-Formats oder im JSON Lines-Textformat schreiben. Sie können das AWS Management Console, ein AWS SDK oder das AWS Command Line Interface (AWS CLI) verwenden, um einen Exportjob zu erstellen.

AWS Management Console

Gehen Sie wie folgt vor, um mithilfe der QLDB-Konsole eine Journalexportanfrage in QLDB einzureichen.

So beantragen Sie einen Export (Konsole)
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon QLDB-Konsole unter https://console.aws.amazon.com/qldb.

  2. Wählen Sie im Navigationsbereich die Option Export (Exportieren) aus.

  3. Wählen Sie Create export job (Exportauftrag erstellen) aus.

  4. Geben Sie auf der Seite Create export job (Exportauftrag erstellen) die folgenden Exporteinstellungen ein:

    • Hauptbuch — Das Hauptbuch, dessen Journalblöcke Sie exportieren möchten.

    • Startdatum und -zeit — Der inklusive Startzeitstempel in koordinierter Weltzeit (UTC) für den Bereich der zu exportierenden Journalblöcke. Dieser Zeitstempel muss früher als das End date and time (Enddatum und -uhrzeit) sein. Wenn Sie einen Startzeitstempel angeben, der vor dem des Ledgers liegtCreationDateTime, verwendet QLDB standardmäßig den des Ledgers. CreationDateTime

    • Enddatum und -zeit — Der exklusive Endzeitstempel (UTC) des Bereichs der zu exportierenden Journalblöcke. Dieses Datum und diese Uhrzeit dürfen nicht in der future liegen.

    • Ziel für Journalblöcke — Der Amazon S3 S3-Bucket und der Präfixname, in den Ihr Exportjob die Datenobjekte schreibt. Verwenden Sie das folgende Amazon S3 S3-URI-Format.

      s3://DOC-EXAMPLE-BUCKET/prefix/

      Geben Sie einen S3-Bucket-Namen und einen optionalen Präfixnamen für die Ausgabeobjekte an. Im Folgenden wird ein Beispiel gezeigt.

      s3://DOC-EXAMPLE-BUCKET/journalExport/

      Der Bucket-Name und das Präfix müssen beide den Amazon S3 S3-Benennungsregeln und -konventionen entsprechen. Weitere Informationen zur Benennung von Buckets finden Sie unter Einschränkungen und Einschränkungen von Buckets im Amazon S3 Developer Guide. Weitere Informationen zu Schlüsselnamenpräfixen finden Sie unter Objektschlüssel und Metadaten.

      Anmerkung

      Regionsübergreifende Exporte werden nicht unterstützt. Der angegebene Amazon S3 S3-Bucket muss sich in demselben Verzeichnis befinden AWS-Region wie Ihr Ledger.

    • S3-Verschlüsselung — Die Verschlüsselungseinstellungen, die von Ihrem Exportauftrag verwendet werden, um Daten in einen Amazon S3 S3-Bucket zu schreiben. Weitere Informationen zu serverseitigen Verschlüsselungsoptionen in Amazon S3 finden Sie unter Schützen von Daten mithilfe serverseitiger Verschlüsselung im Amazon S3 Developer Guide.

      • Bucket-Standardverschlüsselung — Verwenden Sie die Standardverschlüsselungseinstellungen des angegebenen Amazon S3 S3-Buckets.

      • AES-256 — Verwenden Sie serverseitige Verschlüsselung mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3).

      • AWS-KMS — Verwenden Sie serverseitige Verschlüsselung mit AWS KMS verwalteten Schlüsseln (SSE-KMS).

        Wenn Sie diesen Typ zusammen mit der AWS KMS key Option Andere auswählen wählen, müssen Sie auch einen symmetrischen KMS-Schlüssel für die Verschlüsselung im folgenden Amazon Resource Name (ARN) -Format angeben.

        arn:aws:kms:aws-region:account-id:key/key-id
    • Servicezugriff — Die IAM-Rolle, die QLDB-Schreibberechtigungen in Ihrem Amazon S3 S3-Bucket gewährt. Falls zutreffend, muss die IAM-Rolle auch QLDB-Berechtigungen zur Verwendung Ihres KMS-Schlüssels gewähren.

      Um bei der Anforderung eines Journalexports eine Rolle an QLDB zu übergeben, müssen Sie über die Berechtigungen verfügen, um die iam:PassRole Aktion für die IAM-Rollenressource auszuführen.

      • Neue Servicerolle erstellen und verwenden — Lassen Sie die Konsole eine neue Rolle mit den erforderlichen Berechtigungen für den angegebenen Amazon S3 S3-Bucket für Sie erstellen.

      • Eine bestehende Servicerolle verwenden — Informationen zum manuellen Erstellen dieser Rolle in IAM finden Sie unterExportberechtigungen.

    • Ausgabeformat — Das Ausgabeformat Ihrer exportierten Journaldaten

      • Ionentext — (Standard) Textdarstellung von Amazon Ion

      • Ion binary — Binäre Darstellung von Amazon Ion

      • JSON — Durch Zeilenumbrüche getrenntes JSON-Textformat

        Wenn Sie JSON wählen, konvertiert QLDB die Ion-Journaldaten in Ihren exportierten Datenobjekten nach JSON herunter. Weitere Informationen finden Sie unter Abwärtskonvertierung nach JSON.

  5. Wenn Sie alle gewünschten Einstellungen vorgenommen haben, wählen Sie Create export job (Exportauftrag erstellen) aus.

    Die Zeit, die für die Durchführung des Exportauftrags benötigt wird, variiert je nach der Datengröße. Wenn die Übermittlung der Anforderung erfolgreich ist, kehrt die Konsole zur Hauptseite Export (Exportieren) zurück und listet Ihre Exportaufträge mit ihren aktuellen Status auf.

  6. Sie können Ihre Exportobjekte auf der Amazon S3 S3-Konsole sehen.

    Öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/.

    Weitere Informationen zum Format dieser Ausgabeobjekte finden Sie unter Journalexportausgabe in QLDB.

Anmerkung

Exportaufträge laufen sieben Tage nach deren Abschluss ab. Weitere Informationen finden Sie unter Ablauf des Exportauftrags.

QLDB-API

Sie können auch einen Journalexport anfordern, indem Sie die Amazon QLDB-API mit einem AWS SDK oder dem verwenden. AWS CLI Die QLDB-API bietet die folgenden Operationen zur Verwendung durch Anwendungsprogramme:

  • ExportJournalToS3— Exportiert Journalinhalte innerhalb eines Datums- und Zeitbereichs aus einem bestimmten Ledger in einen bestimmten Amazon S3 S3-Bucket. Ein Exportauftrag kann die Daten als Objekte entweder in der Text- oder Binärdarstellung des Amazon Ion-Formats oder im JSON Lines-Textformat schreiben.

  • DescribeJournalS3Export— Gibt detaillierte Informationen über einen Journal-Exportjob zurück. Die Ausgabe enthält den aktuellen Status, die Erstellungszeit und die Parameter Ihrer ursprünglichen Exportanforderung.

  • ListJournalS3Exports— Gibt eine Liste mit Jobbeschreibungen für den Journalexport für alle Bücher zurück, die dem aktuellen Buch AWS-Konto und der Region zugeordnet sind. Die Ausgabe jeder Exportauftragsbeschreibung enthält dieselben Details, die von DescribeJournalS3Export zurückgegeben werden.

  • ListJournalS3ExportsForLedger— Gibt eine Liste von Jobbeschreibungen für den Journalexport für ein bestimmtes Buch zurück. Die Ausgabe jeder Exportauftragsbeschreibung enthält dieselben Details, die von DescribeJournalS3Export zurückgegeben werden.

Eine vollständige Beschreibung dieser API-Vorgänge finden Sie unter Amazon QLDB API-Referenz.

Informationen zum Exportieren von Journaldaten mit dem AWS CLI finden Sie in der AWS CLI Befehlsreferenz.

Beispielanwendung (Java)

Java-Codebeispiele für grundlegende Exportoperationen finden Sie im GitHub Repository amazon-qldb-dmv-sampleaws-samples/ -java. Anweisungen zum Herunterladen und Installieren dieser Beispielanwendung finden Sie unter Installation der Amazon QLDB Java-Beispielanwendung. Bevor Sie einen Export anfordern, stellen Sie sicher, dass Sie die Schritte 1—3 unter So erstellen Sie ein Beispiel-Ledger und laden es mit Beispieldaten. Java-Anleitung

Der Tutorial-Code in den folgenden Klassen enthält Beispiele für die Erstellung eines Exports, die Überprüfung des Status eines Exports und die Verarbeitung der Ausgabe eines Exports.

Klasse Beschreibung
ExportJournal Exportiert Journal-Blöcke aus dem vehicle-registration-Beispiel-Ledger für einen Zeitstempel-Bereich von vor 10 Minuten bis jetzt. Schreibt die Ausgabenobjekte in einen angegebenen S3-Bucket oder erstellt einen einzigartigen Bucket, wenn keiner angegeben ist.
DescribeJournalExport Beschreibt einen Journalexportauftrag für eine angegebene exportId im vehicle-registration-Beispiel-Ledger.
ListJournalExports Gibt eine Liste der Beschreibungen des Journal-Exportauftrags für den vehicle-registration-Beispiel-Ledger zurück.
ValidateQldbHashChain Validiert die Hash-Kette des vehicle-registration-Beispiel-Ledgers mit einer gegebenen exportId. Wenn diese Option nicht angegeben ist, wird ein neuer Export für die Verwendung mit der Hash-Kettenvalidierung angefordert.

Ablauf des Exportauftrags

Abgeschlossene Journalexportaufträge unterliegen einer Aufbewahrungsfrist von 7 Tagen. Nach Ablauf dieses Limits werden sie automatisch dauerhaft gelöscht. Dieser Ablaufzeitraum ist ein festes Limit und kann nicht geändert werden.

Nachdem ein abgeschlossener Exportauftrag gelöscht wurde, können Sie die QLDB-Konsole oder die folgenden API-Operationen nicht mehr verwenden, um Metadaten über den Job abzurufen:

  • DescribeJournalS3Export

  • ListJournalS3Exports

  • ListJournalS3ExportsForLedger

Dieser Ablauf hat jedoch keine Auswirkungen auf die exportierten Daten. Alle Metadaten werden in den Manifestdateien aufbewahrt, die von Ihren Exporten geschrieben werden. Dieser Ablauf soll den API-Vorgängen, die Journalexportaufträge auflisten, einen reibungsloseren Ablauf bieten. QLDB entfernt alte Exportaufträge, um sicherzustellen, dass Sie nur aktuelle Exporte sehen, ohne mehrere Auftragsseiten analysieren zu müssen.