Distributed Tracing Periodicity Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Detailed tracing operations during development and debugging can significantly impact system performance by consuming large amounts of processing, storage, and network bandwidth, leading to adverse effects on application performance.

Innovation Solution

A distributed tracing system divides trace objectives across multiple application instances, performs cost analysis to identify burdensome objectives, and optimizes data collection by analyzing periodicities, allowing for the aggregation of results to provide a holistic view of application performance while minimizing resource consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If detailed tracing operations are performed during development and debugging, then tracing data completeness and analysis accuracy are improved, but system performance deteriorates due to large amounts of processing, storage, and network bandwidth consumption

Engineering Contradiction:
Improvetracing data completenessVSAvoidsystem performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent divides the tracing system into multiple independent tracer instances distributed across different devices. Each tracer collects tracing data locally and independently, then results are aggregated to form a complete picture. This segmentation allows detailed tracing to be performed without concentrating all processing, storage, and network demands on a single system, thereby maintaining tracing data completeness while reducing the performance impact on any individual traced application.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If tracing operations consume large amounts of processing, storage, and network bandwidth, then tracing data quality is improved, but resource consumption increases causing adverse effects on application performance

Engineering Contradiction:
Improvetracing data qualityVSAvoidresource consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent extracts the tracing data collection function from the application being traced by using separate tracer instances that run independently on different devices. Each tracer extracts and collects relevant tracing data locally, then transmits results to a central aggregation point. This extraction allows high-quality tracing data to be collected while the resource consumption is distributed across multiple independent systems rather than being concentrated in the traced application, thereby reducing the adverse performance effects.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If multiple tracer instances are deployed across different devices, then tracing coverage and holistic view are improved, but system complexity increases

Engineering Contradiction:
Improvetracing coverageVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent combines the results from multiple independent tracer instances into a single aggregated tracing representation. Each tracer instance operates independently on different devices, providing broad tracing coverage and versatility. The complexity of managing multiple distributed tracers is mitigated by merging their results at the aggregation level, where a unified view of application performance is constructed without requiring complex coordination between tracer instances during data collection.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8997063B2Periodicity optimization in an automated tracing system
Publication Date: 2015.03.31 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8997063B2 patent drawing
  • US8997063B2 patent drawing
  • US8997063B2 patent drawing

AI summary

Periodicity similarity between two different tracer objectives may be used to identify additional input parameters to sample. The tracer objectives may be individual portions of a large tracer operation, and each of the tracer objectives may have separate set of input objects for which data may be collected. After collecting data for a tracer objective, other tracer objectives with similar periodicities may be identified. The input objects from the other tracer objectives may be added to a tracer objective and the tracer objective may be executed to determine a statistical significance of the newly added objective. An iterative process may traverse multiple input objects until exhausting possible input objects and a statistically significant set of input objects are identified.