Persistent Memory File System with Compacted Indirect Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage file systems are not optimized to leverage faster and lower-latency byte-addressable persistent memory, as they are tailored for block-addressable storage media, leading to inefficiencies in data access and management.

Innovation Solution

A file system format is implemented that utilizes data structures and commands tailored for byte-addressable persistent memory, enabling snapshot capture and tiering between block-addressable and byte-addressable storage, with features like per-page structures and duplicate superblocks for redundancy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a storage file system tailored for block-addressable storage media is used, then compatibility with traditional storage devices is maintained, but the ability to leverage faster byte-addressable persistent memory is lost

Engineering Contradiction:
Improvedata access speedVSAvoidstorage media compatibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent introduces a file system specifically designed as an intermediary layer between byte-addressable persistent memory and client devices. This file system acts as a mediator that translates traditional block-based file operations into byte-addressable memory operations, enabling fast persistent memory access while maintaining compatibility with existing storage interfaces and applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the fundamental addressing parameter from block-based to byte-addressable, allowing the system to exploit the full performance potential of persistent memory. By modifying how data is addressed and accessed at the file system level, the system achieves faster data retrieval while maintaining the abstraction needed for broad storage media compatibility.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If block-based data structures are used in the file system, then traditional storage management is simplified, but efficient utilization of byte-addressable persistent memory characteristics is prevented

Engineering Contradiction:
Improvedata storage and retrieval efficiencyVSAvoidfile system data structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the persistent memory into page-based units with dedicated metadata structures for each page. This segmentation allows the file system to manage byte-addressable memory efficiently by organizing data into manageable pages with associated metadata, improving productivity while controlling complexity through structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from traditional block-based one-dimensional storage management to a multi-dimensional approach using page-based structures with metadata layers. This dimensional change enables efficient byte-addressable access patterns while organizing data in a structured manner that balances productivity and complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If redundancy mechanisms like duplicate superblocks are implemented, then data integrity and availability are improved, but storage space is consumed

Engineering Contradiction:
Improvedata integrityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements copying of critical metadata structures (superblocks) to multiple locations within the persistent memory file system. This copying mechanism ensures data integrity and availability by providing redundant copies of essential file system information, allowing recovery from corruption or loss while consuming minimal additional storage space compared to the total capacity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12119836B2File system format for persistent memory
Publication Date: 2024.10.15 NETAPP INC
  • US12119836B2 patent drawing
  • US12119836B2 patent drawing
  • US12119836B2 patent drawing

AI summary

Techniques are provided for compacting indirect blocks. For example, an object is represented as a structure including data blocks within which data of the object is stored and indirect blocks including block numbers of where the data blocks are located in storage. Block numbers within a set of indirect blocks are compacted into a compacted indirect block including a base block number, a count of additional block numbers after the base block number in the compacted indirect block, and a pattern of the block numbers in the compacted indirect block. The compacted indirect block is stored into memory for processing access operations to the object. Storing compacted indirect blocks into memory allows for more block numbers to be stored within memory.