Lock Service Module Wildcard Data Object Locking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-user systems, especially in enterprise business software and computer systems, the existing lock mechanisms face limitations when handling mass transactions due to restricted hardware resources, leading to inefficiencies in data locking, where not all data can be locked via its key, resulting in performance issues and potential data inconsistencies.

Innovation Solution

A method and system that optimize data locking by creating lock objects using key fields and their values, where if the number of locks exceeds the limit, the system determines common characteristics and uses wildcards to efficiently lock data objects, thereby optimizing lock management and maintaining system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If every single piece of data is locked via its key in mass transactions, then data consistency is ensured, but system performance deteriorates due to hardware resource limitations

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent combines multiple lock requests into a single lock entry by using wildcards to represent multiple data objects. Instead of creating separate lock entries for each data object, the system merges them into one entry that covers a range of data objects using wildcard patterns, thereby reducing the total number of lock entries and improving system performance while maintaining data consistency.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent makes lock entries universal by designing them to cover multiple data objects simultaneously through wildcard patterns. A single lock entry can represent and protect multiple data objects that share common characteristics, allowing the lock mechanism to serve multiple functions with a single entry, thus reducing resource consumption and improving performance.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If wildcards are used to lock multiple data objects with one entry, then system performance is improved, but lock precision deteriorates

Engineering Contradiction:
Improvesystem performanceVSAvoidlock precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies local quality by using wildcards selectively in specific positions of lock entries rather than throughout. The system determines which positions should use wildcards and which should maintain specific values, allowing precise control over the scope of locking. This ensures that wildcards are used only where appropriate to improve performance without unnecessarily reducing lock precision.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses partial wildcards rather than complete wildcards, applying wildcards only to certain positions within lock entries. This partial action approach maintains sufficient precision for the specific application needs while still achieving performance improvements by reducing the number of lock entries. The system balances between using enough wildcards to improve performance and maintaining enough specificity to preserve necessary lock precision.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7529749B2Methods, systems and computer applications for real time data processing
Publication Date: 2009.05.05 SAP SE
  • US7529749B2 patent drawing
  • US7529749B2 patent drawing
  • US7529749B2 patent drawing

AI summary

Methods, systems and software applications are provided for real time data processing. In one implementation, a method is provided for locking data objects in a computer system. The method may also provide using a first processing module to request a lock service module and names of key fields of the data objects to be locked and creating lock objects for one or more data objects with the lock service module. In the method, the lock service module determines an optimized number of entries for locking the data objects by calculating the maximum number of entries required to lock the data objects and creating lock objects for the maximum number by using the lock service module creates lock objects by using names of key fields and using wildcards for names of key fields when the maximum number of entries is greater than the requested named of key fields.