In-Memory Log Record Buffering for Data Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data replication methods in data analysis systems face inefficiencies due to frequent random memory accesses and overheads from processing compensation records, particularly in change data capture (CDC) systems, which can lead to suboptimal performance and resource utilization.

Innovation Solution

The method involves buffering log records in-memory and using a compensation buffer to track logically deleted records, allowing for sequential memory access patterns and efficient I/O operations by skipping compensation records during replication, thereby improving the efficiency of data replication processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CDC systems process compensation records to maintain data consistency, then data reliability is improved, but processing overhead and time consumption increase

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by buffering log records in memory before replication and pre-identifying compensation records through tagging. This allows the replication system to skip compensation records during the actual replication process, reducing processing time while maintaining data consistency. The compensation records are marked with tags in advance so they can be efficiently identified and skipped during replication.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts and separates compensation records from the main log record stream by using tagging mechanisms. Compensation records are identified and isolated through the tagging process, allowing them to be excluded from the replication process. This extraction enables the system to process only the necessary records for replication, reducing overall processing overhead while maintaining data consistency through the separate tracking of compensation records.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If the system buffers all log records in memory for replication, then replication speed is improved, but memory resource consumption increases

Engineering Contradiction:
Improvereplication speedVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system applies local quality by differentiating the treatment of different log records through tagging. Instead of uniformly processing all buffered records, the system applies selective processing based on record types. Compensation records are tagged and treated differently from regular records, allowing the system to buffer all records for speed but process only necessary ones, optimizing both memory usage and replication speed.

Inventive Principle:
Principle #3Local quality

3Manufacturing precision

If the system processes compensation records during replication, then data accuracy is maintained, but processing overhead increases

Engineering Contradiction:
Improvedata accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The invention implements skipping by enabling the replication system to rush through compensation records without processing them. Through the tagging mechanism, compensation records are identified and skipped during replication, allowing the system to maintain data accuracy by excluding these records while significantly reducing processing overhead. The skip mechanism allows rapid replication of only the necessary records.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS11487714B2Data replication in a data analysis system
Publication Date: 2022.11.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11487714B2 patent drawing
  • US11487714B2 patent drawing
  • US11487714B2 patent drawing

AI summary

The present disclosure relates to a method for data replication in a data analysis system (100). A source database system (101) of the data analysis system (100) comprises a transaction log (106) storing log records generated by database transactions. The method comprises in response to determining (303) that a received log record is generated by a database transaction that rolls back a change of another database transaction whose log records are buffered in at least one record buffer, data indicative of a log record generated by the other database transaction buffering (305) in the compensation buffer tag data. The tag data may be used (311) for replicating to a target database system of the data analysis system buffered log records of the record buffer which are not marked as compensation records.