Dynamic Cloud Data Store Benchmarking via Adaptive Workload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional benchmarking engines for cloud data stores cannot dynamically adjust workloads during testing and typically terminate after a predetermined time, making it difficult to evaluate performance and detect issues like memory leaks in long-running applications.

Innovation Solution

A computer-implemented method that allows for dynamic re-configuration of workload generation operations based on real-time statistics, enabling continuous testing without termination, and supporting indeterminate execution times to emulate long-running scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a conventional benchmarking engine is used to evaluate cloud data store performance, then the evaluation process is straightforward and structured, but the workloads cannot be adjusted during execution and the engine must terminate after a predetermined time, increasing total evaluation time and preventing detection of long-term issues like memory leaks

Engineering Contradiction:
Improvebenchmarking process structureVSAvoidtotal evaluation time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The benchmarking engine transitions from a static, predetermined execution model to a dynamic, adaptive model where workloads can be modified during runtime. The system continuously monitors performance metrics and automatically adjusts workload parameters (such as throughput, operation types, and load intensity) based on real-time data store performance, enabling flexible evaluation without termination and detection of long-term stability issues

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements a feedback loop where performance statistics from the data store are continuously collected and analyzed, then used to dynamically adjust subsequent workload generation. This closed-loop control enables the benchmarking engine to adapt its testing strategy based on observed performance, optimizing evaluation efficiency while maintaining comprehensive coverage of performance characteristics

Inventive Principle:
Principle #23Feedback

2Productivity

If the workload throughput is increased to accelerate evaluation, then productivity improves, but the cloud data store may become overloaded and performance measurements become inaccurate

Engineering Contradiction:
Improveevaluation speedVSAvoidperformance measurement accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The workload generation is made dynamic and adaptive rather than static. The system continuously monitors data store performance metrics and automatically adjusts workload throughput to maintain optimal measurement conditions. When performance degradation is detected, the system reduces throughput to prevent overload; when performance is stable, it increases throughput to accelerate evaluation, thereby maintaining both speed and accuracy throughout the benchmarking process

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system dynamically changes workload parameters (throughput, operation mix, load intensity) based on real-time performance observations. By continuously adjusting these parameters rather than maintaining fixed values, the system optimizes the balance between evaluation speed and measurement accuracy, ensuring that the data store operates in a measurable state while still completing the benchmarking process efficiently

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11297138B2Techniques for dynamically benchmarking cloud data store systems
Publication Date: 2022.04.05 NETFLIX INC
  • US11297138B2 patent drawing
  • US11297138B2 patent drawing
  • US11297138B2 patent drawing

AI summary

In various embodiments, a benchmarking engine automatically tests a data store to assess functionality and/or performance of the data store. The benchmarking engine generates data store operations based on dynamically adjustable configuration data. As the benchmarking engine generates the data store operations, the data store operations execute on the data store. In a complementary fashion, as the data store operations execute on the data store, the benchmarking engine generates statistics based on the results of the executed data store operations. Advantageously, because the benchmarking engine adjusts the number and/or type of data store operations that the benchmarking engine generates based on any changes to the configuration data, the workload that executes on the data store may be fine-tuned as the benchmarking engine executes.