Amazon QLDB glossary - Amazon Quantum Ledger Database (Amazon QLDB)

Amazon QLDB glossary

The following are definitions for key terms that you might encounter as you work with Amazon QLDB.

block | digest | document | document ID | document revision | entry | field | index | indexed storage | journal | journal block | journal storage | journal strand | journal tip | ledger | proof | revision | session | strand | table | table view | view

block

An object that is committed to the journal in a transaction. A single transaction writes one block in the journal, so a block can only be associated with one transaction. A block contains entries that represent the document revisions that were committed in the transaction, along with the PartiQL statements that committed them.

Each block also has a hash value for verification. A block hash is calculated from the entry hashes within that block combined with the hash of the previous chained block.

digest

A 256-bit hash value that uniquely represents your ledger's entire history of document revisions as of a point in time. A digest hash is calculated from your journal's full hash chain as of the latest committed block in the journal at that time.

QLDB lets you generate a digest as a secure output file. Then, you can use that output file to verify the integrity of your document revisions relative to that hash.

document

A set of data in Amazon Ion struct format that can be inserted, updated, and deleted in a table. A QLDB document can have structured, semistructured, nested, and schema-less data.

document ID

The universally unique identifier (UUID) that QLDB assigns to each document that you insert into a table. This ID is a 128-bit number that is represented in a Base62-encoded alphanumeric string with a fixed length of 22 characters.

document revision

An Ion structure that represents a single version of a sequence of documents that are identified by a unique document ID. A revision includes both your user data (that is, the data that you wrote in the table) and QLDB-generated metadata. Each revision is associated with a table, and is uniquely identified by a combination of the document ID and a zero-based version number.

entry

An object that is contained in a block. Entries represent document revisions that are inserted, updated, and deleted in a transaction, along with the PartiQL statements that committed them.

Each entry also has a hash value for verification. An entry hash is calculated from the revision hashes or the statement hashes within that entry.

field

A name-value pair that makes up each attribute of a QLDB document. The name is a symbol token, and the value is unrestricted.

index

A data structure that you can create on a table to optimize the performance of data retrieval operations. For information about indexes in QLDB, see CREATE INDEX in the Amazon QLDB PartiQL reference.

indexed storage

The disk space that is used by a ledger's tables, indexes, and indexed history. Indexed storage consists of ledger data that is optimized for high-performance queries.

journal

The hash-chained set of all blocks that are committed in your ledger. The journal is append-only and represents a complete and immutable history of all the changes to your ledger data.

journal block

See block.

journal storage

The disk space that is used by a ledger's journal.

journal strand

See strand.

journal tip

The latest committed block in a journal at a point in time.

ledger

An instance of an Amazon QLDB ledger database resource. This is the primary AWS resource type in QLDB. A ledger consists of both journal storage and indexed storage. After ledger data is committed to the journal, it's available to query in tables of Amazon Ion document revisions.

proof

The ordered list of 256-bit hash values that QLDB returns for a given digest and document revision. It consists of the hashes that are required by a Merkle tree model to chain the given revision hash to the digest hash. A proof enables you to verify the integrity of your revisions relative to the digest. For more information, see Data verification in Amazon QLDB.

revision

See document revision.

session

An object that manages information about your data transaction requests and responses to and from a ledger. An active session (one that is actively running a transaction) represents a single connection to a ledger. QLDB supports one actively running transaction per session.

strand

A partition of a journal. QLDB currently supports journals with a single strand only.

table

A materialized view of an unordered collection of document revisions that are committed in the ledger's journal.

table view

A queryable subset of the data in a table, based on transactions committed to the journal. In a PartiQL statement, a view is denoted by a prefix qualifier (starting with _ql_) for a table name.

You can query the following system-defined views using SELECT statements:

  • User – The latest active revision of only the data that you wrote in the table (that is, the current state of your user data). This is the default view in QLDB.

  • Committed – The latest active revision of both your user data and the system-generated metadata. This is the full system-defined table that corresponds directly to your user table. For example: _ql_committed_TableName.

view

See table view.