Wide-Area File System Namespace Consistency via Backpointer Propagation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current distributed file systems face limitations in speed, availability, and network economy, particularly in maintaining namespace consistency across multiple replicas in a wide-area environment.
Innovation Solution
The system employs pervasive replication and optimistic replication strategies, utilizing backpointers to maintain namespace consistency by propagating updates and resolving conflicts across replicas, ensuring that all replicas of a file become identical and that directory entries point to valid files.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data are replicated on local computers of users, then availability and reliability are improved, but namespace consistency becomes difficult to maintain
Solution Approach 1:
The patent implements a feedback mechanism where each replica maintains a backpointer to its parent directory and receives update notifications from other replicas. When a replica detects an update to its file or directory, it automatically propagates the change to other replicas and updates its backpointers accordingly, ensuring namespace consistency without centralized coordination.
Solution Approach 2:
Each replica autonomously maintains its own consistency by detecting updates locally and automatically propagating them to other replicas. The system does not require external coordination or manual intervention to maintain namespace consistency, as each node independently manages its replicas and backpointers.
2Reliability
If updates are propagated to all replicas, then namespace consistency is improved, but network traffic and processing overhead increase
Solution Approach 1:
The patent segments the file system into hierarchical units (files and directories) where only affected segments are updated. When a file is modified, only the specific file replica and its parent directory backpointers are updated, rather than propagating changes to the entire file system namespace. This reduces unnecessary network traffic.
Solution Approach 2:
Each replica maintains local quality by storing backpointers only to its immediate parent directory rather than maintaining global namespace information. This localized approach reduces the amount of data each replica must track and propagate, minimizing network overhead while maintaining consistency.
3Reliability
If parent directories are replicated at each node, then namespace consistency is improved, but storage requirements increase
Solution Approach 1:
The patent performs preliminary action by creating replicas of parent directories only when needed for file access. When a user accesses a file, the system proactively replicates the necessary parent directory structure at the user's node, ensuring namespace consistency is maintained without permanently storing unnecessary directory copies.
Solution Approach 2:
The system applies partial action by replicating only the specific parent directories that are ancestors of accessed files, rather than replicating the entire directory hierarchy. This selective replication minimizes storage requirements while maintaining consistency for actually used namespace paths.
Data Source
AI summary
The invention is a system for and a method of maintaining namespace consistency in a wide-area file system. In one embodiment, a wide-area file system has a plurality of replicas for a file. Each replica of a file and parent directories for the file are at a node. An update to a replica of the file is propagated to other replicas of the file. In response to receiving a propagated update to a replica at a node, the replica for the file at the node is updated. A directory operation (e.g., rename, link or unlink) may affect a backpointer for a replica. When a backpointer for a replica at a node is not consistent with the parent directories for the replica at the node, the the parent directories are modified to be consistent with the backpointer. A modification may be performed at a node while an earlier inconsistent modification may be ignored. As a result, consistency is maintained among the replicas.


