Directional Dependency Graph for Cloud-Native State Capture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Ensuring consistency between multiple databases used by different micro-services in cloud-native applications during state capture and recovery is challenging in conventional practices, leading to potential data inconsistencies and service disruptions.
Innovation Solution
Implementing a directional dependency graph to characterize relationships between micro-services and databases, allowing for automated state capture and operational recovery by defining directional edges based on dependencies, ensuring directional consistency between databases.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If conventional backup practices are used for cloud-native applications with multiple micro-services, then backup operations can be performed independently for each micro-service, but consistency between databases of different micro-services cannot be ensured
Solution Approach 1:
The patent introduces a dependency graph as an intermediary structure that models relationships between micro-services and their databases. This dependency graph serves as a mediator that coordinates backup operations across multiple micro-services, ensuring that databases are backed up in the correct sequence based on their interdependencies, thus maintaining consistency while allowing independent operation of each backup process
Solution Approach 2:
The patent performs preliminary analysis to build a dependency graph that captures relationships between micro-services before executing backup operations. This preliminary action identifies the correct backup sequence, allowing the system to perform coordinated backups that maintain database consistency across micro-services while still enabling independent backup execution
2Productivity
If databases are backed up in parallel for different micro-services, then backup speed is improved, but data inconsistencies may occur due to lack of coordination
Solution Approach 1:
The patent implements a dynamic backup approach where the backup sequence is determined by the dependency graph rather than a fixed order. The system dynamically adjusts the backup sequence based on the specific dependencies between micro-services, allowing parallel backups for independent databases while maintaining correct sequencing for dependent databases, thus achieving both speed and accuracy
3Reliability
If a comprehensive dependency graph is created to ensure consistency, then directional consistency is achieved, but system complexity increases
Solution Approach 1:
The patent implements a self-service approach where the dependency graph is automatically constructed and maintained by analyzing the relationships between micro-services and their databases. The system automatically discovers dependencies, builds the graph structure, and uses it to coordinate backup operations without requiring manual configuration or complex management, thus achieving directional consistency while minimizing the operational complexity burden
Data Source
AI summary
An apparatus in one embodiment comprises at least one processing platform including a plurality of processing devices. The processing platform is configured to execute a cloud-native application utilizing a plurality of micro-services each associated with a different set of one or more underlying databases, to capture state of the cloud-native application for a particular point in time, and to perform operational recovery of the cloud-native application for the particular point in time utilizing the captured state. Capturing state of the cloud-native application for the particular point in time comprises capturing the state in accordance with a directional dependency graph that characterizes relationships between the micro-services and the associated databases utilized in executing the cloud-native application in order to ensure directional consistency between the databases in the captured state. Performing operational recovery of the cloud-native application for the particular point in time utilizing the captured state comprises performing the operational recovery in accordance with the directional dependency graph.


