Adaptive Data Prefetching Using Locality-Sensitive Hashing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database prefetching techniques are inadequate for dynamic and unpredictable workloads, often leading to inaccurate prefetching, thrashing in limited RAM environments, and lack tuning knobs for improving accuracy at the cost of efficiency.

Innovation Solution

An adaptive prefetching technique that generates data structures based on incoming workloads to determine which pages to prefetch, using locality-sensitive hashing to create signatures of co-occurring page requests, allowing for accurate predictions and tunable accuracy and sensitivity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If existing prefetching techniques are used, then prefetching coverage is improved, but prefetching accuracy deteriorates

Engineering Contradiction:
Improveprefetching coverageVSAvoidprefetching accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent implements dynamic prefetching by continuously learning from actual query execution patterns and adapting prefetch decisions in real-time. The system maintains a sliding window of recent page access patterns and dynamically updates prefetch predictions based on changing workload characteristics, rather than relying on static prefetching rules

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent replaces traditional mechanical prefetching approaches (sequential prefetching based on physical contiguity, semantic prefetching based on predefined data structures) with a machine learning-based predictive model that uses locality-sensitive hashing to identify and prefetch pages likely to be needed based on learned access patterns

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If existing prefetching techniques are used, then prefetching accuracy is improved, but buffer cache utilization deteriorates

Engineering Contradiction:
Improveprefetching accuracyVSAvoidbuffer cache utilization
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent changes the parameters of prefetching by introducing a configurable prefetch horizon and using locality-sensitive hashing with adjustable sensitivity parameters. This allows the system to tune the balance between prefetching accuracy and buffer cache utilization based on available memory and workload characteristics

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If prefetching is implemented, then I/O latency is reduced, but memory consumption increases

Engineering Contradiction:
ImproveI/O latencyVSAvoidmemory consumption
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent implements partial prefetching by selectively prefetching only the most promising pages based on learned patterns, rather than aggressively prefetching all possible pages. The system uses a sliding window mechanism to limit the scope of prefetching to recently observed patterns, reducing memory consumption while maintaining I/O performance

Inventive Principle:
Principle #16Partial or excessive action

4Measurement precision

If adaptive prefetching with learning is implemented, then prefetching accuracy for dynamic workloads is improved, but computational overhead increases

Engineering Contradiction:
Improveprefetching accuracyVSAvoidcomputational overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent implements self-service prefetching where the system learns from its own execution patterns and automatically adapts without external intervention. The learning mechanism operates incrementally using online learning algorithms that update predictions based on each query execution, avoiding the need for expensive periodic retraining or complex offline analysis

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11966393B2Adaptive data prefetch
Publication Date: 2024.04.23 SAP SE
  • US11966393B2 patent drawing
  • US11966393B2 patent drawing
  • US11966393B2 patent drawing

AI summary

A system includes reception of a request to fetch a first dataset, the request including a first identifier associated with the first dataset, determination, in response to the request, of a first signature associated with the first dataset based on the first identifier and on respective identifiers of one or more datasets fetched consecutively with the first dataset, and determination, based on the determined first signature, of whether to update a first link associating a second dataset with the first dataset, the link indicating to prefetch the first dataset in response to a request to fetch the second dataset.