Re-computing Pre-computed Query Results via Reinforcement Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database technologies face challenges in efficiently re-computing pre-computed search results due to varying computation resources needed, which are not static and depend on the selection of pre-computed search results during a computation cycle, leading to inefficient use of resources and potential unnecessary re-computations.
Innovation Solution
Implementing a Reinforcement Learning algorithm to dynamically determine the optimal number of pre-computed query results to be re-computed within a given time interval, based on computation resources available, to optimize resource utilization and minimize unnecessary re-computations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If pre-computed query results are re-computed during a given time interval, then the response time for database queries is improved, but the computation resources consumed increase
Solution Approach 1:
The system dynamically adjusts the re-computation strategy based on the interdependence of query results. Instead of using a static re-computation schedule, the system adapts the computation resources allocated to each query result based on the selected set of results being re-computed in the current cycle, optimizing the balance between response time and resource consumption.
Solution Approach 2:
The system changes the computation resources parameter dynamically during the re-computation process. By adjusting the resources allocated to re-compute each query result based on the interdependence relationships and the current computation cycle's selected set, the system optimizes resource utilization while maintaining improved response times.
2Productivity
If a fixed set of pre-computed query results is re-computed each cycle, then the computation resources needed are static and predictable, but the efficiency of resource utilization decreases
Solution Approach 1:
The system implements a feedback mechanism where the re-computation controller adjusts the selection of query results for re-computation based on the interdependence relationships discovered during each computation cycle. This feedback loop allows the system to learn from previous cycles and optimize the selected set for better resource utilization efficiency.
Solution Approach 2:
The system enables the re-computation process to self-optimize by automatically identifying interdependent query results and adjusting the computation resources allocated accordingly. The controller autonomously determines the most efficient re-computation strategy without requiring external intervention, improving resource utilization while managing complexity internally.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Pre-computed query results stored at a database server are re-computed by a computation machine. The pre-computed query results are composed of a plurality of shares. Each share ineludes a certain number of pre-computed query results. The computation resources of the computation machine needed to re-compute a pre-computed query result of a first share depend on whether or not other pre-computed query results of the first share are re-computed during a given time interval forming a current re-computation cycle. The computation machine receives a request to re-compute pre-computed query results of at least a first share, determines a number of pre-computed query results in the first share to be re-computed in the current re-computation cycle based on a Reinforcement Learning algorithm, and re-computes the determined number of pre-computed query results in the first share.