Time Series Data Parallel Transaction Shadow Space Locking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing time series management systems in supply chain management face challenges with parallel transactions attempting to change quantity data within the same time interval, leading to serial processing and increased lock penalties, where one transaction must wait for another to commit before making changes, and the lock resolution spans across multiple intervals rather than a single bucket.

Innovation Solution

Implementing a method that provides a persisted quantity for a time series time interval to one transaction, allowing a second transaction to access a consistent view without changing it, and recording changes in a shadow space, enabling parallel processing by locking and unlocking shadow space entries separately from the time series data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If serial processing is used to ensure data consistency, then data integrity is maintained, but transaction throughput decreases

Engineering Contradiction:
Improvedata integrityVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the time series data structure into multiple time interval buckets, where each bucket can be independently locked and processed. This allows parallel transactions to operate on different buckets simultaneously, increasing throughput while maintaining data integrity within each bucket through traditional locking mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces shadow copies as an intermediary layer between transactions and the actual time series data. Transactions first read from shadow copies, make changes locally, and then apply changes atomically to the main data structure. This mediator enables parallel processing while ensuring consistency through the copy-modify-apply pattern.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If locks span multiple time intervals, then data consistency across intervals is maintained, but lock contention increases

Engineering Contradiction:
Improvedata consistencyVSAvoidlock wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the time series into discrete time interval buckets, allowing locks to be applied to individual buckets rather than spanning multiple intervals. This segmentation reduces lock contention by enabling finer-grained parallelism, where transactions can lock and process single buckets independently without blocking other transactions working on different buckets.

Inventive Principle:
Principle #1Segmentation

3Reliability

If one transaction must wait for another to commit, then serial consistency is achieved, but processing efficiency decreases

Engineering Contradiction:
Improveserial consistencyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary actions by having transactions read data into shadow copies before making changes. This preliminary read phase can proceed in parallel without locking, and the actual commit phase only locks the specific bucket being modified. This separation of read and write phases enables parallel processing while maintaining consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses shadow copies to create isolated working environments for each transaction. Multiple transactions can simultaneously read from and modify their own shadow copies without interfering with each other. The copies are then applied to the main data structure in a controlled manner, achieving parallel processing with serial consistency guarantees.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10068197B2Method and apparatus for making changes to a quantity for a time interval within a time series
Publication Date: 2018.09.04 SAP SE
  • US10068197B2 patent drawing
  • US10068197B2 patent drawing
  • US10068197B2 patent drawing

AI summary

A method is described that involves providing a persisted quantity for a time series time interval to a first transaction, then, providing the same persisted quantity to a second transaction that operates in parallel with the first transaction. The second transaction is not permitted to change the persisted quantity. The method also involves replacing the persisted quantity with a second persisted quantity within the time series. The second persisted quantity is determined by the first transaction. The method also involves writing a persisted quantity change for the time series time interval. The persisted quantity change is determined by the second transaction.