Amazon-Quantum-Ledger-Datenbank (QLDB) – Häufig gestellte Fragen

Allgemeines

Amazon Quantum Ledger Database (QLDB) ist eine spezialisierte Ledger-Datenbank, die einen vollständigen und kryptografisch verifizierbaren Verlauf aller Änderungen an Ihren Anwendungsdaten bereitstellt.

Herkömmliche Datenbanken ermöglichen es Ihnen, Daten zu überschreiben oder zu löschen, weshalb Entwickler Techniken wie Prüftabellen und Prüfprotokolle verwenden, um die Datenabfolge zu verfolgen. Auch wenn diese Ansätze funktionieren können, erfordern sie eine kundenspezifische Entwicklung, können schwer skalierbar sein und erfordern vom Anwendungsentwickler die Verantwortung, sicherzustellen, dass alle relevanten Daten erfasst werden. In Amazon QLDB werden Daten in ein nur als Anhang verfügbares Journal geschrieben, so dass der Entwickler über eine vollständige Datenabfolge verfügt. Darüber hinaus sind die Daten im Journal von Amazon QLDB unveränderlich und verifizierbar, so dass Sie den Daten in Ihrem Ledger vertrauen können.

Die Funktionen von Amazon QLDB machen es zu einer idealen Lösung für System-of-Record-Anwendungen, bei denen Datenintegrität, Vollständigkeit und Verifizierbarkeit entscheidend sind. So würde beispielsweise in der Lieferkette und im Logistikbereich eine auf Amazon QLDB basierende Anwendung den gesamten Verlauf von Änderungen, wie z. B. die Bewegung zwischen Spediteuren und über Grenzen hinweg, für Abfragen und Analysen zur Verfügung haben. Im Finanzwesen werden kritische Daten, wie z. B. Kredit- und Debittransaktionen, über System-of-Record-Anwendungen erfasst. Anstatt komplexe Aufzeichnungsfunktionen innerhalb ihrer Anwendung zu entwickeln, können Banken mit QLDB eine permanente und vollständige Aufzeichnung aller Finanztransaktionen problemlos speichern.

Bei Amazon QLDB handelt es sich weder um eine Blockchain- noch um eine Distributed-Ledger-Technologie. Blockchain- und Distributed-Ledger-Technologien konzentrieren sich auf die Lösung von Problemen dezentraler Anwendungen mit mehreren Parteien, bei denen es keine einzige Einheit geben darf, der die Anwendung gehört, und die Parteien einander nicht unbedingt voll vertrauen. Andererseits ist QLDB eine Ledger-Datenbank, die speziell für Kunden entwickelt wurde, die einen vollständigen und überprüfbaren Verlauf von Datenänderungen in einer von ihnen verwendeten Anwendung pflegen müssen. Amazon QLDB bietet Verlauf, Unveränderlichkeit und Verifizierbarkeit in Kombination mit der Vertrautheit, Skalierbarkeit und Benutzerfreundlichkeit einer vollständig verwalteten AWS-Datenbank. Wenn Ihre Anwendung eine Dezentralisierung erfordert und mehrere, nicht vertrauenswürdige Parteien umfasst, kann eine Blockchain-Lösung sinnvoll sein. Wenn Ihre Anwendung einen vollständigen und verifizierbaren Verlauf aller Änderungen an den Anwendungsdaten erfordert, aber nicht mehrere, nicht vertrauenswürdige Parteien einbezieht, ist Amazon QLDB genau das Richtige. Wenn Sie einen Anwendungsfall für Distributed Ledger oder Blockchain haben, lesen Sie bitte Amazon Managed Blockchain.

Amazon QLDB bietet nicht nur einen vollständigen und verifizierbaren Verlauf der Anwendungsdatenänderungen, sondern unterstützt auch Transaktionen mit ACID-Semantik, einem flexiblen Dokumentdatenmodell und einer bekannten SQL-ähnlichen API. QLDB wird zudem vollständig verwaltet und skaliert automatisch, um die Anforderungen Ihrer Anwendung zu erfüllen, ohne dass eine Bereitstellung erforderlich ist.

Um eine Verbindung mit Amazon QLDB herstellen und mit den Daten im Ledger interagieren zu können, müssen Sie den von AWS bereitgestellten QLDB-Treiber verwenden. Folgen Sie den Schritten unter diesem Link, um den Treiber herunterzuladen und eine Verbindung zu konfigurieren.

Die ersten Schritt mit Amazon QLDB sind sehr einfach, denn es müssen keine Server verwaltet oder Kapazitäten bereitgestellt werden. Über die AWS-Managementkonsole, die AWS-Befehlszeilenschnittstelle (CLI) und eine AWS CloudFormation-Vorlage oder über Abrufe der QLDB-API können Sie innerhalb weniger Minuten einen neuen Ledger erstellen.

Performance

Amazon QLDB kann zwei- bis dreimal so viele Transaktionen ausführen als Ledgers in gewöhnlichen Blockchain-Frameworks. Blockchain-Frameworks sind dezentralisiert. Damit also eine Transaktion durchgeführt werden kann, ist es erforderlich, dass die Mehrheit der Mitglieder eines Netzwerks einen Konsens zur Validität der Transaktion erreicht. QLDB auf der anderen Seite hat ein zentralisiertes Design. So können Transaktionen ohne einen Mehr-Parteien-Konsens ausgeführt werden.

Abfrage

In Amazon QLDB können Sie mit PartiQL auf Ihre Daten zugreifen und Ihre Daten ändern. Bei PartiQL handelt es sich um eine neue Open-Standard-Abfragesprache, die den mit SQL kompatiblen Zugriff auf das dokumentenorientierte Datenmodell in QLDB unterstützt, das semi-strukturierte und eingenistete Daten umfasst und dabei seine Unabhängigkeit von speziellen Datenquellen erhält. Weitere Informationen zu PartiQL finden Sie hier.

Preise

Die Preise für Amazon QLDB entnehmen Sie bitte unserer Seite mit den Preisen.

Amazon QLDB ist in den folgenden AWS-Regionen verfügbar USA Ost (Nord-Virginia, Ohio), USA West (Oregon), Europa (Irland, Frankfurt) und Asien-Pazifik (Singapur, Sydney, Seoul, Tokio), wobei weitere Regionen demnächst hinzukommen.

Skalierbarkeit

Mit Amazon QLDB müssen Sie sich keine Sorgen in Bezug auf die Bereitstellungskapazität oder die Konfiguration von Lese- und Schreiblimits machen. Sie erstellen ein Ledger und definieren die Tabellen, und QLDB skaliert automatisch auf den Bedarf Ihrer Anwendung.

Auf der Seite mit den AWS-Service-Limits sind die mit Amazon QLDB verbundenen Einschränkungen aufgeführt.

Sicherung und Wiederherstellung

In Amazon QLDB werden Backup- und Wiederherstellungsfunktionen gegenwärtig nicht unterstützt. Derzeit können Sie einen Export durchführen, der mit der S3-Funktionalität kompatibel ist. Mit dieser Funktionalität können Sie die Inhalte Ihres QLDB-Journals nach S3 exportieren.

In Amazon QLDB wird eine zeitpunktgenaue Wiederherstellung gegenwärtig nicht unterstützt.

Verfügbarkeit, Beständigkeit und Replikation

Das Ledger von Amazon QLDB wird in mehreren AZs mit mehreren Kopien pro AZ bereitgestellt. Wir sorgen für Redundanz innerhalb der einzelnen Regionen und gewährleisten eine umfassende Wiederherstellung im Falle von Ausfällen in einzelnen Availability Zones. Ein Schreibvorgang wird erst als solcher bestätigt, nachdem der Schreibvorgang auf einen hoch belastbaren Speicher in mehreren AZs abgeschlossen ist. Somit kann man QLDB als hochgradig robust und langlebig bezeichnen.

Amazon QLDB ist ein hochgradig verfügbarer Service. Standardmäßig werden mehrere Kopien Ihres QLDB-Ledgers in verschiedenen Availability Zones einer Region repliziert. Bei einem Ausfall können Sie QLDB also weiter ausführen.

Die regionsübergreifende Replikation wird in Amazon QLDB gegenwärtig nicht unterstützt. Mit der Exportfunktion nach S3 in QLDB können Kunden die Inhalte des QLDB-Journals in ein S3-Bucket exportieren. Die S3-Buckets können für die regionsübergreifende Replikation konfiguriert werden.

Sicherheit

Amazon QLDB bietet eine Integration mit AWS Private Link. Kunden können einen VPC-Endpunkt erstellen, mit dem Sie eine private Verbindung eines VPC zu unterstützten AWS-Services herstellen können, die von PrivateLink betrieben werden, ohne dass ein Internet-Gateway, ein NAT-Gerät, eine VPN-Verbindung oder eine AWS Direct Connect-Verbindung erforderlich ist.

Amazon QLDB nutzt dasselbe Authentifizierungsverfahren wie andere AWS-Services. Für das Verfahren muss eine Anforderungssignatur mit den HTTP-Anforderungen verknüpft werden (Header- oder Abfragezeichenfolge). Die Signatur wird unter Verwendung anderer Anforderungsfelder und der AWS-Anmeldeinformationen (Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel) generiert.

Standardmäßig werden alle Daten bei Übertragung und Speicherung verschlüsselt. Amazon QLDB hat am 22. Juli 2021 die Unterstützung für kundenverwaltete AWS-KMS-Schlüssel eingeführt. Alle Ledger, die vor der Einführung erstellt wurden, sind standardmäßig durch AWS-eigene Schlüssel geschützt, sind jedoch derzeit nicht für die Verschlüsselung im Ruhezustand mit kundenverwalteten Schlüsseln berechtigt. Sie können den Erstellungszeitpunkt Ihres Ledgers in der QLDB-Konsole anzeigen.

Streaming-Fähigkeit

1/ Erstellen Sie einen Amazon Kinesis Data Stream (KDS): Kunden erstellen einen KDS-Datenstream entweder über die Amazon Kinesis-Konsole oder AWS SDK. Sie können auch einen vorhandenen Stream verwenden.

2/ Erstellen Sie einen Amazon QLDB-Stream: Kunden erstellen einen Amazon-QLDB-Stream mit der Amazon QLDB-Konsole oder AWS SDK. Die folgenden Schlüsselaspekte müssen für die Erstellung des Streams konfiguriert werden:

  • Name des Amazon-QLDB-Ledgers
  • Ziel-KDS-Stream
  • IAM-Rolle, die Amazon QLDB übernehmen wird und die die Berechtigungen hat, den KDS-Stream zu schreiben
  • Startzeit, die die Uhrzeit angibt, ab der das Streaming gestartet werden soll
  • Endzeit, die die Uhrzeit angibt, zu der das Streaming beendet werden soll. Das Weglassen dieses optionalen Parameters impliziert einen kontinuierlichen Stream.

3/ Den KDS-Stream verbrauchen: Kunden können Kinesis-Anwendungen schreiben, die Kinesis-Dienste wie Kinesis Data Firehose und Kinesis Data Analytics verwenden, um den Stream zu konsumieren und zu verarbeiten. Kunden können AWS Lambda auch zur Nutzung der Kinesis Data Stream-Datensätze verwenden.

Die QLDB-Streaming-Fähigkeit von Amazon bietet eine mindestens einmalige Liefergarantie. Jeder Kontroll-, Blockzusammenfassungs- und Revisionsdetail-Datensatz, der aus dem Journal durch einen QLDB-Stream generiert wird, wird mindestens einmal an Amazon Kinesis gestreamt. Da doppelte Datensätze unter Umständen im Kinesis-Datenstream erscheinen können, müssen Kunden über eine Deduplizierungslogik in der Anwendungsschicht verfügen, falls diese von der Anwendung benötigt wird. Es gibt keine Bestellgarantien, da frühere Blöcke und Revisionen im Kinesis-Stream nicht in der richtigen Reihenfolge veröffentlicht werden können.