Concurrent Update Management via Log-Based Collision Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for managing concurrent updates on data sets, such as serialization and fencing, incur unnecessary overhead and wait time, and often result in wasted time or data corruption due to the failure of updates to be committed simultaneously.

Innovation Solution

An update management system that detects transactional and batch updates, generates logs for these updates, and determines collisions by referencing the logs, allowing for the implementation of a collision policy to resolve conflicts without locking data, thereby reducing processing time and preventing data corruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If serialization or fencing is used to manage concurrent updates, then data consistency is maintained, but processing time increases and overhead is unnecessary

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by detecting updates and generating logs before actual data modification occurs. The log captures the state of data before a transactional update, enabling collision detection with batch updates before they execute, thus preventing time-consuming fencing or serialization while maintaining consistency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a log as an intermediary mechanism between transactional and batch updates. Instead of directly locking data or using fencing, the system uses the log (containing pre-update data images) as a mediator to detect collisions and resolve conflicts, eliminating the need for time-consuming direct data locking mechanisms

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If fencing mechanisms are used to prevent collisions, then data corruption is prevented, but unnecessary overhead is incurred

Engineering Contradiction:
Improvedata integrityVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the essential function of collision detection from complex fencing mechanisms. Instead of implementing full fencing with locks and wait queues, the system extracts only the critical function of detecting collisions by comparing update logs, thereby reducing system overhead while maintaining data integrity

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system creates a copy of the data state in the log before the transactional update executes. This copy is then used to detect collisions with batch updates without requiring actual data locking or fencing, reducing system complexity while preventing data corruption through collision detection

Inventive Principle:
Principle #26Copying

3Reliability

If updates are failed due to collisions, then data consistency is maintained, but time is wasted due to re-attempts

Engineering Contradiction:
Improvedata consistencyVSAvoidupdate throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements feedback by using the log (containing pre-update data images) to detect collisions between transactional and batch updates. This feedback mechanism allows the system to identify conflicts before execution and apply appropriate resolution policies, preventing wasted time on re-attempts while maintaining data consistency

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces dynamic collision detection that adapts to different update scenarios. Instead of statically failing all collisions, the system dynamically analyzes the log to determine actual conflicts and applies flexible resolution policies, improving update throughput while maintaining consistency through intelligent collision management

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11567925B2Concurrent update management
Publication Date: 2023.01.31 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11567925B2 patent drawing
  • US11567925B2 patent drawing
  • US11567925B2 patent drawing

AI summary

Aspects of the present disclosure relate to managing concurrent updates on data. A transactional update on at least one record within a data set is detected. A log is generated for the transactional update, the log including an image of the at least one record within the data set before the transactional update. A batch update is detected. A determination is made whether the batch update collides with the transactional update by referencing the log. In response to determining that the batch update collides with the transactional update, a collision policy is referenced. A collision action indicated in the collision policy is then issued.