Dynamic Sampling of Application Events for Data Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The sheer volume of data generated by software applications overwhelms data-analyzing computer programs, necessitating effective methods to analyze and extract useful statistics from user interactions.

Innovation Solution

A server system dynamically samples application events based on their occurrence rates, storing the data in a first store, determining sampling rates for each event, and forming sets of usage data, which are then stored in a second store and used to generate reports.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If all usage data from multiple applications is stored and analyzed, then comprehensive insights into user behavior are obtained, but the volume of data becomes overwhelming and difficult to process

Engineering Contradiction:
Improvecompleteness of user behavior insightsVSAvoiddata processing complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the usage data by application and event type, organizing large volumes of data into manageable categories. Each application's events are separated and processed independently, allowing the system to handle comprehensive data while reducing processing complexity through structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and analyzes specific event types from the broader usage data. By identifying and separating distinct event categories (e.g., user interactions, system events), the system can process comprehensive data while focusing analysis on meaningful patterns, reducing overall processing complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If dynamic sampling rates are applied to reduce data volume, then processing efficiency improves, but the complexity of determining and managing sampling rates increases

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidsampling rate management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic sampling rates that automatically adjust based on real-time data characteristics. Sampling rates vary by application and event type, allowing the system to optimize processing efficiency while managing complexity through automated adaptation rather than manual configuration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the sampling rate parameter dynamically based on data volume and event characteristics. By adjusting this single critical parameter according to observed patterns, the system achieves efficient processing without requiring complex management of multiple fixed rates or manual intervention.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If usage data is stored in a first data store before sampling, then complete data is available for analysis, but storage requirements and data retrieval time increase

Engineering Contradiction:
Improvedata completenessVSAvoiddata retrieval time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of data in the first store by application and event type before sampling occurs. This pre-structuring allows the system to maintain data completeness while reducing retrieval time, as data is already arranged in a way that facilitates efficient sampling and analysis.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

By segmenting data into application-specific buckets with event type subcategories, the system enables complete data availability for analysis while reducing retrieval time. The segmented structure allows targeted queries and efficient sampling without requiring full data scans.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11436347B2Methods and systems for dynamic sampling of application events
Publication Date: 2022.09.06 META PLATFORMS INC
  • US11436347B2 patent drawing
  • US11436347B2 patent drawing
  • US11436347B2 patent drawing

AI summary

A method of dynamically sampling application events includes receiving usage data for a plurality of applications on client devices. The usage data includes data for instances of events that occur in the plurality of applications in response to users interacting with the plurality of applications on the client devices. The method further includes storing the usage data in a first data store, determining, for respective applications of the plurality of applications, sampling rates for respective application events of the plurality of application events based at least in part on respective quantities of instances of the respective application events during a period of time, sampling from the first data store the data for the instances of the respective application events at the sampling rates to form respective sets of usage data, and providing a report using one or more sets of the sets of usage data.