Dependency-Aware Parallel Replication for Inode Metadata
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Synchronous replication in computing environments faces increased replication latency and transition time due to inconsistencies between storage objects maintained by different nodes, particularly when metadata operations affect overlapping inodes, leading to sequential execution and increased latency.
Innovation Solution
Implementing dependency-aware parallel splitting of operations, where independent metadata operations are transmitted in parallel and dependent operations are replicated sequentially, considering additional factors like inode relationships, timestamp consistency, and qtree IDs to avoid inconsistencies and optimize replication efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If synchronous replication is implemented to provide zero recovery point objective, then data protection is improved, but replication latency increases due to sequential execution of operations affecting common inodes
Solution Approach 1:
The patent segments metadata operations into independent and dependent groups based on inode relationships. Independent operations (affecting different inodes) are replicated in parallel, while dependent operations (affecting common inodes) are replicated sequentially. This segmentation allows the system to achieve synchronous replication guarantees for dependent operations while parallelizing independent operations to reduce overall latency.
Solution Approach 2:
The patent dynamically determines the replication strategy by analyzing inode relationships between operations. The system evaluates whether operations affect common inodes and adjusts the replication approach accordingly - using parallel replication when inodes are independent and sequential replication when inodes overlap. This dynamic adaptation optimizes replication performance while maintaining data consistency.
2Stability of the object's composition
If sequential execution of metadata operations is used to maintain consistency, then data consistency is improved, but transition time to synchronous replication mode increases
Solution Approach 1:
The patent segments metadata operations into independent and dependent groups. Independent operations can be processed in parallel during transition, while dependent operations maintain sequential execution to ensure consistency. This segmentation enables faster transition to synchronous replication mode by allowing parallel processing of non-conflicting operations.
Solution Approach 2:
The patent performs preliminary analysis of inode relationships before replication to determine operation dependencies. By pre-evaluating which operations affect common inodes, the system can proactively group operations appropriately and avoid inconsistencies during transition, reducing the time needed to achieve synchronous replication state.
3Productivity
If parallel replication of operations affecting common inodes is implemented, then replication efficiency is improved, but inconsistencies between storage objects may occur
Solution Approach 1:
The patent segments operations into independent and dependent groups based on inode relationships. Independent operations (affecting different inodes) are safely replicated in parallel to improve efficiency. Dependent operations (affecting common inodes) are replicated sequentially to maintain consistency. This segmentation resolves the contradiction by applying the appropriate replication strategy to each operation group.
Solution Approach 2:
The patent implements feedback mechanisms to track operation execution and inode state changes during replication. The system monitors whether operations complete successfully and uses this feedback to determine if consistency issues arise, allowing dynamic adjustment of replication strategies while maintaining both efficiency and reliability.
Data Source
AI summary
Techniques are provided for dependency aware parallel splitting of operations. For example, a first operation and a second operation may be replicated in parallel from a first device to a second device if the operations only target a single common inode that is an access control list inode referenced by the operations. An operation that dereferences the access control list inode can be replicated in parallel with other operations if the operation does not have the potential to delete the access control list inode from the second device. In another example, operations may be replicated to the second device in parallel if the operations only affect a single common parent directory inode and where timestamps are only moved forward in time at the second device.


