An abbreviated selection of some of the interesting recent activity:
- Robin Harris digs into some of the details about block-level deduplication on SSD devices. Specifically, there is a discussion about the tradeoffs that storage vendors are making: "minimizing capacity use and maximizing data availability are conflicting goals", as Harris observes. The concern is that, if a storage device "de-duplicates" two blocks which the higher-level file system intentionally wrote redundantly, the underlying storage device may be undoing the file system's attempt to avoid a single point of failure. As David Rosenthal puts it:
File systems write the same metadata to multiple logical blocks as a way of avoiding a single block failure causing massive, or in some cases total, loss of user data. An example is the superblock in the UFS (Unix file system). Suppose you have one of these SSDs with a UFS on it. Each of the multiple alternate logical locations for the superblock will be mapped to the same underlying physical block. If any of the bits in this physical block goes bad, the same bit will go bad in every alternate logical superblock.
As several of the comments to Harris's article note, it's not clear that this interaction between the filesystem and the underlying storage system is unique to SSD; modern storage vendors have a variety of complex layers of logic which may or may not interact cleanly with the file system's algorithms. Meanwhile, Harris gets in touch with one of the storage vendors to discuss the details of error detection and error correction on SSD storage devices, and posts some interesting responses. One thing that is clear is that modern storage devices have become fantastically complex:
Not only do SandForce SSD Processors employ ECC protection enabling an UBER (Uncorrectable Bit Error Rate) of greater than 10^-17, if the ECC engine is unable to correct the bit error RAISE will step in to correct a complete failure of an entire sector, page, or block.
- On his "Practical Cloud Computing" blog, Siddharth Anand of Netflix has collected a survey of recent information about work on enhancing the Cassandra system for the new storage hardware. In particular, a UK company named Acunu has been hard at work studying Cassandra's system-level behaviors, and, together with researches from Google, Acunu are proposing a new data structure they call the Stratified B-tree.
- On the High Scalability blog, Todd Hoff highlights a recent presentation from the O'Reilly Velocity Conference by Artur Bergman of Wikia, talking about their use of a high-end all-SSD storage system. Jeff Darcy responds with the position that RAM, SSD, and disk should be thought of as a storage hierarchy, and arranging the levels of storage carefully is likely to lead to better efficiency.
- Over at AnandTech, the team dig into the details of Sony's latest Vaio with its screaming 512 GB SSD drives.
The one thing that can't be missed is that the new SSD devices are fast, Fast, FAST! You don't have to look very hard to find people relating their amazing experiences with SSD storage:
- Jeff Atwood says "SSDs are so scorching hot that I'm willing to put up with their craziness"
- Robin Harris says "faster and cheaper SSDs are rewiring data center architectures"
- Paul Randal reports that in his benchmarking, "the new v2.2 Fusion-io driver gives a 24% performance boost over the old v1.2 driver"
Here at my day job, our performance lab team recently did an in-depth study of modern server gear and concluded that SSD usage can bring dramatic performance improvements at a surprisingly low price point.
The bottom line is that if you haven't been paying much attention to SSD technology, this is the year when you need to start doing so.