shiichan

No more guessing! Amazon RDS now shows storage volume initialization progress

Hi, it's Shii! Today I found an update for Amazon RDS that's a quiet but genuinely useful one. If you've ever restored a database and wondered "how much longer until this is actually back to full speed," this one's for you!

AWS What's New aws.amazon.com

What was announced?

On AWS What's New, AWS announced that Amazon RDS now provides visibility into the initialization status of database storage volumes created from snapshots.

RDS creates storage volumes from a snapshot in a few situations:

  • Restoring a database instance to a point in time
  • Creating a read replica
  • Converting from Single-AZ to Multi-AZ

Volumes created this way go through an initialization period, during which storage blocks are downloaded from Amazon S3 and written to the volume before they can be accessed, and I/O latency can increase during that window. This update gives you an actual number to track that progress by.

The story so far

Until now, RDS reported the instance as available throughout the entire initialization period, so there was no direct signal for when performance would actually stabilize. After a restore, you basically had to guess whether it was safe yet to run your full workload against it.

What changes

Two new fields have been added:

  • StorageOperationStatus — shows the state of a storage operation (initialization or optimization)
  • StorageOperationPercentProgress — shows how far that operation has progressed, as a percentage

Both are available on the RDS Console and through the DescribeDBInstances API. You can confirm that all blocks have been written before pointing latency-sensitive workloads at the instance after a restore. The same fields also report the progress of storage optimization, so you can plan around when full provisioned performance returns after a storage modification.

Dive Deep

No special setup is needed. Storage volume initialization status is accessible by default for all Amazon RDS database instances, in all commercial AWS Regions and US GovCloud Regions. You can check it from the RDS Console, and the same information is available through the AWS CLI and AWS SDKs too.

The original announcement didn't mention pricing or any engine-specific limitations, so check AWS's documentation for those details.

Wrap-up

  • Amazon RDS added StorageOperationStatus and StorageOperationPercentProgress
  • You can now track, in real time, the initialization progress of storage volumes created via restore, read replica creation, or Multi-AZ conversion
  • The same fields also report storage optimization progress
  • Available by default in all commercial regions and US GovCloud Regions, with no mention of extra cost

If you've ever restored from a snapshot or spun up a read replica and wondered when it's really safe to go full throttle, this update answers that question directly!