Dispersed Storage Network Write Conflict Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current distributed storage and task processing systems face challenges in ensuring data integrity and security, particularly in handling large datasets and complex tasks across geographically dispersed storage networks, where failures and network issues can lead to data loss and security breaches.
Innovation Solution
A distributed computing system that employs dispersed error encoding and decoding, using a network of geographically disparate DST execution units to store and process data, allowing for reliable and secure storage and retrieval of data, even in the presence of failures, through error correction and secure encoding techniques.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is stored in a dispersed storage network across multiple locations, then data security and fault tolerance are improved, but write request conflicts and data integrity challenges worsen
Solution Approach 1:
The system performs preliminary actions by encoding data into multiple dispersed portions and establishing version control mechanisms before storage. When write requests arrive, the system has pre-configured conflict resolution protocols and version tracking in place, allowing it to handle concurrent writes systematically rather than reactively
Solution Approach 2:
The system implements feedback mechanisms through version control tracking and conflict detection protocols. When multiple write requests target the same data object, the system monitors write versions, detects conflicts, and provides feedback to coordinate resolution, ensuring data integrity across the distributed network
2Reliability
If data is divided and stored across multiple DST execution units, then fault tolerance is improved, but data retrieval complexity and coordination overhead worsen
Solution Approach 1:
The system divides data into multiple segments stored across different DST execution units, with each unit maintaining independent copies. This segmentation enables fault tolerance since individual unit failures do not compromise overall data availability, while the modular structure simplifies retrieval by allowing parallel access to segments
Solution Approach 2:
The DST execution units are designed with universal capabilities to handle both storage and retrieval operations independently. Each unit can function autonomously to store data portions and retrieve them when needed, reducing coordination complexity compared to centralized control architectures
3Reliability
If version control tracking is implemented for write requests, then data integrity is improved, but processing overhead and system complexity worsen
Solution Approach 1:
The system creates simplified copies of version control information rather than maintaining complex version histories. Each DST execution unit stores version identifiers that represent data states, allowing conflict detection and resolution through comparison of these copies rather than full version history analysis, reducing processing overhead
Data Source
AI summary
A method to resolve conflicts arising from substantially concurrent write requests regarding a data object begins by a computing device of a dispersed storage network (DSN) issuing a write request for a dispersed storage error encoded version of the data object to storage units of the DSN. The method continues with the computing device receiving write responses, each including either a lock indication or a non-lock indication and conflict information. The method continues with the computing device determining whether at least a write threshold number of received write responses include the lock indication. When less than the at least a write threshold number of write responses have been received that include the lock indication, the method continues with the computing device processing the conflict information to identify one or more other write requests that have a higher priority than the write request and establishing a write request retry time frame.


