In-Memory Database Abstraction Component for Kubernetes Scalability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In-memory databases in cloud environments face challenges when updating requirements, as changes to the service broker API necessitate updates to the in-memory database operator, disrupting scalability provided by containerized implementations like Kubernetes.
Innovation Solution
Introducing an in-memory database abstraction component, such as 'Kubernator,' which receives lifecycle commands, validates parameters, and translates them to meet service plan requirements, decoupling the in-memory database operator from changes in the service broker API, thereby maintaining scalability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the service broker API is updated to meet new requirements, then the system can support updated service plans, but the in-memory database operator must also be updated, disrupting scalability
Solution Approach 1:
The patent introduces an abstraction component as an intermediary layer between the service broker API and the in-memory database operator. This component receives lifecycle commands from the service broker, validates parameters against service plan requirements, and translates them into appropriate commands for the in-memory database operator. When service broker API requirements change, only the abstraction component needs to be updated, not the in-memory database operator, thus maintaining scalability while supporting updated requirements.
2Ease of operation
If the in-memory database operator is tightly coupled with the service broker API, then parameter validation and translation can be performed directly, but updates to the operator are required whenever the API changes
Solution Approach 1:
The patent segments the system into three distinct components: the service broker API, an abstraction component, and the in-memory database operator. The abstraction component is responsible for parameter validation and translation, separating this functionality from the in-memory database operator. This segmentation allows the validation and translation logic to remain in the abstraction layer, which can be updated independently when the service broker API changes, while the in-memory database operator remains unchanged.
3Productivity
If containerized implementation with Kubernetes is used, then scalability is provided, but changes to the service broker API disrupt the scalability by requiring operator updates
Solution Approach 1:
The abstraction component serves as a mediator that protects the Kubernetes-based containerized implementation from disruptions caused by service broker API changes. By handling parameter validation and translation in the abstraction layer, the in-memory database operator can remain stable and unchanged, preserving the scalability benefits of the Kubernetes implementation while adapting to new service broker requirements.
Data Source
AI summary
In an example embodiment, a specialized in-memory database abstraction component is introduced in a cloud cluster. The in-memory database abstraction component may receive lifecycle commands from a client-facing application and interface with a container service to create an in-memory database resource. When parameters are received by the in-memory database abstraction component from the client-facing application, the in-memory database abstraction component may act to validate the parameters, determine if a service plan is available, and determine whether the parameters meet the service plan requirements. If the service plan requirements are not met, the in-memory database abstraction component translates the parameters for the in-memory database resource.


