Bird
Raised Fist0
AWScloud~10 mins

Why DynamoDB for NoSQL in AWS - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create a DynamoDB table with a primary key.

AWS
aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=UserId,AttributeType=S --key-schema AttributeName=UserId,KeyType=[1] --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
Drag options to blanks, or click blank then click option'
AINDEX
BHASH
CPRIMARY
DRANGE
Attempts:
3 left
💡 Hint
Common Mistakes
Using RANGE instead of HASH for the primary key.
Confusing key types with index types.
2fill in blank
medium

Complete the code to add a Global Secondary Index (GSI) to the DynamoDB table.

AWS
aws dynamodb update-table --table-name Users --attribute-definitions AttributeName=Email,AttributeType=S --global-secondary-index-updates '[{"Create":{"IndexName":"EmailIndex","KeySchema":[{"AttributeName":"Email","KeyType":"[1]"}],"Projection":{"ProjectionType":"ALL"},"ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":5}}}]'
Drag options to blanks, or click blank then click option'
AHASH
BRANGE
CPRIMARY
DSORT
Attempts:
3 left
💡 Hint
Common Mistakes
Using RANGE instead of HASH for the GSI partition key.
Confusing primary key with index key.
3fill in blank
hard

Fix the error in the DynamoDB query to get an item by its primary key.

AWS
aws dynamodb get-item --table-name Users --key '{"UserId": {"[1]": "12345"}}'
Drag options to blanks, or click blank then click option'
ASS
BN
CBOOL
DS
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'N' which is for numbers.
Using 'BOOL' which is for boolean values.
4fill in blank
hard

Fill both blanks to write a DynamoDB update expression that sets a new attribute and increments a counter.

AWS
aws dynamodb update-item --table-name Users --key '{"UserId": {"S": "12345"}}' --update-expression "SET [1] = :val, [2] = [2] + :inc" --expression-attribute-values '{":val": {"S": "active"}, ":inc": {"N": "1"}}'
Drag options to blanks, or click blank then click option'
AStatus
BCounter
CAge
DScore
Attempts:
3 left
💡 Hint
Common Mistakes
Using the same attribute for both set and increment.
Using attributes that do not exist in the table.
5fill in blank
hard

Fill all three blanks to write a DynamoDB query that filters items with Age greater than 25 and projects only Name and Age.

AWS
aws dynamodb scan --table-name Users --filter-expression "[1] > :age" --expression-attribute-names '{"#N": "[2]", "#A": "[3]"}' --expression-attribute-values '{":age": {"N": "25"}}' --projection-expression "#N, #A"
Drag options to blanks, or click blank then click option'
AAge
BName
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing attribute names in filter and projection expressions.
Not using expression attribute names for reserved words.

Practice

(1/5)
1. Why is DynamoDB a good choice for modern applications needing NoSQL databases?
easy
A. It provides fast, scalable, and flexible data storage without server management.
B. It requires manual server setup and complex database tuning.
C. It only supports relational data models with fixed schemas.
D. It is designed only for small, single-user applications.

Solution

  1. Step 1: Understand DynamoDB's core features

    DynamoDB offers fast and scalable NoSQL storage that adapts to app needs without manual server management.
  2. Step 2: Compare with other options

    Unlike traditional databases, it does not require manual tuning or fixed schemas, making it flexible for modern apps.
  3. Final Answer:

    It provides fast, scalable, and flexible data storage without server management. -> Option A
  4. Quick Check:

    DynamoDB = fast, scalable, no server management [OK]
Hint: Remember: DynamoDB is serverless and scales automatically [OK]
Common Mistakes:
  • Thinking DynamoDB needs manual server setup
  • Assuming DynamoDB only supports fixed schemas
  • Confusing DynamoDB with relational databases
2. Which of the following is the correct way to describe DynamoDB's server management?
easy
A. You must manually install and maintain database software.
B. Servers must be restarted daily to keep DynamoDB running.
C. DynamoDB automatically handles server provisioning and maintenance.
D. DynamoDB requires manual scaling of servers during traffic spikes.

Solution

  1. Step 1: Recall DynamoDB's serverless nature

    DynamoDB is a fully managed service that automatically provisions and maintains servers.
  2. Step 2: Eliminate incorrect options

    Manual installation, daily restarts, and manual scaling are not needed with DynamoDB.
  3. Final Answer:

    DynamoDB automatically handles server provisioning and maintenance. -> Option C
  4. Quick Check:

    Serverless = automatic management [OK]
Hint: DynamoDB is serverless, no manual server tasks needed [OK]
Common Mistakes:
  • Assuming manual server setup is required
  • Believing servers need daily restarts
  • Thinking scaling is manual
3. Given a mobile app using DynamoDB, what is the expected behavior when traffic suddenly increases?
medium
A. DynamoDB automatically scales to handle the increased traffic without downtime.
B. The app will crash because DynamoDB cannot handle traffic spikes.
C. You must manually add more servers to support the traffic.
D. DynamoDB will slow down and reject requests until traffic decreases.

Solution

  1. Step 1: Understand DynamoDB's scaling feature

    DynamoDB automatically scales throughput capacity to meet traffic demands.
  2. Step 2: Analyze the impact on app availability

    This automatic scaling prevents crashes and downtime during traffic spikes.
  3. Final Answer:

    DynamoDB automatically scales to handle the increased traffic without downtime. -> Option A
  4. Quick Check:

    Auto scaling = no downtime during spikes [OK]
Hint: DynamoDB auto-scales for traffic spikes [OK]
Common Mistakes:
  • Thinking manual scaling is needed
  • Assuming app crashes on traffic increase
  • Believing DynamoDB rejects requests under load
4. A developer wrote: "DynamoDB requires manual server setup before use." What is wrong with this statement?
medium
A. DynamoDB requires manual setup only when using on-premises servers.
B. DynamoDB requires manual server setup only for large databases.
C. DynamoDB requires manual setup only for relational tables.
D. DynamoDB is serverless and does not require manual server setup.

Solution

  1. Step 1: Review DynamoDB's management model

    DynamoDB is a fully managed, serverless database service with no manual server setup.
  2. Step 2: Identify the incorrect assumption

    The statement incorrectly assumes manual setup is needed, which is false for DynamoDB.
  3. Final Answer:

    DynamoDB is serverless and does not require manual server setup. -> Option D
  4. Quick Check:

    Serverless means no manual setup [OK]
Hint: DynamoDB is fully managed, no manual setup needed [OK]
Common Mistakes:
  • Confusing DynamoDB with traditional databases
  • Assuming manual setup for any NoSQL database
  • Ignoring AWS managed service features
5. A company wants a database for their IoT app that must handle millions of devices sending data continuously. Why should they choose DynamoDB?
hard
A. Because DynamoDB requires manual scaling which gives better control over resources.
B. Because DynamoDB can scale automatically and handle high throughput with low latency.
C. Because DynamoDB only supports small datasets and simple queries.
D. Because DynamoDB is designed only for relational data with fixed schemas.

Solution

  1. Step 1: Analyze IoT app requirements

    IoT apps need databases that scale automatically and handle high data throughput with low delay.
  2. Step 2: Match DynamoDB features to requirements

    DynamoDB offers automatic scaling and low-latency performance, ideal for millions of devices sending data.
  3. Step 3: Exclude incorrect options

    Manual scaling, small dataset limits, and relational-only support do not fit IoT app needs.
  4. Final Answer:

    Because DynamoDB can scale automatically and handle high throughput with low latency. -> Option B
  5. Quick Check:

    IoT needs auto-scale + low latency = DynamoDB [OK]
Hint: IoT apps need auto-scaling and low latency, DynamoDB fits [OK]
Common Mistakes:
  • Choosing manual scaling for IoT
  • Assuming DynamoDB is only for small data
  • Confusing NoSQL with relational databases
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard