Self-Designing Key-Value Storage Engine for Cloud Cost Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current key-value stores face challenges in scalability and cost optimization due to their design being tailored for specific workloads, leading to performance bottlenecks and excessive cloud costs when faced with diverse applications and data sizes, as organizations struggle to predict optimal configurations amidst complex design and pricing factors.

Innovation Solution

A self-designing key-value storage engine that automatically configures itself based on workload, cloud budget, and performance goals, utilizing an analytical distribution-aware I/O model and learned concurrency model to optimize data structure designs and hardware resources, allowing for a vast range of configurations that can adapt to changing requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If key-value stores are designed for specific workload types, then performance for that workload is optimized, but adaptability to other workload types deteriorates

Engineering Contradiction:
ImproveperformanceVSAvoidadaptability to workload types
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic workload classification that automatically detects and adapts to different workload types (read-heavy, write-heavy, mixed) in real-time. The system dynamically adjusts storage engine parameters and configuration based on the detected workload characteristics, enabling a single system to optimize performance across multiple workload types rather than being locked into a fixed design.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs parameter tuning mechanisms that automatically adjust storage engine parameters based on workload requirements. By changing parameters such as buffer sizes, block sizes, and engine configuration settings according to the detected workload type, the system achieves optimal performance for different workload scenarios without requiring manual reconfiguration or multiple specialized systems.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If manual configuration decisions are made based on past experience, then implementation is simple, but manufacturing precision of optimal configuration deteriorates

Engineering Contradiction:
Improveease of configurationVSAvoidconfiguration optimality
Core Design Contradiction:
Ease of manufactureVSManufacturing precision

Solution Approach 1:

The patent implements self-configuring capabilities where the storage system automatically classifies workloads and selects optimal storage engine configurations without requiring manual intervention. The system uses automated workload analysis and performance modeling to determine the best configuration parameters, eliminating the need for administrators to have deep expertise while achieving scientifically optimized configurations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback mechanisms that continuously monitor performance metrics and adjust configurations accordingly. By collecting performance data and using it to refine configuration decisions, the system iteratively improves its configuration accuracy, ensuring that the chosen parameters truly optimize performance for the given workload rather than relying on static rules or experience-based guesses.

Inventive Principle:
Principle #23Feedback

3Device complexity

If existing storage engines are used for diverse workloads, then device complexity is reduced, but productivity for specific workloads deteriorates

Engineering Contradiction:
Improvenumber of storage enginesVSAvoidworkload-specific performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent creates a universal storage system that can handle multiple workload types effectively through a single storage engine instance. The system achieves multi-functionality by dynamically adapting its behavior and parameters based on the workload type, allowing one storage engine to perform the roles that would traditionally require multiple specialized engines, thereby reducing system complexity while maintaining workload-specific performance.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11563803B1Optimized self-designing key-value storage engine
Publication Date: 2023.01.24 PRESIDENT & FELLOWS OF HARVARD COLLEGE
  • US11563803B1 patent drawing
  • US11563803B1 patent drawing
  • US11563803B1 patent drawing

AI summary

Embodiments of the invention utilize an optimized key-value storage engine to strike the optimal balance between cloud-cost and performance and supports queries, including updates, lookups, range queries, inserts, and read-modify-writes. Cloud cost is manifested in purchasing both storage and processing resources. The improved approach has the ability to self-design and instantiate holistic configurations given a workload, a cloud budget, and optionally performance goals and a set of Service Level Agreement (SLA) specifications. A configuration reflects an optimized storage engine design in terms of, for example, the individual data structures design (in-memory and on-disk) in the engine as well as their algorithms and interactions, a cloud provider, and the exact virtual machines to be used.