DBaaS offerings like Amazon RDS require you to choose from a predefined set of instance types, and they’re often based on the underlying infrastructure-as-a-service (IaaS) instance types. In the case of RDS current generation instance types, we have the T3 and M5 general-purpose classes as well as the R5 and X1E/X1/Z1D memory-optimized classes. This is a broad range of instance types, but as we know, every database is unique.
In general, databases tend to benefit from more memory rather than more compute as they will often become IO bound first. The optimal amount of compute will depend on things like the number of concurrent connections. The optimal amount of memory is driven by the size of the working set.
Pay more because you have to
While predefined instance types work for some databases, they can quickly become cost prohibitive for others. This is because standard instance types limit the amount of memory per vCPU. For example, M5 instance types provide 4GB per vCPU while R5 instance types provide 8GB per vCPU.
Let’s say you need 16 vCPU and 256GB of memory.
There is no exact match. You’ll have to pick the db.m5.24xlarge (96 vCPU/384GB) if you want an M5, but an R5 would be a better fit. You’d have to go with the db.r5.12xlarge (48 vCPU/384GB). Either way, you’ll end up with a little more memory than you need and a whole lot more vCPU. You’re over-provisioned and paying for an expensive instance type.
Pay less because you can
SkySQL Power solves this problem with custom instance types. Rather than forcing you to choose from a set of predefined instance types, you can request your own. In the example above, you could request a custom instance type with exactly 16 vCPU and 256GB of memory, and you’ll save money on both compute and memory.
For a different database whose workload requires less compute and more memory, you could request a custom instance type with 8 vCPU and 512GB of memory. That’s a much better fit than an db.r5.24xlarge (96 vCPU/768GB) or a db.x1e.8xlarge (32 vCPU/976GB).
We know every database is unique, and we know off-the-shelf sizes don’t always fit.
It’s why we created SkySQL Power, a DBaaS tailored to fit you.
For more about SkySQL Power see our documentation.
To learn more about SkySQL, https://mariadb.com/products/skysql/.
To get started, https://mariadb.com/products/skysql/get-started/.