Distributed storage method, apparatus, and system for reducing a data loss that may result from a single-point failure
First Claim
1. A distributed storage method, comprising:
- splitting, by a processor, a data file to generate K data slices;
splitting, by the processor, each data slice of the K data slices to generate M data blocks for each data slice;
performing, by the processor, check coding on the M data blocks by using a redundancy algorithm to generate N check blocks;
determining, by the processor, by using a random algorithm, a first physical storage node corresponding to one data block or one check block of the M data blocks or the N check blocks;
determining, by the processor, at least M+1 different physical storage nodes based on the first physical storage node and according to a first sorting manner that conforms to a preset rule; and
separately storing, by the processor, at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different physical storage nodes, wherein K, M, and N are positive integers.
1 Assignment
0 Petitions
Accused Products
Abstract
A distributed data storage method, apparatus, and system for reducing a data loss that may result from a single-point failure. The method includes: splitting a data file to generate K data slices, splitting each data slice of the K data slices to generate M data blocks for each data slice, and performing check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; determining, by using a random algorithm, a first physical storage node corresponding to one block of the M data blocks and the N check blocks, and determining at least M+1 different physical storage nodes based on the determined first physical storage node and according to a first rule-based sorting manner; and storing at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different storage nodes, where K, M, and N are integers.
-
Citations
31 Claims
-
1. A distributed storage method, comprising:
-
splitting, by a processor, a data file to generate K data slices; splitting, by the processor, each data slice of the K data slices to generate M data blocks for each data slice; performing, by the processor, check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; determining, by the processor, by using a random algorithm, a first physical storage node corresponding to one data block or one check block of the M data blocks or the N check blocks; determining, by the processor, at least M+1 different physical storage nodes based on the first physical storage node and according to a first sorting manner that conforms to a preset rule; and separately storing, by the processor, at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different physical storage nodes, wherein K, M, and N are positive integers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A distributed storage system, comprising:
-
a client; multiple physical storage nodes; and a distributed storage apparatus, wherein the distributed storage apparatus stores or reads a data file of a user onto or from the multiple physical storage nodes according to a storage or read request sent by the user through the client, and wherein the distributed storage apparatus comprises; a generating module configured to; split a data file to generate K data slices; split each data slice of the K data slices to generate M data blocks for each data slice; and perform check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; a determining module configured to; determine, by using a random algorithm, a first physical storage node corresponding to one data block or one check block of the M data blocks or the N check blocks; and determine at least M+1 different physical storage nodes based on the first physical storage node and according to a first sorting manner that conforms to a preset rule; and a storing module configured to store at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different physical storage nodes, wherein K, M, and N are positive integers. - View Dependent Claims (16)
-
-
17. A distributed storage apparatus, a processor and a memory coupled to the processor, wherein the processor is configured to:
-
split a data file to generate K data slices; split each data slice of the K data slices to generate M data blocks for each data slice; perform check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; determine by using a random algorithm, a first physical storage node corresponding to one data block or one check block of the M data blocks or the N check blocks; determine at least M+1 different physical storage nodes based on the first physical storage node and according to a first sorting manner that conforms to a preset rule; and separately store at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different physical storage nodes, wherein K, M, and N are positive integers. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A non-transitory computer-readable medium having computer executable instructions for performing an information publishing method comprising:
-
Splitting a data file to generate K data slices; Splitting each data slice of the K data slices to generate M data blocks for each data slice; performing check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; determining, by using a random algorithm, a first physical storage node corresponding to one data block or one check block of the M data blocks or the N check blocks; determining at least M+1 different physical storage nodes based on the first physical storage node and according to a first sorting manner that conforms to a preset rule; and separately storing at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different physical storage nodes, wherein K, M, and N are positive integers.
-
Specification