Copyright (c) 2026 MindMesh Academy. All rights reserved. This content is proprietary and may not be reproduced or distributed without permission.

2.1.4.1. DynamoDB Core Concepts: Tables, Items, Attributes

2.1.4.1. DynamoDB Core Concepts: Tables, Items, Attributes

First Principle: DynamoDB's fundamental data model (Tables, Items, Attributes) provides a flexible, schema-less structure enabling developers to manage application state with high scalability and performance.

Understanding the core components of Amazon DynamoDB's data model is essential for designing efficient and scalable applications.

  • Tables: (Collections of data.) Similar to tables in relational databases, but without a fixed schema (except for the primary key). You define a table, and then add items to it.
  • Items: (A group of attributes that is uniquely identifiable among all of the other items in a table.) Similar to a row in a relational database. Each item in a table must have a unique primary key.
  • Attributes: (Fundamental data elements.) Similar to a column in a relational database. DynamoDB is schema-less, meaning items in the same table can have different attributes (except for the primary key attributes, which must be present in every item).
  • Primary Key: (Uniquely identifies each item in a table.) Can be a single attribute (Partition Key) or a composite of two attributes (Partition Key + Sort Key).
    • Partition Key (Hash Attribute): Determines the logical and physical partitions where data is stored.
    • Sort Key (Range Attribute): Defines the order of items within a partition and allows for composite primary keys.

Scenario: You're developing a new application that stores user profiles. Each user profile has a unique ID, but you want the flexibility to add different attributes (e.g., email, phone, address) for different users without predefined columns.

āš ļø Exam Trap: Every DynamoDB item can have different attributes (except the primary key) — it's schema-less. But you MUST define the partition key (and optional sort key) at table creation time. You cannot change the primary key after creation.

Alvin Varughese
Written byAlvin Varughese•Founder•15 professional certifications