Database Cost Tracing via Contextual Query Markers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of web service architectures makes it difficult to diagnose database performance issues, as the source of workload on databases is obfuscated, and existing tracing mechanisms are inadequate for correlating web service invocations with database workload and cost metrics.

Innovation Solution

Reformulating database queries to include contextual information, such as client identifiers and globally unique identifiers, allows for the association of performance metrics with specific web service API invocations, enabling better tracing and cost allocation, and implementing throttling mechanisms based on predicted costs to manage resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If web services are hosted within a single computing environment to improve resource utilization, then productivity increases, but device complexity increases making cost calculation difficult

Engineering Contradiction:
Improveresource utilizationVSAvoidarchitecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the complex computing environment by introducing contextual information that divides and categorizes database workload by source web service. This allows the system to break down the monolithic complex architecture into traceable, measurable units that can be individually analyzed and costed, resolving the contradiction between resource consolidation and architectural complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces contextual information as an intermediary element that bridges the gap between web service invocations and database workload. This intermediary carries identification data through the complex architecture, enabling cost tracing without requiring fundamental changes to the consolidated computing environment structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple nested calls are made to computing resources to implement web service functionality, then adaptability increases, but difficulty of detecting and measuring increases making performance problem diagnosis difficult

Engineering Contradiction:
Improveservice functionalityVSAvoidperformance tracing
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies preliminary action by embedding contextual information at the beginning of the call chain, specifically when the web service invocation occurs. This pre-positioning of identification data ensures that as calls nest through multiple layers, the source information is already present and can be easily traced without requiring complex retrospective analysis of the nested call structure.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses contextual information as a form of identification 'color' or marker that persists through nested calls. This marker enables easy detection and measurement of performance issues by providing a consistent identifier that can be followed through the complex nested call structure, transforming an otherwise opaque system into one that is easily traceable.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS9613080B1Database cost tracing and analysis
Publication Date: 2017.04.04 AMAZON TECH INC
  • US9613080B1 patent drawing
  • US9613080B1 patent drawing
  • US9613080B1 patent drawing

AI summary

Web services hosted at a data center may employ architectural patterns that tend to obfuscate the source of queries made against databases and other resources in the data center. The queries may be the source of performance, capacity or utilization problems, and may contribute to the cost of hosting the web service. Web service invocations may be associated with identifiers that can be included in modified queries sent to databases and other resources. Summarized cost information may be calculated based on recorded associations between the identifiers and query performance information.