Beispiele für QLDB bei der Verwendung von AWS CLI - AWS Command Line Interface

Beispiele für QLDB bei der Verwendung von AWS CLI

Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit QLDB nutzen.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt, wie cancel-journal-kinesis-stream verwendet wird.

AWS CLI

So löschen Sie einen Journal-Stream

Im folgenden Beispiel für cancel-journal-kinesis-stream wird der angegebene Journal-Stream aus einem Ledger gelöscht.

aws qldb cancel-journal-kinesis-stream \ --ledger-name myExampleLedger \ --stream-id 7ISCkqwe4y25YyHLzYUFAf

Ausgabe:

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Weitere Informationen finden Sie unter Streamen von Journaldaten aus Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie create-ledger verwendet wird.

AWS CLI

Beispiel 1: So erstellen Sie ein Ledger mit Standardeigenschaften

Im folgenden Beispiel für create-ledger wird ein Ledger namens myExampleLedger und dem Berechtigungsmodus STANDARD erstellt. Die optionalen Parameter für den Löschschutz und den AWS-KMS-Schlüssel sind nicht angegeben, daher wird standardmäßig jeweils ein true und ein AWS-KMS-Schlüssel verwendet.

aws qldb create-ledger \ --name myExampleLedger \ --permissions-mode STANDARD

Ausgabe:

{ "State": "CREATING", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": true, "CreationDateTime": 1568839243.951, "Name": "myExampleLedger", "PermissionsMode": "STANDARD" }

Beispiel 2: So erstellen Sie ein Ledger mit deaktiviertem Löschschutz, einem vom Kunden verwalteten KMS-Schlüssel und angegebene Tags

Im folgenden Beispiel für create-ledger wird ein Ledger namens myExampleLedger2 und dem Berechtigungsmodus STANDARD erstellt. Die Löschschutzfunktion ist deaktiviert, der angegebene vom Kunden verwaltete KMS-Schlüssel wird für die Verschlüsselung im Ruhezustand verwendet, und die angegebenen Tags werden an die Ressource angehängt.

aws qldb create-ledger \ --name myExampleLedger2 \ --permissions-mode STANDARD \ --no-deletion-protection \ --kms-key arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags IsTest=true,Domain=Test

Ausgabe:

{ "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger2", "DeletionProtection": false, "CreationDateTime": 1568839543.557, "State": "CREATING", "Name": "myExampleLedger2", "PermissionsMode": "STANDARD", "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter CreateLedger in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie delete-ledger verwendet wird.

AWS CLI

So löschen Sie ein Ledger

Im folgenden Beispiel für delete-ledger wird das angegebene Ledger gelöscht.

aws qldb delete-ledger \ --name myExampleLedger

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter DeleteLedger in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie describe-journal-kinesis-stream verwendet wird.

AWS CLI

So beschreiben Sie einen Journal-Stream

Im folgenden Beispiel für describe-journal-kinesis-stream wird der angegebene Journal-Stream aus einem Ledger angezeigt.

aws qldb describe-journal-kinesis-stream \ --ledger-name myExampleLedger \ --stream-id 7ISCkqwe4y25YyHLzYUFAf

Ausgabe:

{ "Stream": { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } }

Weitere Informationen finden Sie unter Streamen von Journaldaten aus Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie describe-journal-s3-export verwendet wird.

AWS CLI

So beschreiben Sie einen Journal-Exportauftrag

Im folgenden Beispiel für describe-journal-s3-export werden die Details des angegebenen Ledger-Exportauftrags angezeigt.

aws qldb describe-journal-s3-export \ --name myExampleLedger \ --export-id ADR2ONPKN5LINYGb4dp7yZ

Ausgabe:

{ "ExportDescription": { "S3ExportConfiguration": { "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "Status": "COMPLETED", "ExportCreationTime": 1568847801.418, "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0, "LedgerName": "myExampleLedger", "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" } }

Weitere Informationen finden Sie unter Exportieren Ihres Journals in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie describe-ledger verwendet wird.

AWS CLI

So beschreiben Sie ein Ledger

Im folgenden Beispiel für describe-ledger werden die Details des angegebenen Ledgers angezeigt.

aws qldb describe-ledger \ --name myExampleLedger

Ausgabe:

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "State": "ACTIVE", "Name": "myExampleLedger", "DeletionProtection": true, "PermissionsMode": "STANDARD", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "ENABLED" } }

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter DescribeLedger in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie export-journal-to-s3 verwendet wird.

AWS CLI

So exportieren Sie Journalblöcke nach S3

Im folgenden Beispiel für export-journal-to-s3 wird ein Exportauftrag für Journalblöcke mit einem angegebenen Datums- und Zeitbereich aus einem Ledger namens myExampleLedger erstellt. Der Exportauftrag schreibt die Blöcke in einen angegebenen Amazon-S3-Bucket.

aws qldb export-journal-to-s3 \ --name myExampleLedger \ --inclusive-start-time 2019-09-18T00:00:00Z \ --exclusive-end-time 2019-09-18T22:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-s3-export-role \ --s3-export-configuration file://my-s3-export-config.json

Inhalt von my-s3-export-config.json:

{ "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }

Ausgabe:

{ "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" }

Weitere Informationen finden Sie unter Exportieren Ihres Journals in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie get-block verwendet wird.

AWS CLI

Beispiel 1: So rufen Sie einen Journal-Block und einen Nachweis für die Überprüfung mithilfe von Eingabedateien ab

Im folgenden Beispiel für get-block werden ein Blockdatenobjekt und ein Nachweis aus dem angegebenen Ledger angefordert. Die Anforderung bezieht sich auf eine bestimmte Digest-Tip-Adresse und Blockadresse.

aws qldb get-block \ --name vehicle-registration \ --block-address file://myblockaddress.json \ --digest-tip-address file://mydigesttipaddress.json

Inhalt von myblockaddress.json:

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }

Inhalt von mydigesttipaddress.json:

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }

Ausgabe:

{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Weitere Informationen finden Sie unter Datenverifizierung in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Beispiel 2: So rufen Sie einen Journalblock und einen Nachweis zur Überprüfung mithilfe einer Kurznotationssyntax ab

Im folgenden Beispiel für get-block werden ein Blockdatenobjekt und ein Nachweis aus dem angegebenen Ledger mithilfe einer Kurznotationssyntax angefordert. Die Anforderung bezieht sich auf eine bestimmte Digest-Tip-Adresse und Blockadresse.

aws qldb get-block \ --name vehicle-registration \ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"' \ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"'

Ausgabe:

{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Weitere Informationen finden Sie unter Datenverifizierung in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter GetBlock in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie get-digest verwendet wird.

AWS CLI

So rufen Sie ein Digest eines Ledgers ab

Im folgenden Beispiel für get-digest wird für den letzten festgeschriebenen Block im Journal ein Digest aus dem angegebenen Ledger angefordert.

aws qldb get-digest \ --name vehicle-registration

Ausgabe:

{ "Digest": "6m6BMXobbJKpMhahwVthAEsN6awgnHK62Qq5McGP1Gk=", "DigestTipAddress": { "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" } }

Weitere Informationen finden Sie unter Datenverifizierung in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter GetDigest in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie get-revision verwendet wird.

AWS CLI

Beispiel 1: So rufen Sie eine Dokumentrevision und einen Nachweis für die Überprüfung mithilfe von Eingabedateien ab

Im folgenden Beispiel für get-revision werden ein Revisionsdatenobjekt und ein Nachweis aus dem angegebenen Ledger angefordert. Die Anforderung bezieht sich auf eine bestimmte Digest-Tip-Adresse, Dokument-ID und Blockadresse der Revision.

aws qldb get-revision \ --name vehicle-registration \ --block-address file://myblockaddress.json \ --document-id JUJgkIcNbhS2goq8RqLuZ4 \ --digest-tip-address file://mydigesttipaddress.json

Inhalt von myblockaddress.json:

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }

Inhalt von mydigesttipaddress.json:

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }

Ausgabe:

{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Weitere Informationen finden Sie unter Datenverifizierung in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Beispiel 2: So rufen Sie eine Dokumentrevision und einen Nachweis zur Überprüfung mithilfe einer Kurznotationssyntax ab

Im folgenden Beispiel für get-revision werden ein Revisionsdatenobjekt und ein Nachweis aus dem angegebenen Ledger mithilfe einer Kurznotationssyntax angefordert. Die Anforderung bezieht sich auf eine bestimmte Digest-Tip-Adresse, Dokument-ID und Blockadresse der Revision.

aws qldb get-revision \ --name vehicle-registration \ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"' \ --document-id JUJgkIcNbhS2goq8RqLuZ4 \ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"'

Ausgabe:

{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Weitere Informationen finden Sie unter Datenverifizierung in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter GetRevision in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie list-journal-kinesis-streams-for-ledger verwendet wird.

AWS CLI

So listen Sie Journal-Streams für ein Ledger auf

Im folgenden Beispiel für list-journal-kinesis-streams-for-ledger werden Journal-Streams aus dem angegebenen Ledger aufgelistet.

aws qldb list-journal-kinesis-streams-for-ledger \ --ledger-name myExampleLedger

Ausgabe:

{ "Streams": [ { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } ] }

Weitere Informationen finden Sie unter Streamen von Journaldaten aus Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie list-journal-s3-exports-for-ledger verwendet wird.

AWS CLI

So listen Sie Journalexportaufträgen für ein Ledger auf

Im folgenden Beispiel für list-journal-s3-exports-for-ledger werden Journalexportaufträge für das angegebene Ledger aufgelistet.

aws qldb list-journal-s3-exports-for-ledger \ --name myExampleLedger

Ausgabe:

{ "JournalS3Exports": [ { "LedgerName": "myExampleLedger", "ExclusiveEndTime": 1568847599.0, "ExportCreationTime": 1568847801.418, "S3ExportConfiguration": { "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "RoleArn": "arn:aws:iam::123456789012:role/qldb-s3-export", "InclusiveStartTime": 1568764800.0, "Status": "IN_PROGRESS" } ] }

Weitere Informationen finden Sie unter Exportieren Ihres Journals in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie list-journal-s3-exports verwendet wird.

AWS CLI

So listen Sie Journalexportaufträge auf

Im folgenden Beispiel für list-journal-s3-exports werden Journalexportaufträge für alle Ledger aufgeführt, die dem aktuellen AWS-Konto und der Region zugeordnet sind.

aws qldb list-journal-s3-exports

Ausgabe:

{ "JournalS3Exports": [ { "Status": "IN_PROGRESS", "LedgerName": "myExampleLedger", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568847801.418, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0 }, { "Status": "COMPLETED", "LedgerName": "myExampleLedger2", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568846847.638, "ExportId": "2pdvW8UQrjBAiYTMehEJDI", "InclusiveStartTime": 1568592000.0, "ExclusiveEndTime": 1568764800.0 } ] }

Weitere Informationen finden Sie unter Exportieren Ihres Journals in Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie list-ledgers verwendet wird.

AWS CLI

So listen Sie Ihre verfügbaren Ledger auf

Im folgenden Beispiel für list-ledgers werden alle Ledger aufgelistet, die dem aktuellen AWS-Konto und der Region zugeordnet sind.

aws qldb list-ledgers

Ausgabe:

{ "Ledgers": [ { "State": "ACTIVE", "CreationDateTime": 1568839243.951, "Name": "myExampleLedger" }, { "State": "ACTIVE", "CreationDateTime": 1568839543.557, "Name": "myExampleLedger2" } ] }

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter ListLedgers in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie list-tags-for-resource verwendet wird.

AWS CLI

So listen Sie die einem Ledger zugeordneten Tags auf

Im folgenden Beispiel für list-tags-for-resource werden alle Tags aufgelistet, die dem angegebenen Ledger zugeordnet sind.

aws qldb list-tags-for-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger

Ausgabe:

{ "Tags": { "IsTest": "true", "Domain": "Test" } }

Weitere Informationen finden Sie unter Markieren von Amazon QLDB-Ressourcen im Amazon-ECS-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie stream-journal-to-kinesis verwendet wird.

AWS CLI

Beispiel 1: So streamen Sie Journaldaten mithilfe von Eingabedateien an Kinesis Data Streams

Im folgenden Beispiel für stream-journal-to-kinesis wird ein Journaldatenstrom mit einem angegebenen Datums- und Zeitbereich aus einem Ledger namens myExampleLedger erstellt. Der Stream sendet die Daten an einen angegebenen Amazon Kinesis-Datenstrom.

aws qldb stream-journal-to-kinesis \ --ledger-name myExampleLedger \ --inclusive-start-time 2020-05-29T00:00:00Z \ --exclusive-end-time 2020-05-29T23:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-kinesis-stream-role \ --kinesis-configuration file://my-kinesis-config.json \ --stream-name myExampleLedger-stream

Inhalt von my-kinesis-config.json:

{ "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }

Ausgabe:

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Weitere Informationen finden Sie unter Streamen von Journaldaten aus Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Beispiel 2: So streamen Sie Journaldaten mithilfe einer Kurznotationssyntax an Kinesis Data Streams

Im folgenden Beispiel für stream-journal-to-kinesis wird ein Journaldatenstrom mit einem angegebenen Datums- und Zeitbereich aus einem Ledger namens myExampleLedger erstellt. Der Stream sendet die Daten an einen angegebenen Amazon Kinesis-Datenstrom.

aws qldb stream-journal-to-kinesis \ --ledger-name myExampleLedger \ --inclusive-start-time 2020-05-29T00:00:00Z \ --exclusive-end-time 2020-05-29T23:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-kinesis-stream-role \ --stream-name myExampleLedger-stream \ --kinesis-configuration StreamArn=arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb,AggregationEnabled=true

Ausgabe:

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Weitere Informationen finden Sie unter Streamen von Journaldaten aus Amazon QLDB im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie tag-resource verwendet wird.

AWS CLI

So markieren Sie ein Ledger

Im folgenden Beispiel für tag-resource wird einem angegebenen Ledger eine Reihe von Tags hinzugefügt.

aws qldb tag-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger \ --tags IsTest=true,Domain=Test

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Markieren von Amazon QLDB-Ressourcen im Amazon-ECS-Entwicklerhandbuch.

  • API-Details finden Sie unter TagResource in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie untag-resource verwendet wird.

AWS CLI

So entfernen Sie Tags von einer Ressource

Im folgenden Beispiel für untag-resource werden Tags mit den angegebenen Schlüsselnamen aus dem angegebenen Ledger entfernt.

aws qldb untag-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger \ --tag-keys IsTest Domain

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Markieren von Amazon QLDB-Ressourcen im Amazon-ECS-Entwicklerhandbuch.

  • API-Details finden Sie unter UntagResource in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie update-ledger-permissions-mode verwendet wird.

AWS CLI

Beispiel 1: So aktualisieren Sie den Berechtigungsmodus eines Ledgers auf STANDARD

Im folgenden Beispiel für update-ledger-permissions-mode wird der STANDARD-Berechtigungsmodus dem angegebenen Ledger zugewiesen.

aws qldb update-ledger-permissions-mode \ --name myExampleLedger \ --permissions-mode STANDARD

Ausgabe:

{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "STANDARD" }

Beispiel 1: So aktualisieren Sie den Berechtigungsmodus eines Ledgers auf ALLOW_ALL

Im folgenden Beispiel für update-ledger-permissions-mode wird der ALLOW_ALL-Berechtigungsmodus dem angegebenen Ledger zugewiesen.

aws qldb update-ledger-permissions-mode \ --name myExampleLedger \ --permissions-mode ALLOW_ALL

Ausgabe:

{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "ALLOW_ALL" }

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt, wie update-ledger verwendet wird.

AWS CLI

Beispiel 1: So aktualisieren Sie die Löschschutzeigenschaft eines Ledgers

Im folgenden Beispiel für update-ledger wird das angegebene Ledger so aktualisiert, dass die Löschschutzfunktion deaktiviert wird.

aws qldb update-ledger \ --name myExampleLedger \ --no-deletion-protection

Ausgabe:

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE" }

Beispiel 2: So aktualisieren Sie den AWS-KMS-Schlüssel eines Ledgers auf einen vom Kunden verwalteten Schlüssel

Im folgenden Beispiel für update-ledger wird das angegebene Ledger so aktualisiert, dass ein kundenverwalteter KMS-Schlüssel für die Verschlüsselung im Ruhezustand verwendet wird.

aws qldb update-ledger \ --name myExampleLedger \ --kms-key arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "UPDATING" } }

Beispiel 3: So aktualisieren Sie den AWS-KMS-Schlüssel eines Ledgers auf einen Schlüssel im Besitz von AWS

Im folgenden Beispiel für update-ledger wird das angegebene Ledger so aktualisiert, dass ein KMS-Schlüssel im Besitz von AWS für die Verschlüsselung im Ruhezustand verwendet wird.

aws qldb update-ledger \ --name myExampleLedger \ --kms-key AWS_OWNED_KMS_KEY

Ausgabe:

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "AWS_OWNED_KMS_KEY", "EncryptionStatus": "UPDATING" } }

Weitere Informationen finden Sie unter Grundlegende Operationen für Amazon QLDB-Ledger im Amazon QLDB-Entwicklerhandbuch.

  • API-Details finden Sie unter UpdateLedger in der AWS CLI-Befehlsreferenz.