Bird
Raised Fist0
DynamoDBquery~5 mins

AWS CLI for 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 AWS CLI in the context of DynamoDB?
AWS CLI is a tool that lets you control DynamoDB using simple commands typed in a terminal or command prompt, without needing to use the AWS web console.
Click to reveal answer
beginner
How do you create a new DynamoDB table using AWS CLI?
You use the command aws dynamodb create-table with parameters like table name, key schema, attribute definitions, and provisioned throughput.
Click to reveal answer
beginner
What does the put-item command do in AWS CLI for DynamoDB?
It adds a new item or replaces an existing item in a DynamoDB table. You specify the table name and the item data in JSON format.
Click to reveal answer
beginner
How can you retrieve an item from a DynamoDB table using AWS CLI?
Use the get-item command with the table name and the key of the item you want to get.
Click to reveal answer
intermediate
What is the purpose of the scan command in AWS CLI for DynamoDB?
The scan command reads every item in a table and returns all data, which is useful for small tables or when you need all items.
Click to reveal answer
Which AWS CLI command creates a new DynamoDB table?
Aaws dynamodb put-item
Baws dynamodb create-table
Caws dynamodb get-item
Daws dynamodb scan
What parameter is required to specify the primary key when creating a DynamoDB table with AWS CLI?
AProvisionedThroughput
BItem
CTableName
DKeySchema
Which command would you use to add or replace an item in a DynamoDB table?
Aaws dynamodb put-item
Baws dynamodb scan
Caws dynamodb delete-item
Daws dynamodb get-item
If you want to read all items from a DynamoDB table, which AWS CLI command should you use?
Aaws dynamodb get-item
Baws dynamodb query
Caws dynamodb scan
Daws dynamodb put-item
What format is used to specify item data in AWS CLI commands for DynamoDB?
AJSON
BYAML
CXML
DCSV
Explain how to create a DynamoDB table using AWS CLI, including key parameters you must provide.
Think about the table name, primary key, and capacity settings.
You got /5 concepts.
    Describe the difference between the AWS CLI commands get-item and scan when working with DynamoDB.
    Consider how many items each command returns and when to use each.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the AWS CLI command aws dynamodb list-tables do?
      easy
      A. It shows all DynamoDB tables in your AWS account and region.
      B. It deletes all DynamoDB tables in your AWS account.
      C. It creates a new DynamoDB table.
      D. It updates the items in a DynamoDB table.

      Solution

      1. Step 1: Understand the command purpose

        The command aws dynamodb list-tables is designed to list existing tables, not modify or delete them.
      2. Step 2: Match command to action

        Listing tables means showing all table names in your current AWS region and account.
      3. Final Answer:

        It shows all DynamoDB tables in your AWS account and region. -> Option A
      4. Quick Check:

        List tables = Show tables [OK]
      Hint: List tables command always shows existing tables [OK]
      Common Mistakes:
      • Confusing list-tables with delete-table
      • Thinking it creates or updates tables
      • Assuming it shows table data instead of names
      2. Which AWS CLI command syntax correctly adds an item to a DynamoDB table named Books with a primary key ISBN and a title attribute?
      easy
      A. aws dynamodb add-item --table Books --item '{ISBN: 12345, Title: Cloud Basics}'
      B. aws dynamodb put-item --table-name Books --item '{"ISBN": {"S": "12345"}, "Title": {"S": "Cloud Basics"}}'
      C. aws dynamodb insert-item --table-name Books --item '{"ISBN": "12345", "Title": "Cloud Basics"}'
      D. aws dynamodb put-item --table Books --data '{"ISBN": "12345", "Title": "Cloud Basics"}'

      Solution

      1. Step 1: Identify correct command and parameters

        The correct command to add an item is put-item with --table-name and --item parameters.
      2. Step 2: Check JSON format for item

        The item must be a JSON string with attribute names and types, e.g., {"ISBN": {"S": "12345"}} where "S" means string type.
      3. Final Answer:

        aws dynamodb put-item --table-name Books --item '{"ISBN": {"S": "12345"}, "Title": {"S": "Cloud Basics"}}' -> Option B
      4. Quick Check:

        Put-item + correct JSON format = aws dynamodb put-item --table-name Books --item '{"ISBN": {"S": "12345"}, "Title": {"S": "Cloud Basics"}}' [OK]
      Hint: Use put-item with --item JSON including data types [OK]
      Common Mistakes:
      • Using wrong command like add-item or insert-item
      • Missing data types in JSON attributes
      • Using --table instead of --table-name
      3. What will be the output of this AWS CLI command?
      aws dynamodb get-item --table-name Users --key '{"UserId": {"S": "user123"}}' --projection-expression "Name, Age"

      Assuming the table has an item with UserId 'user123', Name 'Alice', Age 30, and Email 'alice@example.com'.
      medium
      A. Returns only the Email attribute.
      B. Returns all attributes including Email.
      C. Returns an error because projection-expression is invalid.
      D. Returns only the Name and Age attributes of the item.

      Solution

      1. Step 1: Understand get-item with projection-expression

        The --projection-expression limits returned attributes to those listed, here "Name, Age".
      2. Step 2: Check expected output

        Since Email is not in projection-expression, it will not be returned. Only Name and Age appear.
      3. Final Answer:

        Returns only the Name and Age attributes of the item. -> Option D
      4. Quick Check:

        Projection-expression filters attributes = Returns only the Name and Age attributes of the item. [OK]
      Hint: Projection-expression returns only listed attributes [OK]
      Common Mistakes:
      • Assuming all attributes return by default
      • Thinking projection-expression causes error
      • Confusing projection-expression with filter-expression
      4. You run this command but get an error:
      aws dynamodb put-item --table-name Products --item '{"ProductId": "123", "Name": "Pen"}'

      What is the likely cause of the error?
      medium
      A. The item JSON is missing data types for attributes.
      B. The table name is incorrect.
      C. The AWS CLI is not installed.
      D. The command should use --update-item instead of --put-item.

      Solution

      1. Step 1: Check item JSON format requirements

        DynamoDB requires attribute values to specify data types, e.g., {"S": "123"} for string.
      2. Step 2: Identify missing data types in JSON

        The command uses plain strings without data types, causing a syntax error.
      3. Final Answer:

        The item JSON is missing data types for attributes. -> Option A
      4. Quick Check:

        Missing data types in item JSON causes error [OK]
      Hint: Always include data types like {"S": "value"} in item JSON [OK]
      Common Mistakes:
      • Ignoring data type syntax in item JSON
      • Assuming --put-item is invalid command
      • Not verifying table name correctness
      5. You want to create a DynamoDB table named Orders with a primary key OrderId (string) and a sort key OrderDate (string). Which AWS CLI command is correct?
      hard
      A. aws dynamodb create-table --table-name Orders --attribute-definitions OrderId=S OrderDate=S --key-schema OrderId=HASH OrderDate=RANGE --provisioned-throughput Read=5,Write=5
      B. aws dynamodb create-table --table Orders --attributes OrderId=S,OrderDate=S --keys OrderId=HASH,OrderDate=RANGE --throughput 5 5
      C. aws dynamodb create-table --table-name Orders --attribute-definitions AttributeName=OrderId,AttributeType=S AttributeName=OrderDate,AttributeType=S --key-schema AttributeName=OrderId,KeyType=HASH AttributeName=OrderDate,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
      D. aws dynamodb create-table --table-name Orders --attributes OrderId S OrderDate S --key-schema OrderId HASH OrderDate RANGE --capacity 5 5

      Solution

      1. Step 1: Identify correct command syntax for create-table

        The correct syntax uses --attribute-definitions with AttributeName and AttributeType, and --key-schema with AttributeName and KeyType (HASH for partition key, RANGE for sort key).
      2. Step 2: Check provisioned throughput format

        Provisioned throughput requires ReadCapacityUnits and WriteCapacityUnits with numeric values.
      3. Final Answer:

        aws dynamodb create-table --table-name Orders --attribute-definitions AttributeName=OrderId,AttributeType=S AttributeName=OrderDate,AttributeType=S --key-schema AttributeName=OrderId,KeyType=HASH AttributeName=OrderDate,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 -> Option C
      4. Quick Check:

        Create-table syntax with attribute-definitions and key-schema = aws dynamodb create-table --table-name Orders --attribute-definitions AttributeName=OrderId,AttributeType=S AttributeName=OrderDate,AttributeType=S --key-schema AttributeName=OrderId,KeyType=HASH AttributeName=OrderDate,KeyType=RANGE --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 [OK]
      Hint: Use --attribute-definitions and --key-schema with correct keys [OK]
      Common Mistakes:
      • Using wrong flags like --table or --attributes
      • Incorrect key schema format
      • Wrong provisioned throughput parameter names