Database B-Tree Pre-Fetching for Response Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face performance issues due to time-consuming and resource-intensive search operations, leading to slowed response times and increased maintenance costs, as they often retrieve and process data sequentially without optimizing access patterns.

Innovation Solution

Implementing a b-tree structure with pre-fetching mechanisms that utilize volatile and non-volatile memory efficiently, where the database management system determines traversal patterns to pre-fetch data likely to be requested, based on the b-tree traversal path, and dynamically allocates memory for pre-fetching operations to enhance search efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sequential retrieval of database segments is used to determine satisfaction of search parameters, then comprehensive search coverage is achieved, but response time increases and system performance deteriorates

Engineering Contradiction:
Improvesearch completenessVSAvoidresponse time
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent applies preliminary action by pre-fetching data segments into volatile memory before they are actually requested. The system monitors traversal patterns and proactively loads additional segments that are likely to be needed next, so that when search operations need this data, it is already available in fast memory, eliminating the need for sequential retrieval from non-volatile storage and significantly reducing response time while maintaining complete search coverage

Inventive Principle:
Principle #10Preliminary action

2Speed

If more memory is allocated for data storage, then data access speed improves, but power consumption and resource utilization increase

Engineering Contradiction:
Improvedata access speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent applies dynamics by making the memory allocation adaptive rather than static. The system dynamically adjusts the amount of volatile memory allocated for data storage based on real-time monitoring of access patterns, traversal depth, and current computational needs. When memory pressure is detected or access patterns change, the system adjusts its pre-fetching behavior and memory allocation accordingly, optimizing the balance between data access speed and power consumption rather than maintaining fixed high memory usage

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters by adjusting memory allocation thresholds, pre-fetch distances, and caching strategies based on observed workload characteristics. These parameter changes allow the database to optimize for speed when resources are abundant while conserving power when resources are constrained, adapting to different operational conditions without sacrificing overall performance

Inventive Principle:
Principle #35Parameter changes

3Productivity

If pre-fetching operations are implemented to load data into volatile memory, then search efficiency improves, but resource utilization and system complexity increase

Engineering Contradiction:
Improvesearch efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies self-service by implementing automatic pre-fetching that monitors its own performance and adjusts without external intervention. The system includes feedback mechanisms that track which pre-fetching operations were beneficial and which wasted resources, automatically tuning its pre-fetching distance, timing, and target selection based on observed outcomes. This self-adjusting behavior reduces the need for complex external configuration and management while maintaining high search efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback loops where the results of pre-fetching operations are monitored and fed back into the decision-making process. When pre-fetching consistently improves query performance, the system increases pre-fetching aggressiveness; when it causes unnecessary resource utilization, the system reduces pre-fetching activity. This feedback-driven approach automatically optimizes the balance between search efficiency and resource utilization without requiring complex manual configuration

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11061903B1Methods and systems for an improved database
Publication Date: 2021.07.13 AMAZON TECH INC
  • US11061903B1 patent drawing
  • US11061903B1 patent drawing
  • US11061903B1 patent drawing

AI summary

Systems, methods, and computer-readable media are disclosed for an improved database. The systems, methods, and computer-readable media described herein may enhance the response time of databases and improve user experiences. In an example method described herein, a database may receive a search request for data stored in the database. The database may be stored in association with a b-tree to facilitate searching and retrieving data from the database. The method may include allocating a portion of a first memory for read ahead operations and performing the read ahead operations, wherein the read ahead operations comprise loading, into the portion of the first memory, data associated with one or more siblings of a current node, wherein the one or more siblings of the current node are one or more nodes that have a same number of parent nodes as the current node.