Persistent Memory File Format for Byte-Addressable Tiering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage file systems are unable to adequately utilize faster types of storage, such as persistent memory, due to their block-addressable design, which is incompatible with the byte-addressable nature of persistent memory.

Innovation Solution

A file system format is implemented that includes data structures and functionality tailored for byte-addressable persistent memory, allowing for efficient storage and access of client data, including snapshot capture and tiering between block-addressable and byte-addressable storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a storage file system is designed for block-addressable storage media, then it can effectively manage data on hard drives and solid state drives, but it cannot adequately utilize faster byte-addressable persistent memory storage

Engineering Contradiction:
Improvestorage access speedVSAvoidcompatibility with different storage types
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent segments the storage management system into two distinct file system components: a block-addressable file system for traditional storage media and a byte-addressable file system for persistent memory. This segmentation allows each file system to be optimized for its specific storage type while maintaining overall system versatility. The byte-addressable file system uses page-based data structures and memory-mapped I/O operations to efficiently access persistent memory, thereby resolving the contradiction between speed optimization for specific storage types and adaptability across different storage media.

Inventive Principle:
Principle #1Segmentation

2Productivity

If the storage file system uses block-based data structures, then it is optimized for disk drives and solid state drives, but it is incompatible with byte-addressable persistent memory access characteristics

Engineering Contradiction:
Improvestorage efficiencyVSAvoidfile system architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a file system translation layer that acts as an intermediary between the block-based storage subsystem and the byte-addressable persistent memory. This translation layer converts block-based I/O operations into page-based memory operations, enabling efficient persistent memory access while maintaining compatibility with existing block-based storage interfaces. The intermediary layer manages page tables, handles memory-mapped I/O, and coordinates data movement between different storage hierarchies, thereby resolving the incompatibility between block-based data structures and byte-addressable memory access.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the storage system is optimized for block-addressable media, then it achieves reliable data management on slower storage, but it cannot leverage the lower latency and faster access speeds of persistent memory

Engineering Contradiction:
Improvedata management reliabilityVSAvoidstorage access latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a dynamic storage management system that can adaptively route I/O operations to the most appropriate storage medium based on data access patterns, performance requirements, and media characteristics. The system dynamically adjusts between block-based and byte-addressable access modes, and can migrate data between persistent memory and block storage as needed. This dynamic approach maintains data management reliability by using proven block-based protocols when needed while leveraging fast persistent memory access for time-critical operations, thereby resolving the contradiction between reliability and access latency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250038756A1File system format for persistent memory
Publication Date: 2025.01.30 NETAPP INC
  • US20250038756A1 patent drawing
  • US20250038756A1 patent drawing
  • US20250038756A1 patent drawing

AI summary

Techniques are provided for implementing a file system format for persistent memory. A node, comprising persistent memory, receives an operation comprising a file identifier and file system instance information. A list of file system info objects are evaluated to identify a file system info object matching the file system instance information. An inofile, identified by the file system info object as being associated with inodes of files within an instance of the file system targeted by the operation, is traversed to identify an inode matching the file identifier. If the inode comprises an indicator that the file is tiered into the persistent memory, then the inode it utilized to facilitate execution of the operation upon the persistent memory. Otherwise, the operation is routed to a storage file system tier for execution by a storage file system upon storage associated with the node.