Database Replication via Logical Log Shipping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database replication is a complex task that requires significant computing and network resources, particularly due to the need for synchronous execution of DML statements across multiple nodes, leading to performance penalties and increased network traffic.
Innovation Solution
The use of data manipulation language (DML) statements and logical log shipping, where DML statements are executed on a master node, logged, and sent to slave nodes for execution, allowing for decoupled execution and management, including logical log grouping to optimize network resource usage and reduce replication overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If synchronous execution of DML statements is performed across multiple nodes, then database consistency is maintained, but network resources and computing resources are significantly consumed
Solution Approach 1:
The patent segments the replication process into independent components: the master node executes DML statements and generates logical logs, which are then independently shipped to and executed on slave nodes. This segmentation allows asynchronous operation while maintaining consistency through transaction boundaries, reducing the need for continuous synchronous communication and thereby conserving network and computing resources.
2Productivity
If database replication is performed across multiple nodes, then scalability and localized access are improved, but network traffic increases
Solution Approach 1:
The patent merges multiple logical logs into batches for shipping to slave nodes. By combining multiple replication operations into single network transmissions, the system reduces the total volume of network traffic while still achieving replication across multiple nodes, thus supporting scalability and localized access with optimized resource usage.
3Reliability
If DML statement execution is coupled with logical log shipping and processing, then transaction consistency is ensured, but performance penalties occur due to waiting for confirmation
Solution Approach 1:
The patent implements preliminary action by having the master node execute DML statements and generate logical logs before shipping them to slave nodes. The master node does not wait for confirmation of slave node execution to proceed with subsequent operations, as long as transaction boundaries are maintained. This preliminary execution approach improves performance while ensuring consistency through the transactional framework.
4Manufacturing precision
If logical logs are sent individually to each slave node, then replication accuracy is maintained, but network overhead increases
Solution Approach 1:
The patent combines multiple logical logs into batches before shipping to slave nodes. This merging reduces the number of individual network transmissions required, thereby reducing network overhead and resource consumption. The batched approach maintains replication accuracy because each logical log within the batch is still processed correctly on the slave nodes, and transaction boundaries ensure consistency.
Data Source
AI summary
Technologies are described for performing replication within a database environment. For example, replication of database data can be performed using data manipulation language (DML) statements and logical logs. A database node can execute a DML statement, create a logical log comprising the DML statement, and insert the logical log into a logical log queue. The logical log can be sent to one or more other database nodes for execution of the DML statement stored within the logical log. Logical logs can be grouped for sending to other nodes. Logical logs can be executed on a first node and one or more other nodes within the same transaction boundary. Execution of DML statements can be decoupled from sending, receiving, grouping, and/or processing of logical logs.


