Asynchronous Pluggable Database Configuration Framework
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database management systems face challenges in efficiently scaling and reconfiguring pluggable databases within a compute cloud, leading to rigid topologies that hinder horizontal scaling, capacity planning, and automation, especially at cloud scale, due to synchronous administrative tasks and limited parallelism opportunities.
Innovation Solution
The implementation of asynchronous workload management techniques that configure or reconfigure pluggable databases by generating configuration descriptors for deferred execution, utilizing asynchronous jobs, thread pools, swim lanes, and hosting metadata to optimize database administration and performance across a dynamic cloud ecosystem.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If synchronous administrative commands are used for database configuration, then immediate execution is achieved, but opportunities for parallelism are limited and manual shepherding is required
Solution Approach 1:
The system pre-configures template pluggable databases with desired settings before actual deployment needs arise. These templates are prepared in advance and can be rapidly instantiated when needed, eliminating the need for synchronous configuration during deployment.
Solution Approach 2:
The system creates and manages template databases that can be copied and instantiated multiple times. These templates serve as reusable blueprints that capture configuration details, allowing rapid deployment of identical database configurations without repeated manual configuration.
2Stability of the object's composition
If rigid topology arrangements are maintained for database hosting, then stability is achieved, but horizontal scaling and capacity planning are hindered
Solution Approach 1:
The system implements dynamic topology management where database templates can be moved between container databases and computing devices based on workload demands. The architecture allows flexible reconfiguration of database hosting locations without disrupting the underlying stable template definitions.
Solution Approach 2:
The system separates database configuration (templates) from database instances. Templates are independent, reusable configuration objects that can be instantiated multiple times across different container databases and computing devices, enabling both stability and scalability.
3Reliability
If manual shepherding is used for sequencing administrative activities, then control is achieved, but significant manual intervention is required
Solution Approach 1:
The system implements self-service automation where the database management system automatically sequences and executes administrative tasks based on template definitions. The system autonomously handles template instantiation, database creation, and configuration application without requiring manual shepherding or intervention.
4Productivity
If pluggable databases are relocated between container databases, then optimization opportunities arise, but repackaging and redeployment of clients and services is required
Solution Approach 1:
The system uses template copying mechanisms where the template definition is replicated to new locations rather than moving actual database instances. This allows rapid relocation and instantiation of databases without complex repackaging, as the template serves as a lightweight, portable configuration object.
Data Source
AI summary
Provided herein are workload management techniques that asynchronously configure pluggable databases within a compute cloud. In an embodiment, the compute cloud receives an administrative request that indicates configuration details for a pluggable database. The compute cloud generates a configuration descriptor that specifies an asynchronous job based on the configuration details of the request. The compute cloud accesses hosting metadata to detect at least one of: a) a current container database that already hosts the pluggable database, b) a target container database that will host the pluggable database, or c) a particular computer that hosts at least one of: the current container database, or the target container database. The compute cloud executes the asynchronous job to configure the pluggable database based on at least one of: the hosting metadata, or the configuration descriptor. Thread pools, lanes, and queues may facilitate load balancing to avoid priority inversion, starvation, and denial of service.


