Amazon RDS reserved instances (RI's) now benefit from Instance Size Flexibility (ISF), much in the same way that ISF applies for EC2 instances. We have updated the engine that powers our RI Planner to accommodate the change in our recommendations for RDS instances. Purchasing with the ISF benefit will reduce your administrative overhead and lead you to maximum savings.
RI Planning with RDS ISF
What is ISF?
ISF is a feature of RDS RI's that lets the savings of an RI apply to any size of instance within a family. You automatically get this benefit when you purchase an RI within the same AWS Region (for both Single-AZ and Multi-AZ configurations), database engine, and instance family. ISF is available for the following database engine: Amazon Aurora, MariaDB, MySQL, PostgreSQL, Oracle (Bring Your Own License edition).
How does ISF work?
ISF manages your reservations in a points based system, where a scale determines the units assigned to each size within a family. When you run an instance, db.m3.large for example, any ISF RI within the db.m3 family can apply to the instance and the number of points your RI has relative to the points for the instance size ran determines how much or how many of the RI is consumed by that instance hour. The number of normalized units per DB instance size are:
What are the changes in the RI Planner?
In our RI Planner in the RDS tab, we take into consideration ISF when making recommendations. We still analyze your per-second instance usage and take into account your entire RI inventory, including ISF and non-ISF RI’s, before making a recommendation. For ISF RI’s, because any size RI can apply to an instance you run within a family, you’ll no longer need to purchase a variety of sizes and instead can purchase to the family, database, and region based on normalized units. Effectively you can abstract away the concept of purchasing to your instance type profile and instead just purchase ‘points’. There are a number of ways you could achieve this, but after much internal scenario testing and discussion with our biggest customers we’ve established an effective pattern which we’ve built into the planner.
In the schematic below, sample usage over a time period helps illustrate how ISF works. For each time unit, imagine you are running a combination of instances. Targeting a waterline is still valid and in the case for 100% RI utilization, we'd recommend you purchase 10 Large RI's, since those are the smallest instance size available. You have one RI purchase and when your normalized usage stays the same or increases, your RI's will remain perfectly utilized.
The RI Planner details page shows how we apply ISF to an RDS instance.
The philosophy we took with EC2 ISF focused on reducing your management overhead while maximizing your savings. For RDS ISF as well, we make recommendations for the smallest instance size possible and Single-AZ. This allows for maximum coverage with the smallest set of RI parcels. Note that the parcels themselves will be large and you may need to request an increase to your RI purchase limit from Amazon to accommodate the purchase of a large quantity of small instances sizes. You’ll benefit from a more streamlined RI lifecycle with the purchase of the large quantity, rather than in the past where you would have multiple purchases of a variety of sizes per family. This strategy will also help you better manage your inventory if your usage decreases, with the ability to sell off a much more granular number of RI units to fit the new usage patterns.