Cloud Service Dependency Data Model Hierarchy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The complexity of deploying cloud-hosted services, particularly those with microservices architecture, is increased due to the need for individual configuration and dependency management of each microservice, leading to higher costs and reduced application availability and reliability.
Innovation Solution
A dependency data model hierarchy is used to centralize configuration and dependency information, allowing for agile deployment across different regions by defining how components interact and inherit configurations, with a repository providing configuration parameters to be filled by users or automated systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If microservices architecture is adopted to improve application scalability and flexibility, then application features can be released or updated without re-deploying the entire application, but deployment complexity increases significantly due to individual configuration and dependency management of each microservice
Solution Approach 1:
The patent segments the monolithic application into multiple independent microservices, each implementing a specific task. This segmentation allows individual services to be deployed, updated, and scaled independently, improving application flexibility and scalability while reducing the risk of entire application failures.
Solution Approach 2:
The patent introduces a service mesh as an intermediary layer that manages communication, configuration, and dependency resolution between microservices. This intermediary handles the complexity of inter-service interactions, allowing individual services to remain simple while the system as a whole achieves sophisticated coordination.
2Productivity
If each microservice is individually configured and managed, then application features can be updated independently, but the human and financial cost of maintaining the system increases significantly
Solution Approach 1:
The patent implements a universal configuration management system that handles configuration for all microservices through a centralized approach. This system provides multi-functional capabilities including configuration storage, validation, propagation, and version control, reducing the repetitive manual configuration work across multiple services.
Solution Approach 2:
The patent performs preliminary configuration validation and dependency resolution before deployment. Configuration templates and schemas are established in advance, and the system automatically validates configurations and resolves dependencies prior to actual deployment, preventing errors and reducing iterative maintenance work.
3Ease of manufacture
If ad-hoc techniques are used for configuring and deploying microservices (spreadsheets, code comments), then implementation is simple, but application availability and reliability are significantly reduced
Solution Approach 1:
The patent implements self-service configuration through automated configuration generation and propagation systems. The system automatically generates configurations from templates, validates them against schemas, propagates them to appropriate services, and manages version control, eliminating the need for manual ad-hoc configuration while maintaining simplicity through automation.
Solution Approach 2:
The patent incorporates feedback mechanisms that automatically detect configuration errors, validation failures, and dependency issues before they affect production. The system provides real-time feedback on configuration status, alerts operators to potential problems, and enables rollback capabilities, significantly improving application reliability while maintaining ease of configuration.
Data Source
AI summary
Technologies are disclosed for improving the deployment of a cloud-hosted service. Before being deployed to a particular environment, a cloud-hosted service must be configured for that environment. Configuring a deployment includes determining which components to deploy, determining how to connect with external components, identifying onboarding procedures, etc. A dependency data model defines a hierarchy of components utilized by the cloud-hosted service. For each component in the hierarchy, configuration parameters define how to deploy that component. A list of configuration parameters that do not yet have values for a target environment may be generated and provided to a user. Values for these parameters may then be received. A configuration for the target environment is then generated based on the dependency data model and the received values. The dependency data model may inherit dependencies and configuration properties from ancestors in a hierarchy of dependency data models.


