[ NOTE: machine translation with the help of DeepL translator without additional proofreading and spell checking ]
In addition to the newcomer FlashArray //C, an innovation for FlashArray //X was also presented at Pure Storage Accelerate 2019. To make //X even more performant, another storage technology was developed.
Pure Storage FlashArray //X DirectMemory.
DirectMemory is based on Intel Optane technology. Combined with Purity, Intel Optane (3D XPoint) Storage Class Memory (SCM) provides a significant performance increase, which is especially noticeable in high-performance applications. The requirements of modern databases and analytics tools are constantly increasing and demand more and more performance.
A DirectMemory module (DMM) is 750GB in size and serves as a read cache. It is important to know that this is not tiering!
Basically, caching works in such a way that the part of the data of an application that is actively accessed is the so-called "working set". This data is kept in the so-called cache if it is used immediately after writing or repeatedly during intensive reading workloads.
However, the use of caching technology has historically come with some tradeoffs. With traditional caching, application data/IOs could be accelerated, but the performance delivered and its information/data were not consistent. Data that is not "cached" must be read from persistent memory when accessed, resulting in increased response time.
Pure Storage DirectMemory Deep Dive
I assume that with Pure Storage DirectFlash does not compress the data in the DirectMemory modules, so some read latency can be avoided. I assume this because the data is not persistent and the Optane latency is very low. The values are not possible with decompression during reading otherwise in my eyes. There is no redudancy for the DirectMemory modules. If a drive fails, the available cache is simply reduced. This design choice (reminiscent of a RAID0) also benefits performance, since no parity calculations are required (doesn't mean that there is then a loss of data, since the data is still on DFM!). Writes still go directly to NVRAM, so DirectMemory only improves the performance of read accesses: there is no cache effect on write latency, bandwidth, or increase in system memory capacity. DirectMemory uses a simple "least recently used" (LRU) algorithm, this works on the principle: the entry that has not been accessed for the longest time is displaced.
Other algorithms used by competitors are: "first in first out" (FIFO), "least frequently used" (LFU), random and CLOCK.
An Optane SSD has a 10 μs read latency.
An NVMe SSD has a read latency of 100 to 110 μs.
Pure's DirectFlash module has a latency of about 50 μs.
Pure's DirectFlash Fabric - end-to-end NVMe - has a latency of 200-300 μs.
The DMM reduces the latency of the DirectFlash module with a read cache hit of 10 μs - instead of the 50 μs to get the data from DirectFlash, saving up to 40 μs in read access.
Pure Storage's DirectMemory Modules (DMM) plug directly into the FlashArray//X70 and //X90 systems, accelerating OLTP and OLAP operations. All this - as usual with all Pure updates/upgrades - is non-disruptive (NDU), so companies can continue to work without interruption and downtime.
The OLAP approach is contrasted with the traditional, operational OLTP approach ("Online Transaction Processing") as expressed in the relational database concept. Both approaches differ significantly: In OLTP, database processes are constantly repeated, structured and consist of isolated, atomic transactions. These work with the most current data and usually only access a few data records via primary keys for reading and writing. OLAP, on the other hand, focuses on historical, aggregated information. The analyses consist of complex queries, and access is usually read-only.
Source: "BI Methods (Part 1): Ad-hoc Analyses with OLAP" from 16.04.2008 Klaus Manhart - Tecchannel
Source: "OLTP vs. OLAP" by DW4U - Datawarehouse4u.info
The modules are also available again in the form of packs:
3 TB (4x750GB) and
6 TB (8x750GB)
DirectMemory modules are supported from Purity 5.3.1! So it is mandatory to upgrade to the latest operating system.
It is important to know that the 6TB pack is only intended for the //X90. Externally (after installation in the chassis), DMMs can only be recognized by the silver-colored unlocking of the modules.
As mentioned above, databases and enterprise applications that are sensitive to latency and speed become noticeably faster. Using Pure1 meta-analysis, it was found that: 80% of systems achieve 20% lower read latency and 40% of systems achieve between 30-50%.
"First, it makes everything faster" ... "Second, it saves on operating costs. For example, SAP HANA can run in host memory or on the DirectMemory modules. With DirectMemory modules, users get 90% of the performance of host storage, but at a 65% lower price." - Matt Kixmoeller, VP, Product & Solution Marketing Pure Storage
DirectMemory and SAP HANA
SAP HANA can become an unplanned costly database, especially when large data growth occurs. To ensure that the cost of running the in-memory database does not "explode", a method/strategy for offloading data to external/persistent storage media has been created. The method is based on different layers, which categorizes data according to the regularity of data accesses, capacity and performance requirements.
The first layer in the model is so-called "hot data" hot data that is accessed frequently and must meet the highest performance requirements. The second tier is for "worm data" warm data, data that is accessed infrequently and has lower performance requirements than hot data, but must reside as the core of the database.
The third and final tier is for "cold data" cold data, data that is accessed sporadically with low performance requirements.
Implementing such a data strategy for SAP HANA can help reduce the total cost of ownership (TCO) while ensuring an organization's long-term data growth at the lowest possible cost.
Hot data for SAP HANA is classically located in server memory/RAM. Since this is usually where the data growth always occurs, more physical memory is required, and this in turn is very expensive, resulting in higher database costs. However, in the event that some of the data in the hot tier is not used frequently, this data could be saved for capacity/cost savings by moving the tier to a lower tier.
To prove the benefits of DirectMemory in SAP HANA environments, Pure Storage was one of the first SAP partners to perform detailed testing and analysis on the performance of Online Analytical Processing (OLAP) operations:
It was tested
- a 2TB database with all tables in memory.
- a 2TB database with 75% of the tables specified for the use of NSE *, with FlashArray///X and Direct Memory Cache.
- a 2TB database with 75% of the tables specified for use with NSE *, with FlashArray///X.
- a 2TB database with 75% of the tables specified for use with NSE *, with direct attached storage.
* Native Storage Extension (NSE): A native and integrated warm data store that allows less frequently accessed data to be managed by accessing it from disk, as opposed to in-memory.
The results made it clear:
The best performance is achieved with in-memory data. This is also the variant with the highest TCO.
FlashArray///X with DirectMemory Cache has only a small performance drop (10%) compared to in-memory data, but saves up to 60% of the costs.
FlashArray///X is only 15-20% slower than in-memory data, but offers up to 75% cost savings.
Direct attached storage is 40% slower.
Each environment has different requirements. However, it is clear that FlashArray with DirectMemory cache offers a significant advantage for SAP HANA environments.
The above test values are not verified by me, but they can be read in detail in the official Pure Storage blog post about SAP Hana with DirectMemory Modules.
The question that has to be asked when deciding to use a cache is whether the performance increases and the resulting costs for the acquisition of DirectMemory and the TCO savings are in proportion. It's no secret that Optane caching is also supported by HPE's Primera system. Dell EMC's latest PowerMax also uses Optane. NetApp's Max Data system also supports Optane DIMMs.
There is not yet an official guide to sizing DMMs available for Pure Storage partners/distributors. A full sizer is expected in the fourth quarter (Q4) 2019 as an internal (Pure) tool and will then also be available in Pure1 Planning (Workload/Hardware Simulation) in a timely manner.
On my question: "What happens with the remaining DataPacks slots when using DirectMemory?" they could not (or would not) answer it. Until GA of the DMM, a chassis (max. 20 DFMs) always consisted of DataPacks of 10 DFMs. Now with DirectMemory only 4/8 slots are occupied per DataPack slot. Conversely, this means that 2/6 slots are "given away", which I personally think is a waste. I am optimistic and think that a solution will be found for this as well.
In addition, it occurred to me: what if the implementation of SCM/DMM is simultaneously used as a test for a future all-SCM FlashArray?! ツ
It remains exciting!
Pure Storage FlashArray //X DirectMemory has been GA since Accelerate and is available for order now.
More info - Links
All officially published setting options in the GUI but also CLI can be read via the "on-board" user guides of the Pure Storage systems.
Click on "Help" in the Purity main menu.
The User Guide is structured like the main menu and can be opened downwards. A search function is also integrated - within here you can also search for keywords.
WEB: Pure Storage (Pure1) support portal - Ticket system and support *(requires registered FlashSystems)
PHONE: Pure Storage phone support: GER - (+49) (0)800 7239467; INTERNATIONAL - (+1) 650 7294088