# AWS RDS Burst Balance

## What Burst Balance Applies To <a href="#what-burst-balance-applies-to" id="what-burst-balance-applies-to"></a>

* Burst balance only applies to General Purpose SSD storage (gp2). It does not apply to Magnetic storage, or Provisioned IOPS (io1).

### Baseline Performance <a href="#baseline-performance" id="baseline-performance"></a>

* Every SSD comes with a baseline performance, measured in IOPS (I/O (input/output) per second).
* Each GB of storage provides 3 IOPS of baseline performance.
  * There is a minimum of 100 IOPS. So any SSD between 20-33 GB will have a baseline performance of 100 IOPS.
  * There is a maximum of 16,000 IOPS. So any SSD above 5340 GB will have a baseline performance of 16,000 IOPS.
  * Examples: 500 GB has 1,500 IOPS, 1,000 GB has 3,000 IOPS.
* This baseline performance is guaranteed for your SSD. You will have this level of IOPS even if you have no burst balance remaining.

### Burst <a href="#burst" id="burst"></a>

* Bursting is having your SSD go over the baseline performance for a certain period of time.
* The burst duration is dependent on the burst balance, which is related to how much it’s gone over the baseline, as well as the size of the SSD.
* SSDs below 1,000 GB are able to burst to a maximum of 3,000 IOPS.
* SSDs that are 1,000 GB and above do not have a maximum IOPS that they can burst to.
  * For this, the documentation says that burst is not relevant for SSDs above 1,000 GB. The phrase “not relevant” can be a little vague. Does it mean there’s no burst at all? Or does it mean it can burst to any value? From personal experience, the highest IOPS value I have seen my 1,000 GB SSD burst to is 15,000 IOPS).

### Burst Balance <a href="#burst-balance" id="burst-balance"></a>

* When the IOPS usage of your SSD goes above the baseline, burst balance is used.
* When the IOPS usage goes below the baseline, burst balance is regenerated.
* If your burst balance reaches 0%, your SSD will not perform any higher than the baseline IOPS. This can cause severe issues with your application performance if it relies too much on burst.
* I feel that the actual calculations for this aren’t that important to know, because I don’t think you should be planning too much around using the burst balance due to the dangers of hitting 0%. Burst balance should be treated as a safety net, not something to be used regularly

### Resource:

* [NG Wee Thia Joel Blog](https://joelngwt.github.io/2021/08/27/understanding-aws-rds-burst-balance.html)
