Transaction Segmentation for Reliability-Throughput Trade-off

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional transactional data processing systems face performance issues due to rigid ACID properties, which can slow system performance, especially when dealing with short-lived data items and high throughput, and existing systems struggle to manage transactions spanning multiple reliability levels effectively.

Innovation Solution

The method involves analyzing transactions to determine the reliability levels of operations, dividing them into sub-transactions based on these levels, and dispatching each sub-transaction to a persistence manager for execution, allowing for varying degrees of persistence and flexibility in data management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If rigid ACID properties are enforced for all transactions, then data integrity is guaranteed, but system performance and throughput deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments transactions into sub-transactions based on reliability levels. Each sub-transaction is assigned a specific reliability level (persistent, non-persistent, or semi-persistent), allowing different durability guarantees for different parts of the same transaction. This segmentation enables the system to apply ACID properties only where necessary while improving overall throughput.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different reliability qualities to different operations within a transaction based on local requirements. Each operation can be marked with its own reliability level, allowing the system to enforce strict durability only for critical operations while using more performance-friendly approaches for non-critical operations.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If varying reliability levels are permitted for different operations, then system flexibility and throughput improve, but transaction management complexity increases

Engineering Contradiction:
Improvereliability flexibilityVSAvoidtransaction management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces dynamic transaction management where the reliability level of each operation can be determined at runtime based on data item characteristics and system state. The system dynamically adjusts persistence requirements, creating sub-transactions with appropriate durability guarantees rather than using a static one-size-fits-all approach.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the reliability parameter of operations based on the reliability level of the data items they operate on. By associating reliability levels with data items and propagating these levels to operations, the system automatically adjusts transaction durability parameters without requiring complex manual configuration.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If all operations in a transaction are hardened to persistent store, then durability is ensured, but processing speed and concurrency deteriorate

Engineering Contradiction:
Improvetransaction durabilityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent applies partial hardening to persistent storage by only persisting operations that require durability guarantees. Non-critical operations can be processed and committed more quickly without full persistent storage hardening, achieving sufficient durability with faster processing speeds through selective persistence.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7647295B2Method, apparatus, computer program, and computer program product for managing the durability of a pluraliy of transactions
Publication Date: 2010.01.12 SAP SE
  • US7647295B2 patent drawing
  • US7647295B2 patent drawing
  • US7647295B2 patent drawing

AI summary

Method, apparatus, computer program, and computer program product for managing the durability of a plurality of transactions, each transaction including a plurality of operations, each operation for applying to a data item, each operation having a reliability level associated therewith. Each transaction is divided into one or more sub-transactions based upon reliability level of the operations. Sub-transactions are then dispatched to a persistence manager for execution against a persistent store.