AWS releases SSD instances
AWS recently released a new instance type with two 1TB SSDs attached locally.
These SSDs are fast. Especially compared to EBS. EBS will push to about 700 random reads/second when RAIDed and network conditions are kind. The new SSDs will do about 120,000 random reads/second, a 170x performance boost, irrespective of network conditions.
We switched our MongoDB over
We've just switched our primary MongoDB replica set over to the new SSD instances instead of high-memory quadruple extra large Instances (68GB RAM each). We've put the two drives together in a RAID1 array for extra reliability.
Our average response time across all of Conversocial is 43% faster (392ms to 274ms). One particular view that grabs a lot of random data is now 74% faster (877ms to 504ms). We've not done much optimization beyond indexing yet so this is great.
According to MMS our CPU usage on our old primary server was hovering around 90% iowait (we definitely needed to shard). It now hovers around 3%.
Long-term Gain - Less Optimizing for Random IO
We've been starting to look at performance and have been considering a lot of fun tricks to get our data clustered together and optimised for reading from platter-based disks. Now that we have SSDs we can save ourselves a lot of time and hassle by not doing these optimisations.
This is a feature we've been waiting for AWS to do for a long time. It's now here and, as always, AWS have done an amazing job.