Bird
Raised Fist0
DynamoDBquery~20 mins

Auto-scaling configuration in DynamoDB - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Auto-scaling Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding DynamoDB Auto-scaling Targets
Which of the following best describes the purpose of setting a target utilization percentage in DynamoDB auto-scaling?
AIt defines the maximum number of read/write capacity units the table can have.
BIt specifies the desired average utilization of provisioned capacity to maintain performance and cost balance.
CIt sets the minimum capacity units the table must always have regardless of traffic.
DIt determines the exact number of capacity units to allocate at all times.
Attempts:
2 left
💡 Hint
Think about how auto-scaling tries to balance cost and performance by adjusting capacity based on usage.
❓ query_result
intermediate
2:00remaining
Result of Auto-scaling Policy Update
Given a DynamoDB table with auto-scaling enabled and a target utilization of 70%, what happens if the actual consumed read capacity suddenly spikes to 90% for a sustained period?
AAuto-scaling gradually increases provisioned capacity to bring utilization closer to the 70% target.
BAuto-scaling disables itself to prevent over-provisioning.
CAuto-scaling immediately doubles the provisioned capacity to match the spike.
DAuto-scaling decreases provisioned capacity because the target utilization is exceeded.
Attempts:
2 left
💡 Hint
Consider how auto-scaling reacts to sustained changes rather than instant spikes.
📝 Syntax
advanced
2:00remaining
Valid JSON for Auto-scaling Configuration
Which JSON snippet correctly configures DynamoDB auto-scaling for read capacity with a target utilization of 75% and minimum capacity of 5 units?
A{ "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "MinCapacity": 5, "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 75 } }
B{ "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "MinCapacity": "5", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 75 } }
C{ "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "MinCapacity": 5, "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 0.75 } }
D{ "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "MinCapacity": 5, "TargetTrackingScalingPolicyConfiguration": { "TargetValue": "75" } }
Attempts:
2 left
💡 Hint
TargetValue expects a percentage value (e.g., 75) between 10 and 90 as a double. MinCapacity must be a number, not a string.
❓ optimization
advanced
2:00remaining
Optimizing Auto-scaling for Cost Efficiency
You notice your DynamoDB table's auto-scaling frequently scales up and down causing cost spikes. Which adjustment can reduce this oscillation?
ASet the minimum capacity to the highest observed usage.
BLower the target utilization percentage to 30%.
CIncrease the cooldown period between scaling actions.
DDisable auto-scaling and set a fixed high capacity.
Attempts:
2 left
💡 Hint
Think about how timing between scaling actions affects stability.
🔧 Debug
expert
2:00remaining
Diagnosing Auto-scaling Failure
A DynamoDB table's write capacity is not scaling up despite high traffic. The auto-scaling policy is set with a target utilization of 70%, min capacity 5, max capacity 100. What is the most likely cause?
AThe target utilization is set too low to trigger scaling.
BThe table is in on-demand mode, so auto-scaling is ignored.
CThe max capacity is set too high, preventing scaling.
DThe IAM role used by auto-scaling lacks permission to update capacity.
Attempts:
2 left
💡 Hint
Check permissions when auto-scaling does not respond to load.

Practice

(1/5)
1. What is the main purpose of auto-scaling in DynamoDB?
easy
A. To encrypt data stored in the table
B. To manually set fixed capacity limits
C. To backup data at regular intervals
D. To automatically adjust read and write capacity based on traffic

Solution

  1. Step 1: Understand auto-scaling function

    Auto-scaling automatically changes capacity to match traffic demands.
  2. Step 2: Compare options

    Only To automatically adjust read and write capacity based on traffic describes automatic adjustment of capacity based on traffic.
  3. Final Answer:

    To automatically adjust read and write capacity based on traffic -> Option D
  4. Quick Check:

    Auto-scaling adjusts capacity automatically = A [OK]
Hint: Auto-scaling means automatic capacity adjustment [OK]
Common Mistakes:
  • Confusing auto-scaling with manual capacity setting
  • Thinking auto-scaling handles backups
  • Mixing encryption with scaling
2. Which of the following is the correct way to specify the minimum capacity units in a DynamoDB auto-scaling policy JSON snippet?
easy
A. "MinCapacity": 5
B. "MinimumCapacityUnits": 5
C. "min_capacity": 5
D. "Min_Capacity": 5

Solution

  1. Step 1: Recall DynamoDB auto-scaling JSON keys

    The correct key for minimum capacity is "MinCapacity" with camel case and no underscores.
  2. Step 2: Check options

    Only "MinCapacity": 5 matches the exact key syntax "MinCapacity".
  3. Final Answer:

    "MinCapacity": 5 -> Option A
  4. Quick Check:

    Correct JSON key for minimum capacity = B [OK]
Hint: Use exact key names with correct casing in JSON [OK]
Common Mistakes:
  • Using underscores instead of camel case
  • Adding extra words like 'Units'
  • Incorrect capitalization
3. Given this auto-scaling target tracking policy snippet:
{
  "TargetValue": 70.0,
  "ScaleInCooldown": 60,
  "ScaleOutCooldown": 60
}

What does the TargetValue represent?
medium
A. The maximum capacity units allowed
B. The cooldown time in seconds
C. The desired utilization percentage of capacity
D. The minimum capacity units allowed

Solution

  1. Step 1: Understand TargetValue meaning

    TargetValue sets the target utilization percentage for capacity usage.
  2. Step 2: Analyze options

    The desired utilization percentage of capacity correctly describes TargetValue as desired utilization percent (70%).
  3. Final Answer:

    The desired utilization percentage of capacity -> Option C
  4. Quick Check:

    TargetValue = utilization percent = C [OK]
Hint: TargetValue sets target usage percent, not capacity units [OK]
Common Mistakes:
  • Confusing TargetValue with capacity limits
  • Mixing cooldown times with TargetValue
  • Thinking TargetValue is a fixed capacity number
4. You have this auto-scaling policy JSON snippet:
{
  "MinCapacity": 5,
  "MaxCapacity": 100,
  "TargetValue": 80.0,
  "ScaleInCooldown": 30,
  "ScaleOutCooldown": 30
}

But the policy is not working as expected. What is the likely error?
medium
A. MinCapacity is greater than MaxCapacity
B. Missing required field for resource ID
C. TargetValue should be between 0 and 1, not 80.0
D. Cooldown times are too short and cause rapid scaling

Solution

  1. Step 1: Check capacity and cooldown values

    MinCapacity (5) is less than MaxCapacity (100), cooldowns are valid numbers.
  2. Step 2: Identify missing required fields

    Auto-scaling policies require resource identifiers (like ResourceId) to apply the policy.
  3. Step 3: Confirm TargetValue range

    TargetValue is a percentage and 80.0 is valid.
  4. Final Answer:

    Missing required field for resource ID -> Option B
  5. Quick Check:

    Missing resource ID causes policy failure = A [OK]
Hint: Check for all required fields, not just values [OK]
Common Mistakes:
  • Assuming cooldown times cause failure
  • Misreading TargetValue scale
  • Ignoring missing resource identifiers
5. You want to configure auto-scaling for a DynamoDB table with unpredictable traffic spikes. Which combination of settings will best ensure smooth scaling without throttling or overspending?
{
  "MinCapacity": 10,
  "MaxCapacity": 200,
  "TargetValue": 70.0,
  "ScaleInCooldown": 120,
  "ScaleOutCooldown": 30
}
hard
A. Set a low MinCapacity, high MaxCapacity, fast ScaleOutCooldown, slow ScaleInCooldown
B. Set MinCapacity equal to MaxCapacity for fixed capacity
C. Set very fast ScaleInCooldown and ScaleOutCooldown both to 10 seconds
D. Set TargetValue to 100 to maximize usage

Solution

  1. Step 1: Understand traffic spikes impact

    Unpredictable spikes need quick scaling out to avoid throttling and slower scaling in to avoid rapid capacity drops.
  2. Step 2: Analyze given settings

    Low MinCapacity saves cost, high MaxCapacity allows growth, fast ScaleOutCooldown (30s) reacts quickly, slow ScaleInCooldown (120s) prevents rapid scale down.
  3. Step 3: Evaluate other options

    Fixed capacity ignores spikes, very fast cooldowns cause thrashing, setting TargetValue to 100 risks overprovisioning.
  4. Final Answer:

    Set a low MinCapacity, high MaxCapacity, fast ScaleOutCooldown, slow ScaleInCooldown -> Option A
  5. Quick Check:

    Fast scale out + slow scale in = smooth scaling = D [OK]
Hint: Fast scale out, slow scale in for spike handling [OK]
Common Mistakes:
  • Setting fixed capacity ignoring spikes
  • Using equal cooldowns causing rapid scaling
  • Setting TargetValue too high causing overspending
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