Encoded Data Slice Retrieval for Reliable Distributed Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data storage systems face challenges with data integrity and security due to the failure of physical movement-based memory devices, such as disc drives, and the inefficiencies and security risks associated with redundant array of independent discs (RAID) solutions, particularly as data volume grows and maintenance demands increase.
Innovation Solution
A distributed storage network (DSN) system that uses error coding dispersal storage to partition data into slices, which are then stored across multiple geographically diverse locations, allowing for secure and reliable data retrieval even in the event of device failures, with a management system for data distribution, integrity verification, and access control.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If commercial-grade memory devices with physical movement are used for data storage, then storage capacity is achieved, but data integrity deteriorates due to routine bit level corruption and device failure
Solution Approach 1:
The patent divides data into multiple slices and stores them across different memory devices. This segmentation allows the system to retrieve data even if individual devices fail, as long as a sufficient number of slices are recovered. The data is split into segments that can be independently stored and retrieved, resolving the contradiction between using commercial-grade devices and maintaining data integrity.
Solution Approach 2:
The patent implements error correction coding that anticipates potential device failures before they occur. By预先 adding redundant information and error correction capabilities to the stored data, the system can recover from bit level corruption and device failures without losing data integrity, thus cushioning against future reliability issues.
2Reliability
If redundant array of independent discs (RAID) is used to protect against device failure, then data integrity is improved, but device complexity and maintenance overhead increase
Solution Approach 1:
Instead of using complex RAID arrays with multiple coordinated discs, the patent segments data into slices that can be independently stored on simple commercial-grade memory devices. This approach achieves similar reliability benefits without the complexity of RAID controller hardware and software, as each slice can be managed independently.
Solution Approach 2:
The patent accepts that commercial-grade memory devices will fail and adopts a strategy where data is replicated and distributed across multiple such devices. Rather than investing in expensive, complex redundant systems, the patent uses multiple inexpensive devices where failure is expected and planned for through the slicing and error correction approach.
3Reliability
If multiple redundant drives are used to replicate data, then reliability is improved, but storage capacity is reduced due to redundancy overhead
Solution Approach 1:
The patent applies error correction coding that adds only the minimum necessary redundancy to protect data. Rather than fully replicating data across multiple drives as in traditional RAID, the patent uses sophisticated error correction algorithms that add partial redundancy, achieving reliable data recovery with less overhead and better utilization of storage capacity.
Data Source
AI summary
A computing device includes a central processing unit (CPU) and a memory system module. The CPU includes a data dispersed storage error coding (DSEC) module operable to DSEC decode a set of encoded ingress data slices to recapture ingress data and DSEC encode egress data to produce a set of encoded egress data slices, an instruction DSEC module operable to DSEC decode a set of encoded instruction slices to recapture an instruction, and an arithmetic logic unit (ALU) operable to, execute the instruction on the ingress data and execute the instruction to produce the egress data. The memory system module is operable to coordinate retrieval of the set of encoded ingress data slices from memory, coordinate retrieval of the set of encoded instruction slices from the memory, and coordinate storage of the set of encoded egress data slices in the memory.


