Conditional Writes in Distributed Storage Services
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing distributed file systems face challenges in maintaining high availability and durability while supporting large-scale, concurrent access to files across thousands of clients, particularly due to limitations in industry-standard file system interfaces that struggle with asynchronous interactions, component failures, and network delays.
Innovation Solution
A modular architecture for a distributed file storage service that separates metadata and data into distinct subsystems, using replication techniques like erasure coding and consensus-based state machines to ensure sequential consistency and durability, while allowing for independent scaling and failure recovery of access, metadata, and storage nodes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If industry-standard file system interfaces are used, then compatibility and ease of operation are improved, but reliability and consistency deteriorate due to asynchronous interactions, component failures, and network delays
Solution Approach 1:
The patent introduces an intermediary layer between the file system interface and the distributed storage system that translates high-level file operations into low-level storage operations. This intermediary handles consistency management, failure recovery, and coordination across distributed components, allowing the system to maintain reliability while preserving ease of operation through standard interfaces.
2Adaptability or versatility
If distributed system architecture is implemented, then scalability and adaptability are improved, but consistency and reliability worsen due to asynchronous interactions and network partitions
Solution Approach 1:
The patent segments the distributed storage system into independent modular components including metadata servers, data servers, and clients. Each segment operates semi-independently with well-defined interfaces, allowing the system to scale and adapt while maintaining consistency through coordinated operations across segments. The segmentation enables localized failure containment and independent recovery.
Solution Approach 2:
The patent implements feedback mechanisms where distributed components continuously exchange status information, operation results, and consistency state data. This feedback enables the system to detect and recover from failures, maintain consistency across network partitions, and adapt to changing system conditions while preserving overall reliability.
3Ease of operation
If standard file system interfaces are used, then ease of operation is improved, but productivity deteriorates due to performance limitations in handling large-scale concurrent access
Solution Approach 1:
The patent introduces additional operational dimensions by implementing parallel operation pipelines, asynchronous processing layers, and multi-path data flows. These dimensional additions allow the system to handle large-scale concurrent access efficiently while maintaining the simplicity of standard file system interfaces for users, thereby improving productivity without sacrificing ease of operation.
Data Source
AI summary
A node of a distributed storage service receives a read request from a client, directed to a particular physical page storing at least a portion of a file store object. The node transmits, to the client, a particular operation sequence number (OSN), obtained from a replicated state machine, indicative of an order in which the read request was processed at the node relative to other requests directed to the file store object. The node receives a write request from the client directed to the page. The write request includes the particular OSN. The node determines whether the page has been modified after the particular OSN was obtained. If the page has not been modified since the OSN was obtained, a modification indicated in the write request is performed; otherwise, the write request is rejected.


