Client Event Timeline Branching for Low-Overhead Data Enrichment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing application instrumentation methods for client devices consume significant computing resources and bandwidth due to long instrumentation cycles and inefficient data processing for event tracking and analytics.
Innovation Solution
A specialized data logging feature on client devices processes events using a plug-in architecture that splits data streams for separate processing and enrichment, allowing efficient data handling and reduced resource consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional application instrumentation methods are used for event tracking and analytics, then comprehensive data collection is achieved, but computing resource usage and bandwidth consumption increase significantly
Solution Approach 1:
The patent segments the monolithic instrumentation cycle into distinct phases: event detection, data buffering in memory allocations, selective processing, and targeted transmission. This segmentation allows the system to collect comprehensive event data without immediately processing all data, thereby reducing peak computing resource usage while maintaining data completeness.
Solution Approach 2:
The patent introduces intermediary components including buffer memory allocations and selective processing logic that mediate between event detection and data transmission. These intermediaries decouple the data collection process from resource-intensive processing and transmission operations, reducing immediate computing resource consumption while preserving comprehensive data capture.
2Measurement precision
If traditional application instrumentation methods are used for event tracking and analytics, then comprehensive data collection is achieved, but bandwidth consumption increases significantly
Solution Approach 1:
The patent segments the data transmission process by buffering event data in memory allocations and selectively transmitting only processed or prioritized data subsets. This segmentation reduces the volume of data transmitted over the network at any given time, thereby reducing bandwidth consumption while maintaining comprehensive data collection through buffered storage.
Solution Approach 2:
The patent performs preliminary data processing and filtering actions before transmission by pre-processing event data in memory buffers. This preliminary action reduces the data volume requiring network transmission while ensuring comprehensive data collection, thereby reducing bandwidth consumption without sacrificing measurement completeness.
3Measurement precision
If traditional application instrumentation methods are used, then event data processing is performed, but instrumentation cycles become long and performance deteriorates
Solution Approach 1:
The patent segments the instrumentation cycle into distinct phases (detection, buffering, processing, transmission) that can operate asynchronously. This segmentation allows event detection to continue at full speed while processing occurs in manageable batches, improving overall instrumentation cycle throughput while maintaining processing accuracy.
Solution Approach 2:
The patent maintains continuous event detection and buffering operations while processing occurs in parallel or asynchronously. This continuity ensures no event data is lost during processing, maintaining measurement accuracy while improving overall system throughput and reducing instrumentation cycle duration.
Data Source
AI summary
Described are systems, methods, and computer-readable storage mediums for processing an event that is detected on a client device. The event is processed at a first data stream corresponding to a first branch of an event processing timeline. The processing of the event at the first data stream includes performing initial processing and initial data enrichment of data associated with the event. After the initial processing and data enrichment, the event is processed at a second data stream corresponding to a second branch of the event processing timeline in parallel with the processing of the event at the first data stream. The processing of the event at the second data stream includes performing additional initial data processing and additional data enrichment of the data associated with the event. The additional initial data processing and the additional data enrichment is specific to a destination associated with the event. After the additional initial data processing and the additional data enrichment, the event is conditionally forwarded to the destination associated with the second branch.


