Weighted Data Striping for Volatile to Non-Volatile Memory Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face challenges in efficiently transferring data from volatile memory to non-volatile storage during power-down sequences, as they often rely on single-channel data transfer methods that do not optimize for disparate data rates of different non-volatile storage media, leading to increased total write times.

Innovation Solution

The method involves splitting data objects into segments based on theoretical and practical split points, using weighted striping techniques to distribute data across multiple non-volatile storage media with varying data transfer rates, enabling parallel data transfers and reducing offload times by leveraging the unique characteristics of each storage device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If single-channel data transfer methods are used, then device complexity is reduced, but total offload time increases due to inability to optimize for disparate data rates of different non-volatile storage media

Engineering Contradiction:
Improvetotal offload timeVSAvoiddata transfer system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The data object is divided into multiple data segments that can be transferred in parallel to different non-volatile storage media. Each segment is assigned to a specific storage device based on its transfer characteristics, enabling simultaneous transfers that reduce total offload time while managing complexity through structured segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-channel sequential transfer to multi-channel parallel transfer by adding the dimension of concurrent data paths. Multiple data segments are transferred simultaneously across different storage media, fundamentally changing the transfer architecture from one-dimensional sequential to multi-dimensional parallel operations.

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

2Productivity

If data objects are split into multiple segments for parallel transfer, then offload time is reduced, but data integrity and coherency during reconstruction becomes more difficult to ensure

Engineering Contradiction:
Improvedata transfer rateVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by calculating theoretical and practical split points before dividing the data object. This pre-planning ensures that segments are divided at appropriate boundaries that maintain data coherence while enabling parallel transfer, thus preserving data integrity during reconstruction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent incorporates feedback mechanisms by considering practical split points that account for storage device characteristics and data structure requirements. This feedback loop ensures that segmentation decisions optimize both transfer performance and data integrity, allowing the system to adjust segment boundaries based on actual device capabilities and data coherence requirements.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10445235B2Weighted data striping
Publication Date: 2019.10.15 SEAGATE TECH LLC
  • US10445235B2 patent drawing
  • US10445235B2 patent drawing
  • US10445235B2 patent drawing

AI summary

The herein disclosed technology provides techniques for uneven striping of data objects, such as metadata, in a storage device to decrease save times for copying such objects from volatile to non-volatile memory. According to one implementation, a data object is split into multiple differently-sized data segments of variable size based on rates of data transfer to multiple disparate non-volatile receiving devices. Responsive to initiation of a power down sequence, each of the multiple data segments of the data object are simultaneously copied from volatile memory to non-volatile memory.