Data Migration Mechanism for Zero Downtime Software Maintenance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current maintenance procedures for software applications and databases often result in downtime, and existing data migration frameworks like XPRA are inefficient, requiring multiple resources and not supporting zero downtime or minimal resource usage effectively.
Innovation Solution
A data migration mechanism using a migration class that provides methods for data migration logic, enabling code generation for procedure-specific migration code, and allowing execution during uptime with parallelization, minimizing downtime and resource usage through mechanisms like record-replay and database triggers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional data migration frameworks are used, then data can be migrated between databases, but the system requires multiple resources and causes downtime during maintenance procedures
Solution Approach 1:
The patent combines multiple data migration frameworks (XPRA, XSLA, and the new XCLA) into a single unified mechanism. The migration class executes data migration logic in a single process, eliminating the need for multiple separate frameworks and reducing system complexity while maintaining availability.
Solution Approach 2:
The migration class is designed to be universal and can be used across different maintenance procedures and database types. It provides a single mechanism that handles various migration scenarios (zero downtime, minimal resource usage, standard procedures) through configuration rather than requiring separate specialized frameworks.
2Ease of manufacture
If data is copied to separate databases during maintenance, then data migration can be performed, but additional computer processing and memory resources are required
Solution Approach 1:
The patent extracts the data migration logic from complex multi-framework systems and consolidates it into a single migration class that executes within the existing database process. This eliminates the need to copy data to separate databases, reducing memory and computational resource requirements while maintaining ease of implementation.
3Ease of repair
If application and database are taken offline for maintenance, then maintenance procedures can be executed, but users are unable to interact with the system causing downtime
Solution Approach 1:
The migration class performs data migration operations in advance or concurrently with maintenance procedures by executing within the running database process. This preliminary action allows the system to remain online and accessible to users while maintenance is being performed, eliminating downtime.
Solution Approach 2:
The migration class acts as an intermediary mechanism that enables maintenance procedures to execute without taking the database offline. It mediates between the need for maintenance and the requirement for system availability, allowing both to coexist by running migration logic within the active system context.
Data Source
AI summary
Methods, systems, and computer-readable storage media for data migration in a maintenance procedure executed on a software system include actions of initiating the maintenance procedure, and determining that an instance of a data migration object is included in a list of deployed transport objects, and in response: reading a migration class from the data migration object, determining at least one table of a database that is affected by the maintenance procedure based on one or more methods of a first interface of the migration class, receiving, using a second interface of the migration class, data migration logic including computer-executable instructions to migrate data, and executing the data migration logic to affect the at least one table.


