Bird
Raised Fist0
DynamoDBquery~5 mins

First table creation in DynamoDB - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the primary purpose of creating a table in DynamoDB?
A table in DynamoDB stores data as items, similar to rows in a spreadsheet. It organizes your data so you can add, read, and manage it easily.
Click to reveal answer
beginner
What is a primary key in DynamoDB table creation?
The primary key uniquely identifies each item in the table. It can be a simple key (one attribute) or a composite key (partition key and sort key).
Click to reveal answer
beginner
Which attribute types can be used for the primary key in DynamoDB?
You can use String (S), Number (N), or Binary (B) types for the primary key attributes.
Click to reveal answer
intermediate
What is the difference between a partition key and a sort key in DynamoDB?
The partition key determines the partition where data is stored. The sort key allows sorting and organizing items with the same partition key.
Click to reveal answer
intermediate
Why do you need to specify read and write capacity units when creating a DynamoDB table?
Read and write capacity units control how much data your table can handle per second. They help manage performance and cost.
Click to reveal answer
What is the minimum required attribute when creating a DynamoDB table?
ASecondary index
BSort key
CPrimary key
DProvisioned throughput
Which of the following is NOT a valid data type for a DynamoDB primary key?
ABinary
BNumber
CString
DBoolean
What does the partition key in DynamoDB determine?
AThe physical storage partition
BThe table name
CThe order of items
DThe read capacity
When creating a table, what do read capacity units control?
ANumber of tables
BNumber of strongly consistent reads per second
CNumber of attributes
DData storage size
Which key type allows sorting items with the same partition key?
ASort key
BPrimary key
CPartition key
DSecondary key
Explain the steps and key elements needed to create your first DynamoDB table.
Think about what uniquely identifies data and how much data you expect to handle.
You got /4 concepts.
    Describe the difference between a partition key and a sort key in DynamoDB and why each is important.
    Imagine organizing files in folders and sorting them inside.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the minimum required element when creating a DynamoDB table?
      easy
      A. Table name and global secondary index
      B. Table name and secondary index
      C. Table name and primary key
      D. Provisioned throughput only

      Solution

      1. Step 1: Understand DynamoDB table basics

        Every DynamoDB table must have a unique name and a primary key to identify items.
      2. Step 2: Identify required elements for creation

        Secondary indexes and throughput settings are optional or have defaults, but primary key and table name are mandatory.
      3. Final Answer:

        Table name and primary key -> Option C
      4. Quick Check:

        Minimum required = Table name + primary key [OK]
      Hint: Always specify table name and primary key first [OK]
      Common Mistakes:
      • Forgetting to define the primary key
      • Confusing secondary index as mandatory
      • Omitting the table name
      2. Which AWS CLI command correctly creates a DynamoDB table named Users with a primary key UserId of type string?
      easy
      A. aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=UserId,AttributeType=S --key-schema AttributeName=UserId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
      B. aws dynamodb create-table --name Users --key UserId --type S
      C. aws dynamodb create-table --table Users --primary-key UserId String
      D. aws dynamodb make-table --table-name Users --key UserId --attribute-type S

      Solution

      1. Step 1: Check AWS CLI syntax for create-table

        The correct command uses 'aws dynamodb create-table' with options: --table-name, --attribute-definitions, --key-schema, and --provisioned-throughput.
      2. Step 2: Verify option correctness

        aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=UserId,AttributeType=S --key-schema AttributeName=UserId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 correctly specifies attribute name and type, key schema with HASH key, and provisioned throughput. Others use invalid or incomplete syntax.
      3. Final Answer:

        aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=UserId,AttributeType=S --key-schema AttributeName=UserId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 -> Option A
      4. Quick Check:

        Correct CLI syntax = aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=UserId,AttributeType=S --key-schema AttributeName=UserId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 [OK]
      Hint: Use full AWS CLI syntax with attribute-definitions and key-schema [OK]
      Common Mistakes:
      • Using wrong command name like make-table
      • Missing attribute-definitions or key-schema
      • Incorrect option names like --name instead of --table-name
      3. Given this AWS CLI command, what will be the primary key type of the table?
      aws dynamodb create-table --table-name Products --attribute-definitions AttributeName=ProductId,AttributeType=N --key-schema AttributeName=ProductId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1
      medium
      A. String
      B. Binary
      C. Boolean
      D. Number

      Solution

      1. Step 1: Identify attribute type in attribute-definitions

        The attribute ProductId is defined with AttributeType=N, which means Number.
      2. Step 2: Confirm key schema uses ProductId as HASH key

        The key schema uses ProductId as the partition key, so its type is Number.
      3. Final Answer:

        Number -> Option D
      4. Quick Check:

        AttributeType=N means Number [OK]
      Hint: AttributeType=N means Number, S means String [OK]
      Common Mistakes:
      • Confusing N with String type
      • Ignoring attribute-definitions
      • Assuming default type is String
      4. You run this command but get an error:
      aws dynamodb create-table --table-name Orders --attribute-definitions AttributeName=OrderId --key-schema AttributeName=OrderId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1

      What is the likely cause?
      medium
      A. Missing KeyType in key-schema
      B. Missing AttributeType in attribute-definitions
      C. Provisioned throughput values are too low
      D. Table name is invalid

      Solution

      1. Step 1: Check attribute-definitions syntax

        The attribute-definitions must include AttributeType (S, N, or B). Here, AttributeType is missing.
      2. Step 2: Verify other parts

        KeyType is present, throughput values are valid, and table name is valid. So the error is due to missing AttributeType.
      3. Final Answer:

        Missing AttributeType in attribute-definitions -> Option B
      4. Quick Check:

        AttributeType required in attribute-definitions [OK]
      Hint: Always specify AttributeType with AttributeName [OK]
      Common Mistakes:
      • Omitting AttributeType in attribute-definitions
      • Confusing KeyType with AttributeType
      • Assuming throughput values cause error
      5. You want to create a DynamoDB table named Employees with a composite primary key: EmployeeId (string) as partition key and Department (string) as sort key. Which command correctly creates this table?
      hard
      A. aws dynamodb create-table --table-name Employees --attribute-definitions AttributeName=EmployeeId,AttributeType=S AttributeName=Department,AttributeType=S --key-schema AttributeName=EmployeeId,KeyType=HASH AttributeName=Department,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
      B. aws dynamodb create-table --table-name Employees --attribute-definitions EmployeeId=S Department=S --key-schema EmployeeId=HASH Department=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
      C. aws dynamodb create-table --table Employees --attributes EmployeeId:string Department:string --keys EmployeeId:partition Department:sort --throughput 5 5
      D. aws dynamodb create-table --table-name Employees --attribute-definitions AttributeName=EmployeeId,AttributeType=S --key-schema AttributeName=EmployeeId,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5

      Solution

      1. Step 1: Define attribute-definitions for both keys

        Both EmployeeId and Department must be defined with AttributeType=S.
      2. Step 2: Define key-schema with HASH and RANGE keys

        EmployeeId is partition key (HASH), Department is sort key (RANGE).
      3. Step 3: Check command syntax

        aws dynamodb create-table --table-name Employees --attribute-definitions AttributeName=EmployeeId,AttributeType=S AttributeName=Department,AttributeType=S --key-schema AttributeName=EmployeeId,KeyType=HASH AttributeName=Department,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 correctly uses --attribute-definitions and --key-schema with proper syntax and throughput.
      4. Final Answer:

        aws dynamodb create-table --table-name Employees --attribute-definitions AttributeName=EmployeeId,AttributeType=S AttributeName=Department,AttributeType=S --key-schema AttributeName=EmployeeId,KeyType=HASH AttributeName=Department,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 -> Option A
      5. Quick Check:

        Composite key needs both keys in attribute-definitions and key-schema [OK]
      Hint: List all keys in attribute-definitions and key-schema [OK]
      Common Mistakes:
      • Defining only partition key without sort key
      • Incorrect key-schema syntax
      • Missing attribute definition for sort key