Wow, that’s pretty brutal. Thanks for the transparency and the detailed analysis.

That said, 2 TB is, for me, an unfathomable size for a database. I recall back when I worked at a certain startup and we had a 250 GB RDS instance — and things were borderline untenable.

As such, you may want to consider a solution that involves sharding your MySQL data across multiple databases, not unlike how Pintrest does it: https://engineering.pinterest.com/blog/sharding-pinterest-how-we-scaled-our-mysql-fleet An upside of that is there if there is an RDS instance in the future, it could be limited to a subset of users, and restoring the affected server would involve less downtime.

Good luck!

Written by

Engineer. Staff at Anthrocon, Anthro New England, Midwest FurFest, Furry Migration, Eurofurence. AWS, Splunk, Docker, DMARC, White Mage, he/him

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store