Amazon DynamoDB Reserved Capacity

Why Amazon DynamoDB Reserved Capacity?

Amazon DynamoDB reserved capacity gives you the option to reserve database capacity for a one- or three-year term and in turn receive a significant discount compared to provisioned capacity pricing. A reserved capacity purchase is an agreement to pay for a minimum amount of provisioned throughput capacity, for the duration of the term of the agreement, in exchange for discounted pricing. If you use less than your reserved capacity, you will still be charged each month for that minimum amount of provisioned throughput capacity. DynamoDB offers a partial upfront payment option for reserved capacity. With the partial upfront payment option, you make an upfront payment and are then charged a discounted hourly rate for the capacity for the duration of the reserved capacity term. Reserved capacity is a billing feature and has no impact on the performance or availability of your DynamoDB tables. 

Features

  • Reserved capacity doesn’t require any changes to how you use Amazon DynamoDB. When computing your bill, the AWS billing system automatically applies reserved capacity rates first to minimize your costs. Any throughput you provision in excess of your reserved capacity is billed at standard rates for provisioned throughput. 
  • Reserved capacity is available for single-Region, provisioned read and write capacity units (RCU and WCU) on DynamoDB tables including global and local secondary indexes. You cannot purchase reserved capacity for replicated WCUs (rWCUs). 
  • Reserved capacity can only be used with DynamoDB Standard table class.
  • Reserved capacity can save you up to 77% over standard provisioned capacity rates.
  • You can make a partial upfront payment for reserved capacity for one- or three-year terms. One-year reserved capacity is available in all Regions, and three-year is available in limited Regions. To learn more about pricing and Region availability, see Amazon DynamoDB Pricing for Provisioned Capacity.
  • When you purchase reserved capacity, you must designate a Region, quantity, and term.
  • You can monitor your reserved capacity ownership from the AWS Management Console.

 

For more details, see the Amazon DynamoDB User Guide.

When should you purchase reserved capacity?

Reserved capacity is a great option to reduce DynamoDB costs for workloads with steady usage and predictable growth over time. You can determine whether reserved or provisioned capacity best fits your needs by comparing provisioned hourly rates and the effective hourly rate of reserved capacity. In order to calculate an effective hourly rate, amortize the one-time fee over the term and add the hourly usage rate. For example, the hourly amortized cost for 100 WCUs in the US East (N. Virginia) Region can be calculated as $150.00 / 365 days / 24 hours = $0.0171 per WCU hour.

If you can predict your need for DynamoDB read-and-write throughput, reserved capacity offers significant savings over the normal price of DynamoDB provisioned throughput capacity. By purchasing capacity up front, you can save up to 54% (one-year term) or up to 77% (three-year term) over the regular hourly rates.

Reserved capacity mode might be best if you:

  • Have predictable application traffic.
  • Run applications whose traffic is consistent or ramps gradually.
  • Can forecast capacity requirements to control costs.

Reserved capacity payment

Reserved capacity offers significant savings compared to provisioned capacity, typically about 54% for a one-year term and 77% for a three-year term. You will be charged a one-time upfront fee plus an hourly fee for each hour during the term based on the amount of DynamoDB reserved capacity you purchase. Partial upfront payment option provides the best effective hourly price and balances the reserved capacity payments between upfront and hourly.

How to purchase reserved capacity

You can purchase up to a combined one million reserved capacity units for write capacity units (WCUs) and read capacity units (RCUs) using the AWS Management Console. If you want to purchase more than 1,000,000 provisioned capacity units in a single purchase, or have active reserved capacity and want to purchase additional reserved capacity that would result in more than 1,000,000 active provisioned capacity units, complete the service limit increase form and provide additional information regarding your use case.

  1. Sign in to the AWS Management Console, select DynamoDB under Databases.
  2. Ensure you’ve selected the Region where you want to make your reserved capacity purchases.
  3. Select Reserved Capacity in the navigation pane and choose Purchase Reserved Capacity.
  4. Select the offering type and the term length you want. 
  5. Adjust the quantity of reserved capacity to purchase.
  6. Select Purchase reserve capacity, verify the purchase information, and confirm.

How billing works

During billing, capacity usage is first compared to your active reserved capacity to minimize costs. Each hour, if the amount of capacity used is less than or equal to the total reserved capacity you’ve purchased, all capacity will be charged at the reserved capacity rate. Any throughput you provision in excess of your reserved capacity is billed at standard rates for provisioned throughput. For example, if you buy 100 reserved WCUs and your actual usage is 100 WCUs or less, you will be charged for the reserved capacity rate for 100 WCUs. If your provisioned capacity exceeds 100 WCUs, you will be charged the reserved capacity rate for 100 WCUs and standard provisioned throughput rates for any throughput you provision in excess of your reserved capacity.

If you have multiple accounts linked with consolidated billing, reserved capacity units purchased either at the payer account level or linked account level are shared with all accounts connected to the payer account. Reserved capacity will first be applied to the account that purchased it and then any unused capacity will be applied to other linked accounts.

Important notes about purchases

  • A reserved capacity purchase is an agreement to pay for a minimum amount of provisioned throughput capacity, for the duration of the term of the agreement, in exchange for discounted pricing. If you use less than your reserved capacity, you will still be charged each month for that minimum amount of provisioned throughput capacity.
  • Reserved capacity prices cover provisioned capacity costs only. Storage and on-demand capacity are billed separately.
  • Reserved capacity is available for single-Region, provisioned read and write capacity units (RCU and WCU) on DynamoDB tables including secondary indexes. You cannot purchase reserved capacity for replicated WCUs (rWCUs).
  • Reserved capacity is not available for the DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) table class.
  • Reserved capacity is purchased in allocations of 100 WCUs or 100 RCUs. The smallest reserved capacity offering is 100 capacity units (reads or writes).
  • Region, quantity, and term length must be chosen at purchase and cannot be changed later.
  • Reserved capacity cannot be transferred to another Region or account, sold, or cancelled and the one-time fee is non-refundable.
  • Three-year reserved capacity is available in limited AWS Regions. To learn more about pricing and Region availability, see Amazon DynamoDB Pricing for Provisioned Capacity.