Cut SQL Server Latency in Half with Memory-Driven Flash Storage

Memory-Driven Flash is a new class of enterprise storage that combines the benefits of memory-speed storage media with the traditional economics and manageability of a hybrid flash architecture.

HPE Memory-Driven Flash is being used to enable business databases and applications to achieve new levels of performance while adding virtually no additional administration. Specific studies are showing Microsoft SQL Server database reads are up to 50% faster, which in turn speeds transactions and improves end-user experience.

This architectural approach uses new Storage Class Memory (SCM) as a caching tier to store frequently used blocks of data and enable access to them at near Memory speed, rather than requiring the system to read the data from the storage media tier.  HPE’s productization has involved tiering back-end storage media with a layer of Non-Volatile Memory Express (NVMe) solid state drives (SSD), which adds persistent, near-memory performance on top of all-flash SSD. SCM represents the industry’s latest innovation: a low-latency persistent storage media that bridges the performance gap between DRAM system memory and NAND SSD storage. The SCM price/performance level is 10X beneath DRAM and as much as 100X above NAND.

Cache in on the MDF opportunity

In some ways MDF is the modern day evolution of traditional hybrid or ‘adaptive flash’ tiering.  Whereas in the past the tiering was between SSDs and spinning disk hard drives, this new instantiation is SCM over SSD.  And just as with the previous generation of systems, the unique value of a manufacturer’s product was both superior mechanical design, but also in the intelligent algorithms that identified the ‘hot’ frequently accessed data to cache and optimally managed the precious cache capacity. The image below illustrates how with MDF, the SCM layer can serve up Reads directly from this higher-performance media, rather than accessing SSD. The higher the SCM hit rate, the lower the latency.  This approach primarily serves to reduce latency rather than increase system IOPS or some other measure of performance.

NVMe SCM as a cache to speed access to random read data.

NVMe is an open logical device interface protocol for accessing nonvolatile storage over the PCIe interface. The low latency NVMe protocol bypasses and eliminates the overhead of other standard storage protocols such as SAS or SCSI. The NVMe SCM device used in HPE 3PAR storage systems has the NVMe PCIe controller interface as part of the unit, so the NVMe SCM is attached directly to the PCIe bus, and uses the NVMe protocol for faster communication with the HPE 3PAR controller.

Cold, hard cache

The math behind the MDF caching is to maintain data on a higher-performing tier of Storage Class Memory that can deliver Reads at an average of just 10 microseconds. This saves considerable time, in preventing the need to access a data tier of solid state storage that may deliver Reads at 90 microseconds (and compare that to a hard drive tier that would take 10 thousand microseconds to perform that same Read operation).

The results of MDF can be seen both from the perspective of the array itself or the host system accessing the data. In either case, when the Storage Class Memory feature is engaged and populated with hot data, the benefit of reading data from the cache has been shown to reduce system latency by 50% on average.

The chart below shows the results achieved in the lab with Microsoft SQL Server 2017 running on a ProLiant Gen10 server and an HPE 3PAR 9450 array with Storage Class Memory.

Perfmon Avg. Disk sec/Read response time for the SQL Server database disk using Memory-Driven Flash

From the host perspective, in this test there was shown to be a 59% decrease in latency (sec/Read) with Memory-Driven Flash compared to when the NVMe SCM is disabled.  Decreased latency translates to faster database query responses.

From the admin and user perspective, Memory-Driven Flash is simple to use.  It’s an embedded component of the system – another storage device that serves as a selectable level of cache in the storage system.

How to Cache in on MDF

Memory-Driven Flash will provide a substantial reduction in I/O response times for small block OLTP type read intensive workloads. However, it will not be beneficial for write intensive or large sequential read or write workloads. Here are some specific guidelines to keep in mind for MDF:

  • Memory-Driven Flash does not requires any special SQL Server configuration
  • Memory-Driven Flash works with one or more groups of volumes – for best results only enable volume sets that need the boost in performance
  • Memory-Driven Flash benefits random read data sizes of 4 KiB to 64 KiB, such as read intensive OLTP type workloads – SQL Server workloads have pre-fetch I/O sizes that are typically 8 KB
  • Memory-Driven Flash does not benefit write I/O response times
  • Memory-Driven Flash can benefit multiple applications and virtual volume sets concurrently

Get the details on MDF

A new technical whitepaper was just published that details the testing performed on SQL Server running on HPE MDF.  <Here’s a link to the paper>

Track the latest news and happenings with HPE Microsoft Storage solutions on twitter at @mhardi01.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s