Back to Lessons

DynamoDB Developer Patterns

April 5, 2026

NoSQL Data Modeling for Developers

Single-table design patterns for Lambda applications.

Single Table Design

PK = USER#123 | ORDER#456
SK = PROFILE  | DETAIL

GSI1 (Order Index):
PK = USER#123
SK = ORDER#456

Access Patterns:
1. Get user profile: PK=USER#123, SK=PROFILE
2. Get user orders: PK=USER#123, begins_with(SK, ORDER#)
3. Get order: PK=ORDER#456, SK=DETAIL

LSI/GSI Count Limits:
5 LSI, 20 GSI per table

Developer Tools

  • PartiQL (SQL-like)
  • DynamoDB Local
  • DAX (in-memory cache)
  • Streams + Lambda triggers