Replication Log Tracking Committed Transactions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In transaction processing systems, replicating data across servers can lead to inconsistencies due to challenges in coordinating updates and rollbacks, especially when multiple log files are involved, making it difficult to ensure data consistency.

Innovation Solution

A method and system for consistent replication of transactional updates that records entries in a replication log for data updates and corresponding transactions, indicating whether transactions have been backed out or committed, and only replicates updates associated with committed transactions, thereby excluding those from backed-out transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data replication is performed across servers in a distributed computing architecture, then high availability and disaster recovery are improved, but data consistency and coordination complexity deteriorate

Engineering Contradiction:
Improvehigh availabilityVSAvoidcoordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A replication coordinator is introduced as an intermediary component that manages the replication process between source and destination servers. The coordinator receives transaction logs from the source server, processes them, and selectively replicates only committed transactions to the destination server, thereby simplifying the coordination complexity while maintaining high availability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the replication coordinator receives acknowledgment from the destination server about replicated transactions and uses this information to track replication status. This feedback loop ensures that only committed transactions are successfully replicated and allows for rollback coordination, maintaining data consistency across distributed servers

Inventive Principle:
Principle #23Feedback

2Reliability

If multiple log files are employed for transaction logging, then transaction durability and recovery are improved, but coordination of updates and rollbacks deteriorates

Engineering Contradiction:
Improvetransaction durabilityVSAvoidcoordination of updates and rollbacks
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

Multiple log files that track different aspects of transactions (updates, rollbacks, commits) are merged into a unified replication log structure that the replication coordinator processes as a single stream. This consolidation allows the coordinator to understand the complete transaction history and make informed decisions about which transactions to replicate, simplifying coordination while maintaining durability

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The replication coordinator performs preliminary processing of transaction logs before replication, identifying which transactions are committed and which are rolled back in advance. This preliminary action allows the system to prepare replication commands that only include committed transactions, eliminating the need for complex coordination during the actual replication process

Inventive Principle:
Principle #10Preliminary action

3Productivity

If all data updates are replicated without filtering, then replication speed and completeness are improved, but data consistency deteriorates

Engineering Contradiction:
Improvereplication speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The replication process applies local quality filtering at the transaction level, where each transaction is individually evaluated to determine if it should be replicated. Committed transactions are replicated while rolled back transactions are excluded, ensuring data consistency is maintained at the transaction level without significantly impacting overall replication speed

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Instead of replicating all transactions (excessive action), the system selectively replicates only the subset of transactions that are committed (partial action). This partial replication approach maintains data consistency by excluding rolled back transactions while preserving replication efficiency for the relevant data changes

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9015116B2Consistent replication of transactional updates
Publication Date: 2015.04.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9015116B2 patent drawing
  • US9015116B2 patent drawing

AI summary

Embodiments of the present invention provide a method, system and computer program product for consistent replication of transactional updates. In an embodiment of the invention, a method for consistent replication of data in a transaction processing system is provided. The method includes recording entries in a replication log of different data updates and corresponding transactions and additionally recording entries in the replication log indicating whether or not the transactions have been backed out. The method also includes replicating only those data updates referenced in the log which do not correspond to transactions indicated in the log to have been backed out. For instance the additionally recorded entries in the replication log indicate when a transaction has been backed out. Alternatively, the additionally recorded entries in the replication log indicate when a transaction has been committed.