Master Data Versioning for Concurrent Update Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data management systems, concurrent changes to master data can lead to inconsistencies when multiple systems attempt to update the same data simultaneously, especially when updates have not been propagated across all systems.

Innovation Solution

A method is implemented where a client notifies a server of a proposed change to master data, and the server indicates if a concurrent change is occurring. The client then decides, with user input, whether to make or abort the change, and subsequently checks again for any subsequent concurrent changes before saving the proposed change.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple data management systems update the same master data concurrently without coordination, then each system can independently make updates, but data inconsistencies occur across systems

Engineering Contradiction:
Improveupdate speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs a preliminary consistency check by comparing the version number of the master data retrieved from the database with the version number provided by the client before allowing an update. This preliminary action detects concurrent modifications and prevents inconsistent updates from being applied, thereby maintaining data consistency while allowing rapid updates when no conflicts exist.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the system checks for concurrent changes before every update, then data consistency is maintained, but update operations become slower

Engineering Contradiction:
Improvedata consistencyVSAvoidupdate speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system uses version numbers as a parameter to track changes to master data. By comparing version numbers instead of performing complex conflict detection algorithms, the system maintains data consistency through a simple, fast numerical comparison. This parameter-based approach enables rapid consistency checks that do not significantly impact update speed.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the system allows concurrent updates without checking, then update operations are fast and simple, but data inconsistencies and loss occur

Engineering Contradiction:
Improveupdate throughputVSAvoiddata loss
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system implements a feedback mechanism where the database returns the current version number of the master data to the client during the update process. The client compares this returned version number with the version number it originally retrieved. If they differ, it indicates concurrent modifications occurred, and the client can respond by aborting the update or retrieving the latest data, thus preventing data loss while maintaining high update throughput through version-based feedback.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8600960B2Processing proposed changes to data
Publication Date: 2013.12.03 SAP SE
  • US8600960B2 patent drawing
  • US8600960B2 patent drawing
  • US8600960B2 patent drawing

AI summary

Processing proposed changes to data includes notifying a server of a proposed change to master data, receiving, from the server, an indication as to whether there is a concurrent change to the master data, where the concurrent change corresponds to a change to the master data in addition to the proposed change, and deciding whether to make the proposed change or to abort the change.