Bird
Raised Fist0
AWScloud~10 mins

DynamoDB capacity modes (on-demand, provisioned) in AWS - Interactive Code Practice

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

Complete the code to set the DynamoDB table capacity mode to on-demand.

AWS
TableName: "MyTable",
BillingMode: "[1]"
Drag options to blanks, or click blank then click option'
AON_DEMAND
BPAY_PER_REQUEST
CPROVISIONED
DSTANDARD
Attempts:
3 left
💡 Hint
Common Mistakes
Using PROVISIONED instead of PAY_PER_REQUEST
Using ON_DEMAND which is not a valid billing mode string
2fill in blank
medium

Complete the code to set the provisioned read capacity units for a DynamoDB table.

AWS
ProvisionedThroughput: {
  ReadCapacityUnits: [1],
  WriteCapacityUnits: 5
}
Drag options to blanks, or click blank then click option'
A10
B"10"
C5
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using a string instead of a number
Setting capacity to zero which disables reads
3fill in blank
hard

Fix the error in the code to correctly specify the billing mode for provisioned capacity.

AWS
BillingMode: "[1]"
Drag options to blanks, or click blank then click option'
AON_DEMAND
BPAY_PER_REQUEST
CPROVISIONED
DSTANDARD
Attempts:
3 left
💡 Hint
Common Mistakes
Using ON_DEMAND or PAY_PER_REQUEST instead of PROVISIONED
Using an invalid string like STANDARD
4fill in blank
hard

Fill both blanks to define a DynamoDB table with provisioned capacity and 5 write units.

AWS
BillingMode: "[1]",
ProvisionedThroughput: {
  ReadCapacityUnits: 10,
  WriteCapacityUnits: [2]
}
Drag options to blanks, or click blank then click option'
APROVISIONED
BPAY_PER_REQUEST
C5
D10
Attempts:
3 left
💡 Hint
Common Mistakes
Using PAY_PER_REQUEST with ProvisionedThroughput
Setting WriteCapacityUnits to a string
5fill in blank
hard

Fill the two blanks to create a DynamoDB table with on-demand capacity and a table name 'Orders'.

AWS
TableName: "[1]",
BillingMode: "[2]"
Drag options to blanks, or click blank then click option'
AOrders
BPAY_PER_REQUEST
Cnull
D{}
Attempts:
3 left
💡 Hint
Common Mistakes
Using PROVISIONED billing mode for on-demand settings
Including ProvisionedThroughput for on-demand (causes validation error)

Practice

(1/5)
1. What is the main advantage of using DynamoDB's on-demand capacity mode?
easy
A. It offers a lower cost for steady, predictable workloads.
B. It automatically scales to handle any workload without manual capacity planning.
C. It requires you to set fixed read and write capacity units.
D. It limits the number of requests per second to a fixed amount.

Solution

  1. Step 1: Understand on-demand mode behavior

    On-demand mode automatically adjusts capacity to meet traffic demands without manual input.
  2. Step 2: Compare with provisioned mode

    Provisioned mode requires fixed capacity settings, unlike on-demand.
  3. Final Answer:

    It automatically scales to handle any workload without manual capacity planning. -> Option B
  4. Quick Check:

    On-demand = auto scaling without setup [OK]
Hint: On-demand means auto scale, no manual setup needed [OK]
Common Mistakes:
  • Confusing on-demand with provisioned fixed capacity
  • Thinking on-demand limits requests
  • Assuming on-demand is cheaper for steady workloads
2. Which of the following is the correct way to specify provisioned capacity in a DynamoDB table creation JSON?
easy
A. { "Throughput": { "Reads": 5, "Writes": 10 } }
B. { "CapacityMode": "ON_DEMAND" }
C. { "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 10 } }
D. { "ReadUnits": 5, "WriteUnits": 10 }

Solution

  1. Step 1: Recall provisioned capacity syntax

    Provisioned mode requires specifying ReadCapacityUnits and WriteCapacityUnits inside ProvisionedThroughput.
  2. Step 2: Check options for correct JSON structure

    { "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 10 } } matches the correct AWS DynamoDB API format for provisioned throughput.
  3. Final Answer:

    { "ProvisionedThroughput": { "ReadCapacityUnits": 5, "WriteCapacityUnits": 10 } } -> Option C
  4. Quick Check:

    ProvisionedThroughput with Read/Write units = correct syntax [OK]
Hint: Provisioned capacity uses ProvisionedThroughput with Read/Write units [OK]
Common Mistakes:
  • Using CapacityMode for provisioned capacity
  • Missing ProvisionedThroughput wrapper
  • Incorrect property names like ReadUnits
3. Given a DynamoDB table in provisioned mode with 5 read capacity units and 5 write capacity units, what happens if your application suddenly sends 20 write requests per second?
medium
A. Some write requests are throttled because they exceed the provisioned write capacity.
B. All 20 write requests succeed immediately without throttling.
C. DynamoDB automatically increases write capacity to 20 units instantly.
D. The table switches automatically to on-demand mode to handle the load.

Solution

  1. Step 1: Understand provisioned capacity limits

    Provisioned mode limits throughput to the set capacity units (5 writes per second here).
  2. Step 2: Analyze effect of exceeding capacity

    Sending 20 writes exceeds 5 units, causing throttling of excess requests.
  3. Final Answer:

    Some write requests are throttled because they exceed the provisioned write capacity. -> Option A
  4. Quick Check:

    Provisioned mode throttles excess requests [OK]
Hint: Provisioned mode throttles requests above set capacity [OK]
Common Mistakes:
  • Assuming automatic capacity increase in provisioned mode
  • Thinking on-demand mode applies automatically
  • Believing all requests always succeed
4. You configured a DynamoDB table with provisioned capacity: 10 read units and 10 write units. Your application experiences throttling errors during peak hours. What is the best immediate fix to reduce throttling without downtime?
medium
A. Switch the table to on-demand capacity mode.
B. Reduce the size of items stored in the table.
C. Delete and recreate the table with higher capacity.
D. Increase the provisioned read and write capacity units.

Solution

  1. Step 1: Identify cause of throttling

    Throttling occurs because provisioned capacity is too low for peak traffic.
  2. Step 2: Choose immediate fix without downtime

    Increasing provisioned capacity units can be done live without deleting the table.
  3. Final Answer:

    Increase the provisioned read and write capacity units. -> Option D
  4. Quick Check:

    Increase capacity units to reduce throttling [OK]
Hint: Increase provisioned units live to fix throttling fast [OK]
Common Mistakes:
  • Deleting and recreating table causes downtime
  • Assuming switching to on-demand is instant and free
  • Reducing item size does not fix capacity limits
5. A startup expects unpredictable traffic spikes and wants to minimize cost during low usage while avoiding throttling during spikes. Which DynamoDB capacity mode should they choose and why?
hard
A. On-demand mode because it charges per request and scales instantly without manual setup.
B. Provisioned mode with auto scaling enabled to adjust capacity automatically.
C. Provisioned mode with fixed capacity to control costs strictly.
D. On-demand mode but with a fixed maximum request limit to save costs.

Solution

  1. Step 1: Understand startup's needs

    They want to avoid throttling during spikes and save cost during low usage.
  2. Step 2: Compare capacity modes for unpredictable traffic

    On-demand mode charges per request and auto scales instantly, ideal for unpredictable spikes.
  3. Step 3: Evaluate other options

    Provisioned with auto scaling helps but requires setup and may lag; fixed capacity risks throttling or cost waste.
  4. Final Answer:

    On-demand mode because it charges per request and scales instantly without manual setup. -> Option A
  5. Quick Check:

    Unpredictable traffic = on-demand mode best [OK]
Hint: Unpredictable spikes? Choose on-demand for auto scaling [OK]
Common Mistakes:
  • Choosing fixed provisioned capacity for unpredictable traffic
  • Assuming auto scaling is instant and always perfect
  • Thinking on-demand has fixed request limits
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