Transaction History Manager for Chronological Sequencing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face challenges in determining the chronological order of transactions executed on objects, which is crucial for processes like garbage collection, statistics, and replication, but existing methods lack an efficient mechanism to accurately sequence and publish transaction records.

Innovation Solution

A transaction history manager uses a finite state machine to determine the chronological order of transactions by identifying executable transactions from each state, storing transaction records, and publishing them in the correct order, ensuring accurate sequencing and coordination across the system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If transaction records are stored and published without a systematic sequencing mechanism, then the storage system can operate with simpler architecture, but the chronological accuracy of transaction ordering deteriorates

Engineering Contradiction:
Improvechronological accuracyVSAvoidsystem architecture complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

A transaction history manager is introduced as an intermediary component between the storage system and transaction processing components. This manager maintains a transaction history that records transactions in chronological order and provides sequenced transaction information to garbage collectors, statistics engines, and replication engines, thereby ensuring chronological accuracy without requiring complex coordination among all system components

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The transaction history manager implements a feedback mechanism where transactions are recorded and their chronological sequence is maintained and published back to the system. This feedback loop ensures that components like garbage collectors and replication engines receive accurately ordered transaction information, enabling them to perform their functions with correct chronological context

Inventive Principle:
Principle #23Feedback

2Measurement precision

If a finite state machine is used to determine transaction sequences, then the chronological ordering precision is improved, but the computational complexity and processing time increase

Engineering Contradiction:
Improvetransaction sequencing precisionVSAvoidtransaction processing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The finite state machine is configured to identify executable transactions from each state in advance, before actual transaction execution. By pre-determining valid transaction sequences and maintaining a transaction history that reflects chronologically ordered transactions, the system avoids complex real-time analysis during transaction processing, thereby maintaining both high sequencing precision and acceptable processing speed

Inventive Principle:
Principle #10Preliminary action

3Reliability

If transaction histories are maintained for all objects, then the reliability of garbage collection and replication processes is improved, but the memory consumption and storage overhead increase

Engineering Contradiction:
Improveprocess reliabilityVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The transaction history is extracted and maintained as a separate, dedicated data structure within the transaction history manager, rather than being embedded within each object's metadata. This separation allows the system to maintain comprehensive transaction histories for reliability while managing memory consumption through centralized control and efficient data structures in the metadata tier

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11726979B2Determining a chronological order of transactions executed in relation to an object stored in a storage system
Publication Date: 2023.08.15 ORACLE INT CORP
  • US11726979B2 patent drawing
  • US11726979B2 patent drawing
  • US11726979B2 patent drawing

AI summary

Techniques for determining a chronological order of transactions executed in relation to an object stored in a storage system are disclosed. A transaction history, stored in association with an object, includes information identifying transactions executed in relation to the object. A transaction history manager obtains information describing a state machine from a data repository. The state machine defines a finite set of states that may be assumed by objects stored in the storage system. The state machine specifies transaction types that may be executed from each state. Based on the state machine, the messaging service determines a sequence of states assumed by the object. The messaging service determines a particular transaction that is executable from each state assumed by the object. Hence, the messaging service determines a chronological order of the transactions stored in the transaction history.