Tenant Database Placement in Oversubscribed DaaS Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a database-as-a-service architecture, oversubscription of resources leads to resource violations, which are costly and disruptive due to the need for failovers, as tenants typically consume only a fraction of their allocated resources, causing aggregate demand to exceed node capacity.
Innovation Solution
The system estimates the probability of resource violations by using historical traces of resource demand, compressed to conserve storage and processing, and applies simulations to determine optimal tenant database placement across nodes, minimizing resource violations and failovers through modified heuristics and scoring functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If resources in a cluster are oversubscribed to increase tenant density and lower costs, then resource utilization efficiency is improved, but resource violations occur causing disruptive failovers
Solution Approach 1:
The system performs preliminary placement of tenant databases on nodes by estimating the probability of resource violations before actual placement occurs. Historical traces are analyzed and simulations are run to predict future resource demand patterns, allowing the system to proactively avoid placements that would likely cause violations and subsequent failovers.
Solution Approach 2:
The system collects historical resource demand traces from actual tenant database operations and uses this feedback to improve future placement decisions. The traces are stored and replayed in simulations to learn from past resource usage patterns, creating a closed-loop system that continuously improves placement accuracy.
2Measurement precision
If historical traces are stored in uncompressed form to maintain accuracy, then estimation precision is improved, but storage space and computational processing requirements increase
Solution Approach 1:
The system extracts only the essential characteristics and patterns from historical traces that are necessary for accurate probability estimation, rather than storing and processing complete raw trace data. This extraction allows the system to maintain estimation accuracy while significantly reducing storage requirements and computational overhead.
Solution Approach 2:
The system transforms the historical trace data from its original detailed form into a compressed representation that captures the essential resource demand patterns. By changing the parameters and structure of the stored data, the system achieves both space efficiency and maintained estimation accuracy.
Data Source
AI summary
Placement of a tenant database in an oversubscribed, database-as-a-service cluster comprised of a plurality of nodes is described. The placement may be based on per-node estimates of a probability of resource demand violation if the tenant database is placed on the node. Past resource usage of similar tenant databases subscribed to the cluster that are collected and stored as compressed traces may be used to obtain the estimates. In some examples, based on the estimates, a per-node expected number of resource violations is determined and compared across nodes, where the determined placement minimizes the number of resource violations. In other examples, when the tenant database is being placed in parallel with other tenant databases, a score assigned to each valid configuration for the placement may be modified based on the estimates, where the determined placement is the configuration having a lowest score.


