Why Aurora's IOPS is much higher than the mysql IOPS deployed by EC2.

0

A customer migrated mysql on EC2 to Aurora. Customers found that they increased the cost of IOPS every month. By looking at cloudwatch, Aurora's iops cost increased a lot. Aurora's total IOPS is nearly 20 times higher than mysql's iops. Here are some questions

  1. Although Aurora's IOPS calculation is not the same as EBS's IOPS, is the gap so huge? 2.Aurora's maintenance IO such as 6ways copy, Snapshot, Etc. will be counted in the customer's bill?
  2. Is there a difference between the table design on Aurora and mysql? Is there any way to optimize IOPS?
AWS
已提问 5 年前5567 查看次数
1 回答
0
已接受的回答

Aurora doesn't actually have IOPS per se like in RDS, so can you be more specific about which counter they are using? Is it [Billed] VolumeReadIOPS and VolumeWriteIOPS that they are using? and remember they need to keep in mind that they need to divide by 300 to get the number per second.

For Question 2, all activity within the aurora storage network itself is not billed. Backups are billed separately. Generally the answer to table design question is no, but that's hard to say always because aurora does scale differently. Is there a way to optimize I/O? Generally yes, use a bigger instance to cache more data rather than having to read I/O is a frequent solution, but again, you'd have to look at the use case specifically to make sure. A read replica could also help.

From https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Monitoring.html

VolumeReadIOPs

The number of billed read I/O operations from a cluster volume, reported at 5-minute intervals.

Billed read operations are calculated at the cluster volume level, aggregated from all instances in the Aurora DB cluster, and then reported at 5-minute intervals. The value is calculated by taking the value of the Read operations metric over a 5-minute period. You can determine the amount of billed read operations per second by taking the value of the Billed read operations metric and dividing by 300 seconds. For example, if the Billed read operations returns 13,686, then the billed read operations per second is 45 (13,686 / 300 = 45.62).

You accrue billed read operations for queries that request database pages that aren't in the buffer cache and therefore must be loaded from storage. You might see spikes in billed read operations as query results are read from storage and then loaded into the buffer cache.

AWS
专家
已回答 5 年前
profile picture
专家
已审核 1 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则