DynamoDB Glossary
Definitions for DynamoDB and single-table design terms. Each entry links to the patterns and posts where the concept appears in practice.
A
- Adjacency List
A DynamoDB design pattern where each node in a graph stores a reference to its adjacent nodes (parent, children, or related entities) using partition key and sort key combinations.
C
- Composite Key
A composite key combines a partition key and a sort key into one primary key. The term also covers composite attributes, where several values are concatenated into a single key.
G
- GSI Overloading
Using one Global Secondary Index to serve multiple entity types by writing different values to the same GSI key attributes depending on the entity type.
H
- Hot Partition
A hot partition is a single DynamoDB partition receiving disproportionate traffic, causing throttling even when the table has capacity to spare.
I
- Item Collection
All items in a DynamoDB table (or local secondary index) that share the same partition key value. Item collections are bounded by a 10 GB per-partition limit.
O
- Overloaded Keys
Using generic DynamoDB attribute names (pk, sk, gsi1pk) to store different logical values for different entity types in a single-table design.
P
- Partition Key
The partition key is the attribute DynamoDB hashes to decide where an item is stored. It determines data distribution and constrains every query you can run.
S
- Single-Table Design
Single-table design stores multiple entity types in one DynamoDB table so related data can be fetched in a single query. Here's how it works and when it's worth it.
- Sort Key
The sort key orders items within a partition and enables range queries. Its design determines which access patterns your schema can serve without a GSI.
- Sparse Index
A sparse index is a GSI that only contains items which have the index key attribute set. Use it to query a small subset of a large table cheaply.
W
- Write Sharding
Write sharding spreads traffic for one logical partition key across several physical partitions by appending a shard suffix, avoiding hot partition throttling.