In the latest installment of CBR’s Tech Express Series, Tom Leyden gives you everything you need to know about NVMe.
EB: What is NVMe?
TL: NVMe or NVM Express, short for Non-Volatile Memory Host Controller Interface Specification, is a new high-speed storage protocol. Non-Volatile Memory (NVM) refers to Solid State Drives (SSDs) and flash storage. The NVMe protocol was designed from the ground up to enhance the low latency and high performance of the NVM storage media.
That enhancement is necessary because, while the shift from mechanical Hard Disk Drives (HDDs) to silicon SSDs and flash has brought about major performance, capacity and reliability improvements, there have been issues too. The storage media suffers from performance bottlenecks caused by the technology connecting the storage to the rest of the IT system. Adapters and protocols originally designed for slower hard drives just haven’t been able to keep up. This is where NVMe comes in. Unlike legacy protocols, NVMe has been created to capitalise on the performance benefits of flash and SSDs. And this opens up a whole range of opportunities from massive web applications and supercomputing applications to powerful data analytics environments such as industrial IoT.
EB: How does it work?
TL: NVMe was developed for SSDs and flash memory to enhance the internal communication between the IT environment and storage solutions. Flash memory is already fast – NVMe makes it even faster – enabling communication with the storage device across thousands of parallel command queues.
Just to give you an idea of scale, HDDs typically employ a single queue with 32 commands, while NVMe boasts 64,000 queues and 64,000 commands per queue. NVMe then streamlines these commands so that the flash technology only sees those that it requires to store and retrieve the data. By making the command structure that much more efficient, NVMe reduces CPU cycles, reduces latency and increases IOPS. It’s not hard to see how it speeds up performance.
EB: How is this technology impacting the flash storage market?
TL: A paradigm shift is clearly in the works. Many large enterprises and service providers are looking to replace their traditional flash arrays with NVMe-based flash over the next couple of years and in turn, it is likely that we will see traditional flash replace most HDDs.
I’m bound to say that as an NVMe vendor – but it’s not just my opinion. ESG’s 2017 European Storage Trends Survey of over 400 European IT professionals found that 10 percent of the organisations asked said they are already using NVMe, 26 percent are planning to deploy it, and another 34 percent say they are interested in deploying NVMe-based technologies. And that trend is set to rise: a recent report by G2M Research predicts the NVMe market to reach $57 billion by 2020 with a 95 percent CAGR.
EB: What would be the main challenges for any business looking to adopt NVMe?
TL: To enjoy the full performance benefits of NVMe flash, storage needs to be utilised by the application locally, in-server. This often results in wasted capacity and performance as without an additional management layer it is virtually impossible to orchestrate beyond these boundaries. To address this and maximise ROI on an NVMe investment, businesses, particularly those with heavy workloads, will require a software management layer that can level out NVMe utilisation across the entire IT infrastructure.
EB: What benefits does the protocol offer businesses?
TL: Business is changing: we’re demanding more from our applications and our IT infrastructure. Think about big data analytics programmes or high-performance computing research, for example. High performance is essential, slow running apps impact on the credibility of results.
NVMe removes bottlenecks and can handle four times more parallel IO commands than SAS/SATA SSD controllers, delivering an extraordinary performance boost and unleashing the capabilities of the most demanding business applications. Plus, fewer NVMe drives are required to achieve the concurrent workload performance levels which makes it a lot easier to maintain a balanced CPU/IO ratio.