Asynchronous SQL Execution for Zero Downtime Database Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database migration tools face challenges such as prolonged downtime, increased costs due to hardware requirements, and errors during conversion from relational databases to in-memory databases, particularly during the execution of SQL statements.

Innovation Solution

The implementation of asynchronous SQL execution during zero downtime database migration using a system with execution modules connected to both source and target databases, allowing for the identification and execution of statement subsets without suspending the system, thereby avoiding errors and reducing downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronous SQL execution is used during database migration, then data consistency is maintained, but system downtime increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically switches between synchronous and asynchronous execution modes for different SQL statement subsets. Critical statements that require data consistency are executed synchronously, while non-critical statements are executed asynchronously to minimize downtime. This dynamic approach allows the migration process to adapt its execution strategy based on the specific requirements of each SQL statement.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The SQL statements are divided into multiple subsets with different execution priorities and consistency requirements. The first subset contains critical statements that require synchronous execution to maintain data consistency, while the second subset contains non-critical statements that can be executed asynchronously. This segmentation allows the system to maintain consistency where needed while minimizing overall downtime.

Inventive Principle:
Principle #1Segmentation

2Productivity

If all SQL statements are executed during migration, then complete database conversion is achieved, but migration complexity increases

Engineering Contradiction:
Improvemigration completionVSAvoidmigration process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system executes SQL statements in two phases: first, a subset of critical statements is executed synchronously to ensure data consistency; second, the remaining non-critical statements are executed asynchronously. This partial action approach ensures that the most important migration tasks are completed with full consistency guarantees, while less critical tasks are handled separately to reduce overall process complexity.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The migration process maintains continuous useful action by executing SQL statements in an asynchronous manner after the initial synchronous phase. This allows the migration to continue without interruption, with the second subset of statements being processed in the background while the system remains operational, thereby maintaining productivity while managing complexity.

Inventive Principle:
Principle #20Continuity of useful action

3Adaptability or versatility

If additional hardware resources are purchased for migration, then migration capability is enhanced, but migration cost increases

Engineering Contradiction:
Improvemigration capabilityVSAvoidhardware resources
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system performs database migration using its existing computational resources and architecture. The asynchronous execution framework leverages the target database system's own capabilities to execute SQL statements without requiring additional intermediate hardware. This self-service approach enhances migration capability while avoiding the need to purchase extra hardware resources.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The migration system is designed to be universal and multi-functional, capable of handling both synchronous and asynchronous SQL execution modes within the same framework. This universality allows the system to adapt its resource usage based on migration requirements without needing specialized hardware for different migration scenarios, thereby enhancing capability while controlling hardware resource requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10803030B2Asynchronous SQL execution tool for zero downtime and migration to HANA
Publication Date: 2020.10.13 SAP SE
  • US10803030B2 patent drawing
  • US10803030B2 patent drawing
  • US10803030B2 patent drawing

AI summary

A system and method for database migration is provided. In an example embodiment, the database migration technique may include execution modules having a first connection to a source database and a second connection to a target database, and orchestration modules adapted to identify first and second subsets of statements from a single storage table, wherein the first and second subsets of statements are executed by the execution modules during an uptime period of the source database.