In addition, most RMDBS are optimized for mechanical disks. Optimization for SSDs becomes interesting only recently when the price of SSD drops to be barely reasonable.
However, SSDs absolutely rocks as big cache.
In addition, most RMDBS are optimized for mechanical disks. Optimization for SSDs becomes interesting only recently when the price of SSD drops to be barely reasonable.
However, SSDs absolutely rocks as big cache.
Since SSDs blow the hell out of platters no matter what the workload or access pattern is, you'll still get significantly improved performances, even without SSD-specific optimizations.
The one "optimization" I'd like to see out of SSD's rise is deoptimization: since access patterns becomes less important (or at least naive access patterns become less costly), I'd like to see systems simplified and "optimizations" removed rather than new optimizations added.
The first thing we used to do is try to convince the hardware raid controller not to do anything clever, like readahead etc, b/c seek times are practically meaningless. Despite our efforts at disabling every optimization we could control that was tailored for rotational platters, we still found that software raid (linux md) outperformed a classically great hardware controller--perhaps by virtue of being "stupider".
So that is our go-to configuration now: Micron P300 SLC, 200GB drives, with md raid.
This might be a horrible example but my one friend had a installation of FileMaker Pro running on a completely tricked out XServer (RAID with 15K SAS drives). With 250 concurrent users he was completely max out on CPU and many queries took minutes to complete.
When he moved to a 256GB SSD his CPU load now never goes above 20% and not one query takes more than five seconds, period.
Also, please reference my old HN post from over a year ago.
Here is a benchmark I've run (vertical numbers are transactions/s, horizontal number of threads) : http://blogs.intellique.com/images/comp-ssd-db.png