By: Bill Jones, Senior Solution Architect and Hallie Barnes, Marketing Coordinator
Flash storage has changed significantly in the past few years. Today, I’m sitting down with Bill Jones, a Senior Solution Architect here at Dasher Technologies, to find out how flash storage has transformed the storage industry.
Q: Bill, how long have you been working with enterprise storage?
A: About 17 years. In 1999, I worked at a company that had several “whitebox” file servers. Since we couldn’t confirm that these boxes were Y2K compliant, we invested in an enterprise NAS solution and migrated our data over. A few years later, we implemented SAN storage for a new SQL cluster, and I got to learn the intricacies of fibre-channel.
Q: What do you see as the biggest change in flash storage today?
A: The biggest change I see in flash storage is that it is now affordable for the small and medium business. There are new options hitting the market that are innovative and exciting and are priced for the large enterprise. However, the innovative and exciting changes from three years ago are now at a price point were small and medium businesses can afford them. As a result, we are seeing hybrid storage and all-flash storage in more and more client environments.
Q: Are there other changes in flash storage you can share?
A: Five years ago, flash had a lot of limitations. It was really, really good for small, random, read I/O, but its performance for write operations weren’t much better than 15K RPM mechanical disks. On top of that, wear-leveling was a major concern. Flash media can only be overwritten a limited number of times, and an “erase block” has to be used to perform overwrites — which slows down the performance.
Q: What is an “erase block”?
A: When data is read from or written to flash media, it is done in units called pages. The size of these pages varies depending on the make and model of the flash device. Pages are then grouped into erase blocks (or blocks). If a block has been freshly erased — like with a new, out-of-the-box device — pages can be written directly into the block. However, if a page needs to be overwritten, the entire block has to be erased first. This is why early flash storage devices performed poorly on write operations.
Q: How have these issues been addressed?
A: Several changes have happened in the industry that help mitigate these problems. The three main ones are improvements to how storage arrays intelligently use flash, under-provisioning of SSD devices, and improved storage protocol support. Many of today’s storage arrays are designed to treat flash storage differently than mechanical disk. This allows issues like erase blocks and wear-leveling to be largely mitigated. In fact, several manufacturers now warranty flash storage in their arrays based on years of age and not on number of overwrite operations. However, flash storage in servers is still usually warrantied based on age *and* number of overwrites.
Q: You mentioned under-provisioning. What is that?
A: Most flash storage devices today have more physical capacity than their advertised capacity. This allows the controller on the device itself to make choices about where new data is stored, reducing the impact of performance issues from the block erase process and from “garbage collection” — a maintenance process within the device itself. The amount of under-provisioning is what determines whether a flash device is read-optimized or write-optimized. Write-optimized devices are more heavily under-provisioned.
Q: What did you mean by “improved storage protocol support?”
A: By default, a storage controller doesn’t know what is stored on the device. For example, it doesn’t know whether the file system is NTFS or ext3. It doesn’t know when a write operation creates a new file or deletes an old file. To change that, the industry developed TRIM and UNMAP. TRIM is used in SATA environments, and UNMAP is used in SCSI. TRIM and UNMAP tell the storage controller when blocks are no longer used by the file system — for example, when a file is deleted. This allows both the the storage array and the flash device controllers to know which blocks are free to be overwritten. And that allows the controllers to make more intelligent decisions about where to write data. Learn more about TRIM here.
Q: What are the most important factors our clients look for when considering a flash storage array?
A: First and foremost, it is important to confirm how the array treats flash. It is critical to make sure that the controllers in the array treat flash differently than mechanical disk. If the array doesn’t make any distinction, you will still see some expected performance improvements when using the flash device, but you won’t get any additional improvements from the controller. Second, find out about the array’s capability for deduplication and/or compression. Without deduplication and compression, flash storage is usually more expensive on a $/GB basis than mechanical disk.
Q: What are some of the emerging trends in server-side flash storage that clients should keep an eye on?
A: Three things to watch are NVDIMMs, NVMe, and M.2 SSD. NVDIMM and NVMEM technologies are useful in environments where speed really, really counts. With SSDs, storage I/O has to pass through the server’s storage controller. With NVMe, the flash storage is directly connected to the server’s PCIe bus; and with NVDIMM, the flash storage is connected via the CPU’s memory controller to the server’s DIMM slots. Each type of storage uses a different mechanism to connect to the system and CPU and therefore offers different levels of performance based on the protocol and controller used to connect to it. The SAS or SATA controller is the slowest, the PCIe bus is faster, and the memory controller is the fastest of the three types of connection methodologies. With M.2, we are seeing an increase in the density of SSD devices within a server. The M.2 interface allows for micro-form-factor drives. Two (2) M.2 drives can fit into a 2.5” (i.e. small-form-factor) drive carrier.
For a deeper dive on this topic and a look at a few vendors like HPE with their StoreVirtual VSA, Datrium which has come to market with a server-side flash and external storage device combined solution, and Pernix Data with their software offering that accelerates virtual environments by leveraging server side flash. Take a look at the blog post I wrote in April 2016 for more info.
Q: Do you have any final thoughts about how flash is impacting SAN and NAS storage?
A: With enterprise SAN and NAS, software defined storage (SDS) is really gaining speed, and flash is playing an integral part in that process. Many SDS solutions store data as objects. Object storage is great for large sets of data, especially static data. However, object storage isn’t great for highly dynamic data, like users’ home directories. By using flash storage to front-end an object store, many of these issues can be mitigated. In addition, flash storage densities are dramatically increasing at a rapid pace. In March of this year, Samsung released 15TB SSDs for use in enterprise arrays. I expect we will start seeing these drives showing up in storage arrays by the end of 2016 or early in 2017. Finally, as mentioned in a previous blog post, the Pure Storage FlashBlade is a NAS and Object Storage game changer and of course it is built solely with flash!
If you are interested in chatting with Bill about all things storage, please reach out to Dasher at firstname.lastname@example.org.