Multidimensional Dependency Model for Cloud Software Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud computing systems lack a comprehensive view of dependencies between software components and hardware resources, leading to complexity in managing and recovering from failures due to dynamic resource allocation and reallocation.
Innovation Solution
A system that uses a multidimensional model to calculate dependency scores by obtaining an adjacency matrix, calculating an eigenvector associated with the greatest eigenvalue, and determining centrality scores, which are used to manage software offerings by determining recovery costs and sequences based on these scores.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If dynamic resource allocation and reallocation are implemented in cloud computing systems, then resource utilization rates and management overhead are improved, but dependency complexity between software components and hardware resources increases
Solution Approach 1:
The patent segments the software offering into distinct service components (e.g., web server, application server, database) and maps them to specific hardware resources. This segmentation allows independent tracking and management of each component's dependencies, reducing overall system complexity while maintaining dynamic allocation capabilities.
Solution Approach 2:
The patent introduces a multidimensional model as an intermediary layer between software components and hardware resources. This model captures dependency relationships and serves as a mediator for impact analysis, enabling the system to manage dynamic resource allocation without directly exposing the complexity of resource-component dependencies.
2Reliability
If comprehensive dependency tracking is implemented, then reliability of software offering management is improved, but computational complexity and overhead increase
Solution Approach 1:
The patent applies local quality by calculating dependency scores specifically for nodes (service components or hardware resources) that are actually involved in failures or require attention. Rather than comprehensively analyzing all dependencies in the system, the impact analysis focuses locally on affected areas, reducing computational complexity while maintaining reliable failure management.
Solution Approach 2:
The patent implements partial action by performing impact analysis only when necessary (e.g., when failures occur or resource allocation changes), rather than continuously monitoring all dependencies. This selective approach maintains reliability for critical events while reducing overall computational overhead.
3Ease of operation
If manual recovery procedures are used for software failures, then operational simplicity is maintained, but recovery time and downtime increase
Solution Approach 1:
The patent implements feedback mechanisms that automatically detect failures, determine affected service components using dependency scores, and trigger appropriate recovery actions. This automated feedback loop eliminates manual intervention for routine failures, reducing recovery time while maintaining operational simplicity through standardized recovery procedures.
Solution Approach 2:
The patent performs preliminary actions by pre-calculating dependency scores and mapping service components to hardware resources before failures occur. This preparation enables rapid automated recovery when failures happen, as the system already knows which components are most critical and how to restore them, significantly reducing downtime compared to manual recovery procedures.
Data Source
AI summary
The disclosed embodiments provide a system that facilitates the maintenance and execution of a software offering. During operation, the system obtains model data associated with a multidimensional model of the software offering. Next, the system uses the model data to calculate a set of dependency scores representing levels of dependency among a set of service components and a set of resources used by the software offering. Finally, the system uses the dependency scores to facilitate management of the software offering.


