Thoughts on SSDs in Production
We’ve had our SSDs in production for more than 72 hours now. We’ve had them in a slave role for nearly a week but they’ve now replaced existing hardware including the master.
The drives are FAST. In our production roles they’re reading at about 45MB/s and writing to disk at about 15MB/s and using only about 22% of disk utilization.
Not too bad.
We also have about 70GB free on these drives so that leaves plenty of room to grow.
There was small problem that I didn’t anticipate.
When we were running our entire disks out of memory we would only use one or two indexes per column. We had a set of reporting tasks which ran some queries once every 5 minutes.
The columns these queries were using didn’t have any indexes so InnoDB CPU would spike for a moment and continue.
Modern machines have memory bandwidth of about 15GB/s so these queries were mostly CPU bound but completed in a few seconds.
When we switched over to SSDs all of a sudden these queries needed to perform full table scans and were reading at about 100MB/s for two minutes at a time.
Fortunately, an ALTER TABLE later and a few more indexes fixed the problem.
We dropped the indexes when we were running out of memory because the queries could be resolved so quickly. Now that they were on disk again we had to revert to the olde school way of doing things.