Data Collection System with Commit Lag Compensation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data commit lag in data sources leads to inconsistencies when collecting data, causing missing records during incremental queries, as modifications are not reflected in the database until after the query interval has passed.

Innovation Solution

A system that retrieves a commit lag timestamp to determine an inline crawl interval, performs queries to identify missing records due to commit lag, and stores data to maintain consistency by combining incremental and inline crawls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If incremental query is used to collect data at periodic intervals, then data collection efficiency is improved, but data consistency deteriorates due to commit lag causing missing records

Engineering Contradiction:
Improvedata collection efficiencyVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system retrieves the commit lag timestamp in advance before executing the incremental query, and uses this information to adjust the query parameters. This preliminary action allows the system to compensate for expected commit lag by querying from an earlier timestamp than the actual query start time, ensuring that records committed during the lag period are not missed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses the commit lag timestamp as feedback to dynamically adjust the incremental query parameters. By continuously monitoring the commit lag and using it to modify the query start time, the system creates a closed-loop control mechanism that adapts to changing commit lag conditions and maintains data consistency.

Inventive Principle:
Principle #23Feedback

2Reliability

If query interval is shortened to capture more frequent data changes, then data consistency is improved, but system resource consumption increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Instead of changing the query interval frequency, the system changes the query timestamp parameter by subtracting the commit lag duration from the intended query start time. This parameter adjustment allows the same query interval to effectively capture records that would have been missed due to commit lag, maintaining data consistency without increasing query frequency or resource consumption.

Inventive Principle:
Principle #35Parameter changes

3Speed

If commit lag is not accounted for in incremental query, then query performance is maintained, but data completeness deteriorates with missing records

Engineering Contradiction:
Improvequery performanceVSAvoiddata completeness
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The system performs a preliminary retrieval of the commit lag timestamp before executing the incremental query. This advance knowledge allows the system to adjust the query parameters to account for commit lag, ensuring that records committed during the lag period are captured without requiring additional query operations that would degrade performance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The commit lag timestamp acts as an intermediary parameter that bridges the gap between the intended query time and the actual data availability time. By using this intermediary to adjust the query start time, the system indirectly compensates for commit lag effects and ensures data completeness while maintaining query performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11526491B1Method and system for collecting data from data sources with commit lag to maintain data consistency in a data store
Publication Date: 2022.12.13 CLARI INC
  • US11526491B1 patent drawing
  • US11526491B1 patent drawing
  • US11526491B1 patent drawing

AI summary

A system performs a first query to retrieve a commit lag timestamp, where the commit lag timestamp specifies an earliest time instance when a record of an entity is inserted or updated, but is yet to be committed, to a data source. The system determines an inline crawl interval based on the commit lag timestamp. The system performs a second query based on the inline crawl interval to retrieve a number of record identifiers and/or modification dates. The system performs a third query based on the inline crawl interval, where the third query corresponds to records that exist in a data store. The system determines at least one identifier that is missing from the third query due to commit lag based on a difference between data corresponding to the second and third queries. The system persists data corresponding to the second query and the at least one missing identifier.