This week I’ve been spending some time at Pure Accelerate, where I’ve been able to talk to the engineering and executive teams behind the new FlashBlade system.
In an attempt to embrace its start up cultural roots, Pure Storage developed FlashBlade as a startup inside the company. What that means is they hired new engineering staff to build a unique and separate product from the ground up. The new team members, to keep the development secretive, were not connected to other traditional Pure employees on Linkedin. While the development was largely separate, some of the FlashArray development team did help where it main sense. That collaboration resulted in a fork of the FlashArray management interface which is used by FlashBlade.
The result of the startup of a company is a new and a unique product. The first thing to understand about FlashBlade is what it is not. It is nor a replacement for a low latency and general purpose workload. The architecture of the system prohibits Flashblade from reaching the sub-millisecond latency of a traditional All Flash Array. In the current iteration of the product only supports file and Object access. In fact, it currently only supports NFS v3 for file access, since it is a prevalent and easy protocol. Adding SMB support is being worked on, but that adds a new layer of complexity where many products have stumbled. FlashBlade is, as a 1.0 product, missing some basic features like snapshots. The mentality was to start shipping product, rather than trying to make the product perfect.
FlashBlade is designed to be low-cost, flexible, and scalable. One way to ensure the costs were low, was to ensure that the actual NAND was the largest component costs of the array. Pure has built a custom hardware blade consisting of an CPUs with direct connect to NAND flash (8Tb or 52Tb) for storage and NV-RAM for power protection of writes. By eliminating the SSD, the design can be kept simplistic and adaptable. Connecting the blades together is a built in low-latency 40Gb Ethernet switched which provides blade-to-blade traffic as well as client connectivity. Currently, FlashBlade scales to 1.6PB in a 4u chassis. However, this should grow with the addition of an external network switch. The NAND gateway is a custom FPGA designed to allow abstraction of the particulars of the NAND. This means the NAND chips could change to a different vendor with a software change rather than an ASIC hardware redesign.
The Software behind FlashBlade, known as Elasticity, runs in a distributed fashion on the Intel CPUs on each blade. This software implements a common object storage and runs data services like encryption and erasure coding. This is also where client access protocols are implemented.
While the architecture of FlashBlade is certainly well thought out and designed, the currently shipping product is lacking many of the features of a NetApp Filer or EMC Isilon. Many people are speculating that this is designed to talk on the Filers and Isilon, but the product is still very new. I am looking forward to seeing where Pure takes FlashBlade and how customers in the field put the system to use.