Database Workload Filtering for Accurate Production Replay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current testing approaches for database systems fail to replicate real production workloads in test environments, leading to inadequate validation of changes before they are introduced into production systems, which can result in performance issues or errors.

Innovation Solution

A method and apparatus that capture and replay the workload from a production database system to a test database system, allowing the test system to experience the same workload as the production system, enabling thorough validation of changes without disrupting the production environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test scripts are written to test commonly executed code paths, then functional testing can be performed, but the testing system is stressed only to a minimal extent and does not mimic production workload

Engineering Contradiction:
Improvefunctional testing coverageVSAvoidtesting system workload
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent captures actual production workload traces and replays them in the test environment, creating a copy of the real production workload pattern. This allows the test system to experience the same workload characteristics as production without requiring actual production data or users, thus achieving both functional testing coverage and realistic workload stress.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If human users are asked to use the test system as though it were a production system, then usage patterns can be observed, but the approach is very random and non-deterministic and often fails to reproduce actual load patterns

Engineering Contradiction:
Improveusage pattern coverageVSAvoidworkload pattern accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent captures production workload patterns in advance during a recording period, storing the actual sequence and characteristics of operations. During replay, this pre-captured workload is executed in the test environment, eliminating the randomness of manual user testing while preserving the authentic load patterns observed in production.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If all captured workload is replayed to the test database server, then complete workload replication is achieved, but the replay process becomes excessively long and inefficient

Engineering Contradiction:
Improveworkload replication accuracyVSAvoidreplay duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts and filters the captured workload to identify and replay only the most significant and representative operations. By taking out the essential workload characteristics and removing redundant or less critical operations, the system achieves adequate workload replication with significantly reduced replay time compared to replaying the complete captured workload.

Inventive Principle:
Principle #2Taking out (Extraction)

4Measurement precision

If the test database server processes workload in the same manner as the production database server, then accurate performance prediction is possible, but the approach requires extensive resources and time

Engineering Contradiction:
Improveperformance prediction accuracyVSAvoidtesting infrastructure requirements
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent uses a test database server with less expensive and smaller capacity hardware compared to the production system. By replaying filtered workload patterns rather than complete production workload, the test infrastructure can be simpler and more affordable while still providing accurate performance predictions through the representative workload characteristics.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS8732126B2Filtering workload for database replay
Publication Date: 2014.05.20 ORACLE INT CORP
  • US8732126B2 patent drawing
  • US8732126B2 patent drawing
  • US8732126B2 patent drawing

AI summary

A method and apparatus for capturing database system workload and replaying that workload in a database system is provided. According to one aspect, in order to subject a test database system to the same workload to which the production database system actually would be subjected, a database server in the production system captures and records workload that the database server receives from external entities. This captured workload is processed. Processes external to a database server in the test database system send the processed workload to that database server. As a result, the test database system is subjected to the same workload to which the production database system originally was subjected. The foregoing technique permits a database administrator to determine how the production database system will fare if the difference that is present in the test database system is introduced into the production database system.