Database Query Execution Pause and Detach Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database management systems face challenges in optimizing query execution performance due to the computation of full query results before all results are required, leading to resource wastage and increased response times for clients.
Innovation Solution
Implementing pause and detach operations in query execution, where the database execution engine computes and provides only the first subset of results initially, and computes subsequent subsets on demand, either synchronously or asynchronously using a separate thread, based on a determined timing schedule.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the database execution engine computes the full query result set before returning any data to the client, then the client receives complete results, but the response time is increased and resources are wasted if the client does not need all results
Solution Approach 1:
The patent segments the query result set into multiple subsets (first subset, second subset, etc.) and returns them in batches to the client. The execution engine computes and returns the first subset initially, then computes subsequent subsets only when the client requests them through fetch operations, thereby avoiding unnecessary computation of the entire result set upfront.
Solution Approach 2:
The patent implements dynamic query execution where the computation of subsequent result subsets is deferred based on client behavior. The execution engine monitors client fetch operations and dynamically adjusts computation timing - computing the second subset only after detecting a client fetch request, rather than computing all subsets statically before any client interaction.
2Ease of operation
If the database execution engine computes all query results upfront, then all data is available for client retrieval, but computing resources are wasted when the client needs only a portion of the results
Solution Approach 1:
The patent applies partial action by computing and returning only the necessary portion of query results at each stage. Instead of computing the entire result set, the engine computes the first subset initially and subsequent subsets only when clients actually request them, performing exactly the amount of computation needed rather than excessive pre-computation.
Solution Approach 2:
The system implements self-service where the client controls the computation process by issuing fetch operations only when needed. The execution engine responds to client fetch requests by computing subsequent result subsets on-demand, allowing the client to serve its own data retrieval needs and prevent unnecessary computation.
3Loss of energy
If the database execution engine waits for client fetch requests before computing subsequent result subsets, then resource utilization is optimized, but the client experiences additional waiting time between fetch operations
Solution Approach 1:
The patent applies preliminary action by computing the first subset of results before any client fetch request is issued. This initial computation provides immediate value to the client without waiting for fetch operations, reducing the initial waiting time while still deferring computation of subsequent subsets to optimize resource usage.
Data Source
AI summary
Aspects of the current subject matter are directed to providing query results to clients by incorporating pause and/or detach operations into the query execution after a first fetch of results. The pause and the detach operations for query execution consistent with implementations of the current subject matter result in reduced times and conserved resources in providing query results by computing only results necessary to satisfy a first fetch call prior to computing results necessary to satisfy subsequent fetch calls.


