page contents

About the Post

Author Information

Static Data Rotation- SSD Technology to look for in Enterprise products

For many years, RAM and Disk was and still is today, the main culprit for bottlenecks in performance. With the lower cost of Memory, the shift has fallen more on disks to be the slow point in systems. Large Enterprise companies would have numerous external storage devices to get around this issue. (SAN, DAS, NAS, etc.) For smaller companies with a considerable lighter budget, they had a tougher issue trying to resolve this challenge.

Recently (late 2009)  there has been a change to how hard drives works that has generated a lot of positive buzz. Solid-state drives (SSD) have been making a lot of headlines with their performance and throughput.

However, one of the main drawbacks of SSD  has been reliability. This leads to a common perception is that you should only use these type of drives for static content that will not have a lot of writes to the drive. This is more true in consumer products like home computers, but in enterprise  devices that is not always true. Most people are aware that every NAND cell has a certain prescribed number of Program/Erase (P/E) cycles and as data is being written to disk, chances are it will remain unchanged for weeks or months. This means that the cells that are being used to store that data will have the same wear level (used P/E cycles) for the weeks or months that data was unchanged. This can become a problem for the remaining free cells that are going to be taxed even more and could reach their end of life which will make the entire drive read only or even fail it completely.

Little did I know that SSD drive that I was testing was based on a chip-set that implements an intelligent Static Data Rotation algorithm as part of a set of technologies to increase the reliability of the drive. This means that the SSD controller  would actively rotate the static data  from cells intensively used to other cells that were least used during  idle periods  to allow the drives wear leveling to work  at it’s best. But what happens when you stress test a disk and you place about  3 times the size of the drive worth of data in a couple of hours while the drive is half full. This algorithm will kick in and start moving data around even when the drive is not idle and you will see a decrease in performance until the wear level is stabilized.

I discovered this technology while running a bunch of tests using SQLIO based on Jonathan Kehayias (Blog|Twitter) article about Parsing SQLIO Output to Excel Charts using Regex in PowerShell with a 6GB file and I got some good results. I started using the drive and installed a few Virtual Machines until the drive was half full. I kept running SQLIO and Crystal Disk Mark test sadly to see that the performance getting worse.

Essentially Static Data Rotation is a feature to make sure that you can use the drive for the Mean time between failures (MTTF) prescribed by the manufacturer and prevents premature wear on the cells that store hot data. Last but not least, a common question that comes up with this topic, “Is this algorithm (Static Data Rotation) a common feature across all SSD manufacturers?”

The answer is no, this is one of the strong selling points for the newer SSD controllers that implement Duraclass, which is trademarked to Sandforce. I would also like to point out that newer Sandforce controllers (which btw many manufacturers use this controller) have this technology as well but older ones do not have it. It would be nice to think that any Enterprise class controller would have its own implementation of  a Static Data Rotation algorithm, but sadly that is not always the case. As long as you get a Sandforce based or OCZ Octane or Vertex 2 and up SSD you are ok.

Tags: , , , ,

Comments are closed.

Copy Protected by Chetan's WP-Copyprotect.