It’s hard to believe that over 3 years ago I asked a question on where hybrid drive technology had reached. I was thinking of the Enterprise market at the time and as far as I am aware, at this stage, no Enterprise storage array manufacturers have yet integrated these devices into their products. At the consumer level, of course there are products out there, most well known being Seagate’s Momentus XT drive. But there is another approach to speeding up the hard drive and that’s to use SSD as a cache but in a slightly different manner. A good example of this is the OCZ Synapse SSD drive which uses software to provide the cache intelligence.
Imagine a typical hybrid drive. Data written to and from the drive will be in blocks matching the solid state component, let’s say 4K blocks. There aren’t many alternatives to cache management other than to use Least Recently Used as the algorithm to move data back and forth between the cache and spinning HDD. As blocks of data are read, they can rise into the cache, being destaged or invalidated in cache as frequency of usage drops. The drive has no concept or knowledge of the data it is dealing with, simply seeing 4K block transactions.
Now, consider a configuration where the host operating system is in charge of caching between the SSD and HDD components. The O/S has a lot more information on the file types and their usage. There’s much more useful metadata describing file and associating individual 4K blocks with each other, including the ability to predict which blocks will be needed in sequential read operations. In addition, there’s also the ability for the consumer to add their own level of cache management into the mix, excluding for instance all MP3 files from being cache candidates. On a standard hybrid drive, large media files have a risk to pollute the cache, especially if they are played frequently.
The key feature here will be the software and OCZ package the Synapse with a product called Dataplex. I haven’t tried it out so I can’t say how effective it is, but figures on OCZ’s website imply performance is high. Ideally caching algorithms should be built directly into the operating system and Microsoft did release Windows 7 with a feature called ReadyBoost aimed at achieving just this kind of acceleration. Unfortunately as far as I am aware, ReadyBoost is only usable with removable drives such as USB sticks, which have woefully poor performance compared to solid state drives. Perhaps allowing ReadyBoost to use SSDs would be a great feature for Windows 8.
For Macs there are options to replace the optical drive with an HDD or SSD, depending on your preference, but one solution could be for the hard drive manufacturers to combine an SSD and HDD together in a single form factor, placing a SATA connector at either end of the drive; one for SSD connectivity, one for HDD connectivity. A single unit could then run in a laptop or Macbook and provide the benefits of O/S managed cache. I wonder if anyone has patented that design yet?