Cache Memory Preloading Non-Contiguous Data Segments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data retrieval methods from non-volatile storage devices suffer from latency issues, particularly in streaming processes where the time to process data is short, and prior solutions like proxy servers and cache storage systems do not effectively predict and preload data segments, leading to inefficiencies in data retrieval times.

Innovation Solution

The method involves using a cache memory to preload the next data segment in a predictable sequence, determined by the storage device or host system, based on information such as file names, extensions, content, or statistical analysis, eliminating the latency of the pre-loading stage and making data available on demand.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If data retrieval uses traditional pre-loading stage followed by loading stage, then data is retrieved from storage device, but latency occurs during pre-loading stage which becomes problematic in streaming processes with short processing times

Engineering Contradiction:
Improvedata-retrieval timeVSAvoidprocessing throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies preliminary action by predicting which data segments will be needed next and preloading them into cache memory before they are actually requested. This eliminates the latency of the traditional pre-loading stage because the data is already prepared and available when needed, rather than waiting for the storage device to complete the initial pre-loading operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The storage device controller performs self-service by autonomously determining the identity of the next data segment to be loaded and initiating the pre-loading operation without host system intervention. The controller uses information such as file names, extensions, content analysis, or statistical frequency to predict and preload the next segment, making the system self-optimizing.

Inventive Principle:
Principle #25Self-service

2Speed

If proxy servers and cache storage systems are used for data retrieval, then access speed is improved based on external considerations, but they fail to predict and preload arbitrarily-selected data files

Engineering Contradiction:
Improvedata access speedVSAvoidpredictive capability
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The patent implements feedback by analyzing the actual content and structure of data files to determine predictability patterns. The controller examines file names, extensions, content characteristics, and statistical frequency of data access to build predictive models. This feedback mechanism enables the system to learn from actual data patterns and improve its prediction accuracy over time, rather than relying solely on external historical data.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies parameter changes by dynamically adjusting the prediction strategy based on the specific characteristics of each data file. Different parameters such as file type, access patterns, and data structure are analyzed to determine the optimal preloading strategy for each arbitrary data file, enabling adaptive prediction rather than uniform caching behavior.

Inventive Principle:
Principle #35Parameter changes

3Duration of action of moving object

If prior-art systems cache multiple data segments, then reading time is reduced for contiguous data objects, but it applies only to contiguous sectors readable in one disk revolution

Engineering Contradiction:
Improvereading timeVSAvoiddata structure compatibility
Core Design Contradiction:
Duration of action of moving objectVSAdaptability or versatility

Solution Approach 1:

The patent applies segmentation by dividing the data object into individual segments and selectively preloading only the next relevant segment rather than caching multiple contiguous sectors. This segment-by-segment approach works for both contiguous and non-contiguous data structures, as the controller predicts and loads only the specific next segment needed, regardless of its physical location on the storage medium.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamics by making the preloading strategy adaptive and flexible rather than static. The controller dynamically determines the identity of the next data segment based on real-time analysis of file characteristics and access patterns, allowing the system to handle various data structures (contiguous, non-contiguous, scattered) efficiently rather than being constrained to fixed contiguous sector caching.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8051249B2Method for preloading data to improve data-retrieval times
Publication Date: 2011.11.01 SANDISK ISRAEL LTD
  • US8051249B2 patent drawing
  • US8051249B2 patent drawing
  • US8051249B2 patent drawing

AI summary

The present invention discloses methods for improving data-retrieval times from a non-volatile storage device. A method for preloading data to improve data-retrieval times from a non-volatile storage device, the method including the steps of: providing a cache memory for preloading the data upon a host-system request to read the data; determining that a plurality of data segments that constitute a non-contiguous data object, stored in the storage device such that at least one data segment is non-contiguous to a preceding data segment in the data object, are in a predictable sequence; and preloading a non-contiguous next data segment in the predictable sequence into the cache memory after loading a current data segment into a host system from the cache memory, wherein the next data segment is preloaded prior to the host-system request to read the next data segment.