Automated Database Cache Resizing for Cloud Workloads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As cloud services become increasingly complex and feature-rich, there is a need to maintain a highly optimized and efficient database server to handle fluctuating workloads and demands, which existing technologies struggle to achieve without manual intervention, leading to potential performance bottlenecks and downtime.
Innovation Solution
The implementation of an automated database cache resizing process that dynamically adjusts the buffer cache size based on performance monitoring and analysis of test queries, ensuring the database server operates efficiently by resizing the cache when necessary, such as when the largest table exceeds the buffer pool size, using a scaling factor like 70% of the sum of database storage and index sizes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the buffer cache size is increased to improve query performance, then database performance is improved, but system memory consumption increases and may cause other performance issues
Solution Approach 1:
The patent implements dynamic buffer cache resizing that automatically adjusts cache size based on real-time performance monitoring and workload analysis. The system transitions from static to dynamic memory allocation, allowing the buffer cache to adapt its size according to actual database needs, thereby optimizing performance while preventing excessive memory consumption.
Solution Approach 2:
The system employs performance monitoring that continuously tracks database query performance and uses this feedback to trigger automatic buffer cache resizing when performance thresholds are violated. This closed-loop feedback mechanism ensures the buffer cache size remains optimized without manual intervention, resolving the contradiction between performance improvement and resource consumption.
2Productivity
If manual buffer cache resizing is performed to optimize performance, then database performance can be improved, but system downtime increases and requires administrator intervention
Solution Approach 1:
The patent implements an automated buffer cache resizing system that performs self-diagnosis and self-adjustment without requiring administrator intervention. The system autonomously monitors performance, detects when resizing is needed, executes the resizing operation, and verifies performance improvement, thereby eliminating downtime associated with manual resizing operations.
Solution Approach 2:
The system performs preliminary performance monitoring and analysis to identify optimal resize timing, executing buffer cache resizing during low-activity periods or using online resizing capabilities to minimize impact on database operations. This preliminary planning and execution strategy reduces system downtime while maintaining performance optimization.
3Quantity of substance
If the buffer cache size is decreased to reduce memory consumption, then memory usage is optimized, but database query performance deteriorates
Solution Approach 1:
The system dynamically adjusts buffer cache size based on real-time performance metrics and workload characteristics, preventing both excessive memory consumption and performance degradation. Rather than using fixed size reductions, the system makes incremental adjustments that maintain performance thresholds while optimizing memory usage.
Solution Approach 2:
The patent changes the buffer cache size parameter dynamically based on performance monitoring data and workload analysis. The system adjusts this critical parameter to maintain optimal performance while reducing memory consumption when appropriate, resolving the contradiction between these two requirements.
4Productivity
If automated performance monitoring is implemented to trigger cache resizing, then performance optimization is improved, but system complexity increases
Solution Approach 1:
The patent implements a multi-functional performance monitoring system that not only tracks performance metrics but also automatically triggers and executes buffer cache resizing operations. This universal system combines monitoring, analysis, decision-making, and execution functions into an integrated solution, improving performance optimization while managing system complexity through consolidation.
Data Source
AI summary
A test query of a database is performed in response to determining that a performance associated with a user database query of the database does not satisfy a first performance threshold. In response to a determination that the performance of the test query satisfies a second performance threshold, a database buffer cache of the database is resized. Resizing the database buffer cache includes: determining a metric based at least in part on a storage size of the database and an index size of the database, and resizing the database buffer cache of the database based on the metric and a size of the database buffer cache.


