DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Amazon Quantum Ledger Database (QLDB) is a managed ledger database management system. Its core storage architecture is an immutable and cryptographically verifiable transaction log. Unlike a blockchain DBMS where trust is distributed among participants, QLDB uses a centralized trusted authority (i.e., Amazon).

Country of Origin
US
Start Year
2018 [12]
End Year
2025 [13]
Project Type
Commercial
Operating System
Hosted
License
Proprietary

Amazon Quantum Ledger Database (QLDB) is a managed ledger database management system. Its core storage architecture is an immutable and cryptographically verifiable transaction log. Unlike a blockchain DBMS where trust is distributed among participants, QLDB uses a centralized trusted authority (i.e., Amazon).

Concurrency Control[03]


QLDB supports ACID transactions with serializability and it implements optimistic concurrency control (OCC). Similar to other OCC protocols, QLDB allows users to read/update an entry, and then it validates if the current transaction has conflicts with other transactions. But before committing, QLDB needs to verify that the transaction is successfully written into the journal. If yes, then it notifies the clients that the transaction is committed

In both cases of validation failure or journal verification failure, QLDB returns a conflict exception. It’s up to applications to decide whether it needs to rerun the transaction or abort it.

Data Model[04]


Amazon QLDB uses a document-oriented data model Ion, which is originally developed by Amazon for internal use (now open source). It is a superset of JSON in terms of types and validation, as it provides richer data types including int, float, decimal, and timestamp. It can also perform built-in validation by predefined Ion Struct, which not only validates data type and range but also regex expressions if specified.

Ion is a strictly value-based model and supports embedded (hierarchical) documents, but not references.

Indexes[05][06]


QLDB limits users to create 5 indexes per table. Composite and range indexes are not supported, and created indexes are only used in queries with equality predicates.

Joins[07]


QLDB only supports inner join.

Logging[08]


QLDB uses journal as the immutable transaction log for the ledger. The journal keeps track of the updates and provide a verifiable history over time. The content of journal can be used analytics, auditing and verification purpose.

Query Interface[09]


QLDB supports Amazon’s SQL dialect PartiQL. As its name implies, PartiQL is a small subset of SQL and it supports basic INSERT, SELECT, DELETE, UPDATE, and INNER JOIN.

Here’s a list of clauses that PartiQL does not support yet [DISTINCT, EXISTS, HAVING, LIMIT, UNION, INTERSECT, EXCEPT, PIVOT, UNPIVOT, GROUP BY, ORDER BY, LEFT, RIGHT, OUTER JOIN].

Storage Architecture[10]


QLDB supports monitoring on the disk storage used by journals and indexes.

Storage Model[11]


QLDB stores records as documents, which internally are serialized Ion objects in binary-encoded form.

System Architecture


Citations

13 sources
  1. Relational Database – Amazon Aurora MySQL PostgreSQL – AWS amazon.com
  2. Relational Database – Amazon Aurora MySQL PostgreSQL Features – AWS amazon.com
  3. https://docs.aws.amazon.com/qldb/latest/developerguide/concurrency.html amazon.com Dead — Check Archive
  4. Specification github.io
  5. https://docs.aws.amazon.com/qldb/latest/developerguide/limits.html amazon.com Dead — Check Archive
  6. Intro to QLDB | Teach Myself Cloud teachmyselfcloud.com
  7. https://docs.aws.amazon.com/qldb/latest/developerguide/ql-reference.select.html amazon.com Dead — Check Archive
  8. https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.html amazon.com Dead — Check Archive
  9. https://aws.amazon.com/blogs/opensource/announcing-partiql-one-query-language-for-all-your-data amazon.com
  10. https://docs.aws.amazon.com/qldb/latest/developerguide/monitoring-cloudwatch.html amazon.com Dead — Check Archive
  11. https://docs.aws.amazon.com/qldb/latest/developerguide/ion.html amazon.com Dead — Check Archive
  12. Introducing Amazon Quantum Ledger Database (QLDB) - AWS amazon.com
  13. AWS Discontinues Amazon Quantum Ledger Database (QLDB) - InfoQ infoq.com
Revision #12 Last Updated: