Persistent Memory Storage Tier Architecture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage file systems are unable to adequately utilize faster storage media like persistent memory due to their design, which is tailored for slower storage types, resulting in inefficiencies in data access and storage.
Innovation Solution
An architecture is introduced that integrates persistent memory into the storage operating system, creating a persistent memory storage tier that intercepts operations and determines whether to retarget them to persistent memory or the traditional storage file system, based on policies and data access patterns.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a storage file system tailored for slower storage types is used, then compatibility with traditional storage devices is maintained, but the ability to utilize faster persistent memory storage is insufficient
Solution Approach 1:
The storage operating system is designed to perform multiple functions by managing both traditional storage devices and persistent memory through a unified interface. The storage file system layer can operate with different underlying storage types (HDD, SSD, persistent memory), making the system versatile and adaptable to various storage media while maintaining a consistent user experience and application interface.
Solution Approach 2:
The storage architecture is segmented into distinct layers: the storage operating system layer that handles high-speed persistent memory operations and the storage file system layer that provides traditional file access interfaces. This segmentation allows each layer to be optimized independently - the OS layer can leverage persistent memory's low-latency characteristics while the file system layer maintains compatibility with existing applications and storage protocols.
2Speed
If persistent memory is integrated into the storage operating system, then data access speed is improved, but system complexity increases
Solution Approach 1:
The storage operating system acts as an intermediary layer between the persistent memory hardware and the storage file system. It translates high-speed memory operations into file system-compatible interfaces, enabling fast data access from persistent memory while shielding upper layers from the complexity of memory management. This mediator approach allows the system to achieve high performance without requiring applications or file systems to be rewritten.
Solution Approach 2:
The storage operating system implements self-service mechanisms by automatically managing persistent memory allocation, caching strategies, and data persistence without requiring manual intervention. The system monitors storage patterns and dynamically optimizes data placement between persistent memory and traditional storage, reducing operational complexity while maintaining high data access speeds.
3Productivity
If a storage file system is used for managing persistent memory, then ease of operation is maintained, but storage efficiency and access performance are not optimized
Solution Approach 1:
The storage system implements dynamic management of persistent memory by continuously monitoring data access patterns and automatically adjusting caching strategies, data placement, and memory allocation. This dynamic adaptation allows the system to optimize storage efficiency for different workloads while maintaining a simple, static interface for users and applications. The system can transition between different operational modes based on real-time conditions without requiring user configuration.
Data Source
AI summary
Techniques are provided for implementing a persistent memory storage tier to manage persistent memory of a node. The persistent memory is managed by the persistent memory storage tier at a higher level within a storage operating system storage stack than a level at which a storage file system of the node is managed. The persistent memory storage tier intercepts an operation targeting the storage file system. The persistent memory storage tier retargets the operation from targeting the storage file system to targeting the persistent memory. The operation is transmitted to the persistent memory.


