RDS: how to warm the green instance

0

Is there any way to force the Green instance in a RDS MySQL Blue/Green deployment to be warm? The lazy-load is making our upgrade plans very hard because any query is impossibly slow for any real-life usage.

I read the suggestion of running SELECT * in tables, but our DB is many TB of size. SELECTing all of our data isn't practical, probably very expensive operation also.

Is there any other option that I'm missing? I realize that EC2 has the Fast Restore Snapshot option, but I'm not seeing anything similar in RDS.

Perhaps this is in AWS's roadmap?

Brian B
已提问 2 个月前141 查看次数
2 回答
1

Brian,

Warming up the green instance in an RDS MySQL blue/green deployment typically involves running queries to load data into the instance's cache. Running SELECT * queries on large tables is indeed not practical. Here are some alternative strategies:

  • Targeted Queries: Instead of SELECT *, run queries that target the most frequently accessed data or use LIMIT to reduce the amount of data loaded.
  • Replication: Use the blue instance as the replication source to keep the green instance warm, ensuring the cache is populated with recent queries.
  • Incremental Load: Gradually increase the workload on the green instance before the full cutover.

Currently, RDS does not have a feature equivalent to EC2's Fast Restore Snapshot that instantly warms the cache.

I'm here to help!

profile picture
已回答 2 个月前
profile picture
专家
已审核 2 个月前
0

Thank you, Vitor.

Do you know if there's anything upcoming in the AWS roadmap to help deal with lazy load in a more sensible manner?

The ideal solution would be to have a button in the Console to force all of the data to be copied from S3 into the disk. It would take hours of course, but IRL there's no real alternative -- and a Console button would be way simpler than having to come up with ways to somehow warm up the data.

We ran multiple tests here and the added latency makes any real-life usage impossible. Queries that should take 200ms are taking 20 minutes. As it stands, the DB ends up being restored, but is useless for production. This is particularly bad in a blue/green environment approach.

Brian B
已回答 1 个月前

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

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

回答问题的准则