Proactive Query Access Plan Generation for Database Switchover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database management systems face inefficiencies when switching from one set of computing resources to another, as they often wait until a query access plan becomes suboptimal before generating a new one, leading to query execution delays and inefficiencies.

Innovation Solution

A method where a database management system determines if a query access plan satisfies preliminary criteria for a new set of computing resources and generates a new plan proactively, ensuring optimal execution even when resource availability changes, such as during a switchover from a production to a backup system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a database management system waits until a query access plan becomes suboptimal before generating a new one, then resource usage is minimized, but query execution delays and inefficiencies occur

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidquery execution delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system proactively generates a second query access plan for a second set of computing resources before the first plan becomes suboptimal, based on predicted resource changes or scheduled events. This preliminary action ensures that when resources change (e.g., switchover from production to backup system), the optimized plan is already ready, eliminating query execution delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts query access plans based on changing computing resource conditions. By monitoring resource availability and predicting future states, the system transitions from static plan generation to dynamic, adaptive plan management, ensuring optimal performance across different resource environments.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If a database management system generates multiple query access plans for different computing environments, then adaptability to resource changes improves, but system complexity increases

Engineering Contradiction:
Improveadaptability to computing resource changesVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Instead of generating all possible query access plans in advance, the system performs preliminary actions by creating plans only for anticipated resource changes (e.g., scheduled maintenance windows, known failover scenarios). This reduces the number of plans that need to be managed while maintaining high adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system manages complexity by parameterizing query access plans with resource environment tags (e.g., production, backup, scaled-down). When resources change, the system selects the appropriate plan based on parameter matching rather than evaluating all plans, simplifying the management process while maintaining versatility.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10108664B2Generating multiple query access plans for multiple computing environments
Publication Date: 2018.10.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10108664B2 patent drawing
  • US10108664B2 patent drawing
  • US10108664B2 patent drawing

AI summary

A first database management system (DBMS) running on first computer having a first set of computing resources determines that with respect to the first set of computing resources a first query access plan for executing a query satisfies a set of query optimization criteria. A determination is then made that with respect to a second set of computing resources the first query access plan fails a set of preliminary criteria. In response to this failure determination, a second query access plan for executing the query is generated. Prior to having a second DBMS running on a second computer having the second set of computing resources receive a request to execute the query, a determination is made that with respect to the second set of computing resources the second query access plan satisfies the set query optimization criteria.