Why I don’t think MySQL is a good choice for the cloud

Databases are all about I/O speed. If you believe that 20% of the data is 80% of the queries, then any database over five times RAM is too large to be fast.

In most businesses data over a year old shouldn’t matter. It shouldn’t be part of the 20%.

For OLTP, that’s almost true except MySQL is a really crappy database. So the ratio is probably more like 2x RAM. Real databases allow you to organize the table by any column, so you can put data for the same foreign key together, or even just sort by creation date. InnoDB organizes by primary key, period.

For reporting, it’s table scans anyways with a good data mart, but the organization part is even more important there so the scan is sequential reads. Even in the cloud, bulk sequential reads are a sweet spot.

Luckily, there are some real databases that have skins so they can look like MySQL, so hopefully I can wean work off using it.

Leave a Reply