Cloud Memory Sizing via Dynamic Footprint Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cloud computing systems face inefficiencies in allocating memory resources to database servers, leading to performance degradation due to either insufficient or excessive resource allocation, resulting in wasted resources and increased costs.

Innovation Solution

A memory footprint-based customer sizing engine that periodically measures database server usage, calculates ratios, and determines optimal memory allocation using a lookup table, allowing for automated re-provisioning to ensure precise allocation of RAM resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory resources are allocated to database servers in cloud computing systems, then the servers can operate, but inefficient allocation leads to performance degradation and wasted resources

Engineering Contradiction:
Improvememory allocation efficiencyVSAvoidwasted memory resources
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system dynamically changes memory allocation parameters based on measured database server usage patterns. The customer sizing engine monitors actual memory consumption and adjusts the allocated memory size accordingly, transforming static allocation into dynamic adaptation to resolve the contradiction between ensuring sufficient resources and avoiding waste.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The database server instance automatically reports its own memory usage metrics to the customer sizing engine, which then determines optimal allocation. This self-service mechanism eliminates the need for manual intervention while enabling continuous optimization of memory resources based on actual usage patterns.

Inventive Principle:
Principle #25Self-service

2Loss of energy

If insufficient memory is allocated to database servers, then resource waste is reduced, but performance degradation occurs

Engineering Contradiction:
Improvememory resource efficiencyVSAvoiddatabase server performance
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The system implements a feedback loop where the customer sizing engine continuously monitors database server performance metrics and memory usage. Based on this feedback, the engine recalculates optimal memory allocation and triggers re-provisioning actions to maintain performance while optimizing resource efficiency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The memory allocation transitions from a static configuration to a dynamic system that adapts to changing workload conditions. The customer sizing engine enables real-time adjustments to memory allocation based on actual usage patterns, ensuring performance requirements are met while avoiding over-provisioning.

Inventive Principle:
Principle #15Dynamics

3Reliability

If excessive memory is allocated to database servers, then performance is maintained, but resource waste and costs increase

Engineering Contradiction:
Improvedatabase server performanceVSAvoidmemory resource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of allocating excessive memory to all database servers uniformly, the system applies partial optimization by identifying and adjusting only those instances where memory over-allocation occurs. The customer sizing engine analyzes individual server usage patterns and applies targeted memory adjustments, achieving resource efficiency without compromising the performance of servers that require higher allocation.

Inventive Principle:
Principle #16Partial or excessive action

4Device complexity

If manual memory allocation methods are used, then system complexity is low, but allocation precision and automation are insufficient

Engineering Contradiction:
Improveallocation system complexityVSAvoidmemory allocation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The customer sizing engine acts as an intermediary component between the database server instances and the cloud infrastructure management system. This mediator automatically collects usage metrics, calculates optimal memory allocation, and triggers re-provisioning actions, adding measurement precision and automation while maintaining manageable system complexity through a dedicated specialized component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10452529B1Techniques and devices for cloud memory sizing
Publication Date: 2019.10.22 SERVICENOW INC
  • US10452529B1 patent drawing
  • US10452529B1 patent drawing
  • US10452529B1 patent drawing

AI summary

Systems, apparatuses, and methods for cloud memory sizing are disclosed. An initial database memory allocation is determined for the provisioning of a database server instance. Periodically, sizes of key database tables of the database server instance are measured and an upper and a lower bound ratio are determined based on the key database table sizes and a buffer pool size. The upper and lower bound ratios are used to determine a desired memory allocation from which a report is generated including an interface for generating an instance move action for re-provisioning the database server instance with the desired memory allocation.