Delayed Data Object Allocation in Non-Volatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional operating systems face inefficiencies in data storage management due to the need for volatile page caches and secondary storage, leading to storage fragmentation and resource waste, especially with the transition to direct access non-volatile memory.

Innovation Solution

Implementing an enhanced delayed allocation technique that uses both volatile and non-volatile memory, where data objects are initially stored in volatile memory and then allocated to non-volatile memory based on predicted size, reducing the need for page caches and minimizing storage fragmentation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional delayed allocation is used with volatile page cache, then data access performance is improved, but storage fragmentation increases and resource waste occurs

Engineering Contradiction:
Improvedata access performanceVSAvoidstorage fragmentation
Core Design Contradiction:
SpeedVSObject-generated harmful factors

Solution Approach 1:

The patent introduces non-volatile memory as an intermediary between volatile page cache and final storage. Data objects are first stored in volatile memory for fast access, then allocated to non-volatile memory for persistent storage, eliminating the need for traditional volatile page cache and reducing storage fragmentation while maintaining performance benefits

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the persistence parameter of memory storage by using non-volatile memory instead of volatile page cache. This allows data to be retained without requiring continuous power or active memory management, thereby reducing fragmentation and resource consumption while maintaining access speed

Inventive Principle:
Principle #35Parameter changes

2Speed

If volatile memory is used for page cache buffering, then data access speed is improved, but resource consumption increases

Engineering Contradiction:
Improvedata access speedVSAvoidmemory resource consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

Non-volatile memory serves as an intermediary that reduces dependency on volatile memory for persistent storage. By using non-volatile memory for final data allocation, the system can reduce the amount of volatile memory needed for page cache, thereby reducing resource consumption while maintaining fast access speeds for actively used data

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent treats volatile memory as a temporary, disposable buffer for active data manipulation, while using non-volatile memory for permanent storage. This allows the system to use minimal volatile memory resources since they can be quickly allocated and discarded, reducing overall resource consumption while maintaining performance

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Object-generated harmful factors

If traditional delayed allocation is used, then storage fragmentation is reduced, but page cache management complexity increases

Engineering Contradiction:
Improvestorage fragmentationVSAvoidpage cache management complexity
Core Design Contradiction:
Object-generated harmful factorsVSDevice complexity

Solution Approach 1:

Non-volatile memory acts as an intermediary that simplifies page cache management by providing a stable, persistent storage layer. This eliminates the need for complex volatile memory management routines while maintaining the benefits of delayed allocation and reducing storage fragmentation

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the persistence function from volatile page cache and places it in non-volatile memory. This separation simplifies the page cache management complexity by removing the burden of maintaining persistent storage within volatile memory, while still achieving reduced storage fragmentation through the non-volatile memory allocation layer

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9886449B1Delayed allocation for data object creation
Publication Date: 2018.02.06 RED HAT INC
  • US9886449B1 patent drawing
  • US9886449B1 patent drawing
  • US9886449B1 patent drawing

AI summary

Systems and methods for data storage management technology that optimizes the creation and storage of data objects. An example method may involve: receiving a request to create a data object; storing a first portion of the data object in a first data storage; determining a location in a second data storage in view of a predicted size of the data object and an access unit size of the second data storage; copying, by a processing device, the first portion of the data object from the first data storage to the location in the second data storage; and in response to receiving a second portion of the data object, directly storing the second portion in the second data storage.