Client-Aware Pre-Fetch Policy Scoring System

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern distributed file systems face challenges in implementing a consistent and predictable pre-fetch policy due to variability in client read patterns, making it difficult to improve read performance at scale.

Innovation Solution

A client-aware pre-fetch policy scoring system that determines which blocks to copy from a file storage tier to a pre-fetch storage tier based on attributes like client identity, geographic location, and previous request patterns, using a score model with multiple score rules to evaluate and update scores for effective pre-fetching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If pre-fetching is implemented in distributed file systems, then read performance is improved, but resource waste increases due to variability in client read patterns

Engineering Contradiction:
Improveread performanceVSAvoidresource waste
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The system dynamically changes parameters including client identity, geographic location, device type, and request patterns to determine pre-fetching behavior. By adjusting pre-fetching parameters based on these variables, the system optimizes read performance while minimizing resource waste through context-aware decision making.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements feedback mechanisms by monitoring client read patterns, request scores, and pre-fetch effectiveness. This feedback loop allows the system to learn from past performance and continuously optimize pre-fetching decisions, improving read performance while reducing waste through data-driven adjustments.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If a per-request pre-fetch policy scoring system is implemented, then pre-fetch accuracy is improved, but system complexity increases due to vast number of file system requests

Engineering Contradiction:
Improvepre-fetch accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system segments the pre-fetch decision process into distinct components: client identification, geographic location determination, device type classification, request pattern analysis, and scoring mechanisms. This segmentation allows each component to be optimized independently while managing overall system complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The scoring system serves multiple functions simultaneously: it evaluates pre-fetch opportunities, ranks potential pre-fetch candidates, makes binary pre-fetch decisions, and provides feedback for continuous improvement. This multi-functionality reduces the need for separate systems while maintaining high pre-fetch accuracy.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10614033B1Client aware pre-fetch policy scoring system
Publication Date: 2020.04.07 QUMULO INC
  • US10614033B1 patent drawing
  • US10614033B1 patent drawing
  • US10614033B1 patent drawing

AI summary

Embodiments are directed to managing data in a file system. A pre-fetch engine may receive requests from a client the file system that includes a pre-fetch storage tier and a file storage tier of storage devices. The pre-fetch engine determines a pre-fetch policy based on the requests such that the pre-fetch policy determines which blocks to copy to the pre-fetch storage tier. And, the pre-fetch policy may be associated with a score model that includes score rules where one of the rules may be associated with a client score. The pre-fetch engine may obtain scores associated with the score rules such that the scores are based on previous requests made by the client. In response to scores exceeding a threshold value, the pre-fetch engine may copy the blocks to the pre-fetch storage tier. The pre-fetch engine may update the scores based on the performance of the pre-fetch policy.