Dispersed Storage Data Update Protocol Using Predictive Pointers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current dispersed storage networks face inefficiencies in updating data revisions due to the need for extra write operations and increased I/O operations, which impact system performance and resource utilization.
Innovation Solution
The system employs different metadata references for old and new data revisions, allowing for a single write operation during the persist phase and subsequent deletion of the old reference, reducing the number of I/O operations and reclaimable data generated.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional data update protocol is used in dispersed storage network, then crash safety is guaranteed, but extra write operations and increased I/O operations occur which reduce system performance
Solution Approach 1:
The system performs preliminary actions by writing new data to a new location and generating a new pointer before deleting the old pointer. This preliminary establishment of the new data reference ensures that if a crash occurs during the update process, the system can recover with the new data intact, while avoiding the need for extra write operations to maintain crash safety.
Solution Approach 2:
The system discards the old pointer after successfully writing new data and generating a new pointer. By systematically discarding old references and recovering only the necessary new references, the system minimizes the number of write operations required while maintaining crash safety guarantees.
2Reliability
If traditional data update protocol is used in dispersed storage network, then data integrity is maintained, but number of I/O operations increases which reduces resource utilization
Solution Approach 1:
The system extracts only the essential write operations needed to maintain data integrity. By separating the critical integrity-maintaining writes from non-essential operations, the system performs only the minimum necessary I/O operations (writing new data once and deleting old pointers) while still guaranteeing data integrity through the persistent storage of new data references.
Solution Approach 2:
The system changes the update protocol parameters by eliminating redundant write operations. Instead of performing multiple writes to ensure integrity, the system uses a single write operation combined with selective pointer deletion, changing the operational parameters to reduce I/O overhead while maintaining integrity through the structured update process.
3Reliability
If traditional data update protocol is used in dispersed storage network, then crash safety is ensured, but extra write operations are performed which increase system complexity
Solution Approach 1:
The system performs preliminary actions by establishing new data references before removing old ones. This preliminary establishment simplifies the protocol logic by ensuring that crash safety is achieved through the order of operations rather than through complex redundant write mechanisms, thereby reducing protocol complexity while maintaining reliability.
4Reliability
If traditional data update protocol is used in dispersed storage network, then data consistency is maintained, but number of write operations increases which reduces throughput
Solution Approach 1:
The system discards old data references and recovers only the essential new references. This selective discarding and recovering approach maintains data consistency by ensuring new data is properly established before old data is removed, while significantly reducing the number of write operations required, thereby improving throughput.
Data Source
AI summary
A method includes: receiving, by a computing device, data for storage in a dispersed storage network; writing, by the computing device, the data to a first location; generating, by the computing device, a first pointer to the first location; receiving, by the computing device, updated data that is an updated version of the data; writing, by the computing device, the updated data to a second location; generating, by the computing device, a second pointer to the second location; and deleting, by the computing device, the first pointer at a time after writing the updated data and generating the second pointer.


