NVMe Storage
Non-Volatile Memory Express (NVMe®) refers to a set of technologies and protocols that significantly speed up how data is stored, transmitted, and retrieved. NVMe® storage has taken over the conventional spinning-disk hard drive as the preferred storage format for enterprises.
Performance-hungry operations require fast data transfer, and spinning-disk hard drives don’t match NVMe® performance. Not surprisingly, they may soon become obsolete just like compact discs, tape cassettes, and vinyl.
NVMe® developers, including Intel, Dell, SanDisk, and Samsung, designed this storage format to let SSDs function as the memory they are, not the hard drives they emulate. While memory speeds and processes have evolved, interfaces and drives have been slower to keep up.
Hence, NVMe® storage was created to bridge the gap between slow storage and fast memory.
Overview
What is NVMe® storage?
Benefits of NVMe®
NVMe® Performance
What Benefits Does NVMe® Bring to Your Business?
NVMe® Storage Use cases
NVMe® Shared Storage
NVMe® Over Fabric (NVMe-oF™)
Why NVMe®/TCP is the better choice for your Data Center
What is NVMe storage?
It’s a transport and storage access protocol developed for next-generation solid-state drives (SSDs). NVMe® performance is known for the fastest response times and highest throughput across different enterprise workloads.
Today, faster response times for consumer apps and businesses can make a huge difference. Even as applications become more resource-dependent and complex, consumers still expect faster response times.
To deliver faster application performance and a better user experience, storage architects developed NVMe storage. It accesses flash storage with the help of the PCI Express (PCIe bus, which has thousands of command queues that run in parallel.
This makes NVMe faster than conventional all-flash architectures and hard disks, which have only a single command queue.
Benefits of NVMe
NVMe storage is gaining broad adoption in enterprise data centers because of the performance and efficiency it delivers. Unlike mechanical hard disk drives, NVMe leverages today’s multicore CPUs and not just solid-state storage. NVMe was developed from the ground up specifically for SSDs to improve throughput and IOPS, reduce latency and increase speeds.
It can also efficiently manipulate and parse data via streamlined command sets. This gives faster access to data and lower latency than legacy SATA and SAS protocols.
A great benefit of NVMe performance is that it not only accelerates existing applications but also enables new applications that necessitate high performance. Besides providing faster access to data (about 100x faster than a hard disk drive), NVMe also consumes less power.
The third benefit is associated with IOPS (input/output per second). NVMe increases IOPS – a great advantage over traditional hard disk drives. Because of NVMe’s native parallelism and higher bandwidth, multiple cores can perform read and write operations simultaneously.
Since NVMe® storage has no moving parts, the probability of a disastrous drive failure is quite low. Also, with no moving parts, it generates less heat, which means lower cooling costs.
NVMe Performance
In this section, let’s dive deeper into NVMe’s architecture to understand why it delivers high throughput, fast response times, and suits all kinds of enterprise workloads. As mentioned before, NVMe supports multiple I/O queues.
It can have up to 64K I/O queues, each with 64K entries. In contrast, legacy SATA and SAS support a single queue with 254 and 32 entries, respectively. NVMe-based drives can theoretically reach throughputs up to 32 GBps, assuming they use PCIe 4.0 and 16 PCIe lanes.
Moreover, NVMe can create queues based on the expected workload and system configuration. The maximum number of queues it can support depends upon its NVMe controller. Based on workload requirements, it can even change their priority.
What’s more, NVMe reduces CPU overhead during data transfer and supports scatter/gather I/O. This architecture allows applications to complete multiple I/O requests at the same time.
No wonder NVMe has found applications in edge computing ecosystems, cloud storage, data-heavy enterprise environments, and big data.
But what value does exceptional NVMe® performance bring to enterprises?
Let’s explore this in the subsequent section.
What Benefits Does NVMe Bring to Your Business?
NVMe is designed for non-volatile and high-performance storage media to meet the ever-increasing demands of big data. It enables businesses to access, manage, and store data efficiently while improving latency, reliability, and performance.
Today, most enterprise systems are data-starved. Newer applications have driven an exponential rise in demand and data volume. This, in turn, can bog down even high-performance SSDs, causing poor quality of service, higher latency, and lower performance in the face of Fast Data challenges.
NVMe storage eliminates bottlenecks in both edge computing architectures and conventional scale-up database applications to meet new data demands. It stands out in compute-intensive enterprise and edge data ecosystems.
Data-driven businesses need to think about how to access, preserve, and transform data to improve their profitability.
1. Easy to Enable and Deploy Virtual Machines
Modern virtual machines (VMs) need fast response times. With NVMe-oF and NVMe arrays, businesses can improve VM performance. They can also provision more VMs and reduce the time needed for VM snapshots.
2. Be Future-Ready
Another major advantage of NVMe for businesses is that it helps future-proof their data center. They can leverage more composable, flexible infrastructure.
Businesses can also use it for other non-volatile storage solutions, such as MRAM (Magnetoresistive Random Access Memory) or PCM (Phase Change Memory), which are next-gen storage solutions in the evolutionary chain.
Most businesses recognize that data is an asset, but they aren’t aware of the importance of updating or upgrading their legacy storage systems, services, or applications.
To adopt next-generation technologies, businesses have to move at a breakneck pace to modernize their data centers.
Now, it’s time to cover NVMe storage use cases.
NVMe Storage Use Cases
Below are the popular use cases of NVMe storage:
1. Storage for Relational and Modern databases (MySQL, MongoDB, Cassandra, Kafka)
Companies that utilize relational and modern databases leverage NVMe performance to reduce the number of licenses (databases) and physical servers required. In addition, NVMe® accelerates these cloud-native applications.
2. Containerized Applications
NVMe storage delivers high performance and low latency for containerized and cloud-native applications, lowering TCO.
3. High-performance Computing in Financial Services
One of NVMe’s most important use cases is high-performance computing in financial services. Examples include real-time data analytics, high-speed data processing, and financial services companies building infrastructure as a service (IaaS) or storage-as-a-service (STaaS) where latency can be an issue.
NVMe storage can greatly accelerate data analytics.
NVMe Shared Storage
Shared storage over a SAN (storage area network) has many benefits, including:
– Efficient use of storage
– Enabling advanced cluster applications
– No single point of failure
– Ease of management
– Offering enterprise-ready storage services like compression, encryption, deduplication, etc.
Despite these benefits, many have predicted the demise of SAN due to high latency. NVMe® storage enables lower latency over SAN, along with improved I/O metrics. NVMe shared storage thus improves the overall performance.
NVMe Over Fabric (NVMe-oF)
NVMe-oF, or NVMe over Fabrics, is an end-to-end standard that enables efficient data transport between servers and storage systems.
NVMe-oF extends NVMe performance benefits across the popular storage networking fabrics, namely:
– NVMe over Fiber
– NVMe over Ethernet
– NVMe over InfiniBand
– NVMe over TCP
The infrastructure in many enterprises is built around Fibre Channels, thanks to its reliability and performance. NVMe-oF ensures efficient CPU usage and faster connectivity between applications, servers, and storage.
Data centers that rely on direct-attached storage (DAS) can consolidate further. With broader bandwidth and faster network speeds, apps can run on shared network storage instead.
Therefore, NVMe provides network consolidation and additional data centers as DAS and SAN leverage a single shared storage infrastructure. NVMe-oF thus makes the storage architecture more parallel while eliminating bottlenecks in modern applications.
Why NVMe/TCP is the better choice for your Data Center
NVMe has transformed the storage industry since its emergence as the state-of-the-art protocol for high-performance SSDs.
Initially designed for high-performance direct-attached PCIe SSDs, NVMe® was later expanded with NVMe® over Fabrics (NVMe-oF™) to support a rack-scale remote pool of SSDs. The industry has widely accepted that this new NVMe-oF model will replace the Internet Small Computer Systems Interface (iSCSI) protocol as the communication standard between compute servers and storage servers and become the default protocol for disaggregated storage.
Yet, the initial deployment options with NVMe-oF™ were limited to Fibre Channel and Remote Direct Memory Access (RDMA) fabrics.
What if we could offer a new, more powerful technology that provides the speed and performance of NVMe-oF without the prohibitive deployment costs and complexity?
NVMe over TCP (NVMe®/TCP) extends NVMe® across the entire data center using a simple and efficient TCP/IP fabric. It is a better technology for existing data centers and the benefits it offers. These advantages include:
– Enabling disaggregation across a data center’s availability zones and regions.
– Leveraging ubiquitous TCP transport with a low-latency, highly parallel NVMe stack.
– No changes are required on the application server side.
– A high-performance NVMe-oF solution providing comparable performance and latency to Direct Attached SSDs (DAS)
– An efficient and streamlined block storage network software stack optimized for NVMe.
– Providing parallel access to storage optimized for today’s multi-core application/client servers.
– Standard NVMe-oF control path operations
In Summary
NVMe® storage has many advantages over traditional hard disk drives. Its benefits include lower latency, faster response times, low power consumption, improved performance, faster data transfer, and fewer bottlenecks.
Unlike other NVMe-oF approaches, NVMe/TCP separates storage and compute without touching network infrastructure or data center clients, making it a better choice for modern Kubernetes and cloud-native applications, relational databases such as MySQL, modern NoSQL databases such as MongoDB and Apache Cassandra, and the event streaming platform Apache Kafka.
Additional Resources
IDC Innovators in NVMe®/TCP
Cloud-Native Storage for Kubernetes
Disaggregated Storage
Ceph Storage
Persistent Storage
Kubernetes Storage
Edge Cloud Storage
NVMe® over TCP
NVMe/TCP on Dell PowerEdge
NVMe/TCP for VMWare