CN115454712B - Check code recovery method, system, electronic equipment and storage medium - Google Patents

Check code recovery method, system, electronic equipment and storage medium Download PDF

Info

Publication number
CN115454712B
CN115454712B CN202211409901.7A CN202211409901A CN115454712B CN 115454712 B CN115454712 B CN 115454712B CN 202211409901 A CN202211409901 A CN 202211409901A CN 115454712 B CN115454712 B CN 115454712B
Authority
CN
China
Prior art keywords
check code
global
local
transformation
data block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211409901.7A
Other languages
Chinese (zh)
Other versions
CN115454712A (en
Inventor
吴睿振
王小伟
王凛
陈静静
张永兴
张旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211409901.7A priority Critical patent/CN115454712B/en
Publication of CN115454712A publication Critical patent/CN115454712A/en
Application granted granted Critical
Publication of CN115454712B publication Critical patent/CN115454712B/en
Priority to PCT/CN2023/085989 priority patent/WO2024098647A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

The application discloses a check code recovery method, a check code recovery system, electronic equipment and a storage medium, and belongs to the technical field of data storage. The check code recovery method comprises the following steps: generating a global check code and a local check code of the data block; determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code; generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation; determining a transformation parameter for transformation between the global check code and the local check code according to the check code transformation relation; and recovering the error-reported global check code or local check code by using the transformation parameters. The process of recovering the check code does not need to carry out recoding calculation according to the data code, the calculation amount of recovering the check code can be reduced, and the recovery efficiency of the check code is improved.

Description

Check code recovery method, system, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of data storage, and in particular, to a method and system for recovering a check code, an electronic device, and a storage medium.
Background
In the face of the storage requirement of mass data, the distributed storage gradually replaces the dominant position of unified storage by the advantages of low cost, good expandability and the like, and has gained more and more attention in the aspects of theoretical research and practical application. On the other hand, a distributed storage system usually comprises a plurality of nodes, and the system often has node failure due to software and hardware failures, human errors and the like. In order to improve the data reliability of the distributed storage system and ensure that the data collection node can realize the reconstruction of the original file with high probability, a certain amount of redundancy needs to be additionally stored on the basis of storing the original data, so that the system can still normally operate under the condition that partial nodes fail, and the data collection node can still realize decoding recovery of the original file. Meanwhile, in order to maintain the reliability of the system, the failed nodes need to be repaired in time, and a well designed node repair mechanism is very important.
Most of distributed storage is data for protecting users, so that when a power failure and other scenes occur, the data of the users can be recovered, and usually, an erasure correction disk group is constructed by using the above-mentioned erasure correction and other algorithms to protect the erasure correction disk group. When data protection is performed by using erasure correction of the RS, all remaining data need to be taken out for operation in any error. The LRC (local check code) improves the error correction speed under a single error scene with the maximum probability by increasing a local redundant code. However, all erasure correcting disk group protection presupposes that the parity code block is complete, and although the LRC improves the speed of data disk error recovery, the error of the parity code block still needs to take out all the remaining data blocks.
Therefore, how to reduce the calculation amount of recovering the check code and improve the recovery efficiency of the check code is a technical problem that needs to be solved by those skilled in the art at present.
Disclosure of Invention
The application aims to provide a check code recovery method, a check code recovery system, an electronic device and a storage medium, which can reduce the calculation amount of recovery of check codes and improve the recovery efficiency of check codes.
In order to solve the above technical problem, the present application provides a check code recovery method, including:
generating a global check code and a local check code of the data block;
determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code;
generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation;
determining a transformation parameter for transformation between the global check code and the local check code according to the check code transformation relation;
and recovering the error-reported global check code or local check code by using the transformation parameters.
Optionally, the generating the global check code of the data block includes:
and generating the global check codes corresponding to all the data blocks through an RS algorithm.
Optionally, determining a first transformation relationship between the data block and the global check code includes:
determining the first transformation relation between the data block and the global check code according to an RS algorithm;
wherein the first transformation relationship is: p is a radical of i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k ;p i Denotes the ith global check code, a i1 、a i2 、…、a ik Represents the calculation p i K RS algorithm parameters, x, used j Represents the jth data block, j is more than or equal to 1 and less than or equal to k, and k represents the total number of the data blocks.
Optionally, the generating the local check code of the data block includes:
and dividing all the data blocks into m data block groups, and generating a local check code corresponding to each data block group through an RS algorithm.
Optionally, determining the second transformation relationship between the data block and the local check code includes:
determining the second transformation relation between the data block and the local check code according to an RS algorithm;
wherein the second transformation relation is: lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st ;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, l n1 、l n2 、…、l nt Indicating the calculation of lp n T RS algorithm parameters, x, used s1 、x s2 、…、x st Denotes the s1 th to st th data blocks.
Optionally, generating a check code transformation relationship between the global check code and the local check code by combining the first transformation relationship and the second transformation relationship, includes:
establishing an equation set according to the first transformation relations corresponding to all the global check codes and the second transformation relations corresponding to all the local check codes;
solving the equation set to obtain the check code transformation relation; wherein, the expression corresponding to the check code transformation relation is as follows: lp 1 ⊕lp 2 ⊕…⊕lp m ⊕p 1 *pp 1 ⊕p 2 *pp 2 …⊕p r *pp r =0;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, m represents the total number of the local check codes, p i Representing the ith global check code, i is more than or equal to 1 and less than or equal to r, r represents the total number of the global check codes, pp i A transformation parameter representing a transformation between the global check code and the local check code.
Optionally, recovering the error-reported global check code or local check code by using the transformation parameter includes:
if the target local check code is in error, judging whether the number of the target local check codes is more than 1;
and if the number of the target local check codes is equal to 1, recovering the target local check codes by using the transformation parameters, all the global check codes and all the local check codes except the target local check codes.
Optionally, after determining whether the number of the target local check codes is greater than 1, the method further includes:
if the number of the target local check codes is larger than 1, setting the data block group corresponding to the target local check codes as a target data block group;
and recovering the target local check code by using all the data blocks in the target data block group.
Optionally, recovering the error-reported global check code or local check code by using the transformation parameter includes:
if the target global check code is in error, judging whether the number of the target global check codes is more than 1;
and if the number of the target global check codes is equal to 1, recovering the target global check codes by using the transformation parameters, all the local check codes and all the global check codes except the target global check codes.
Optionally, determining whether the number of the target global check codes is greater than 1 further includes:
and if the number of the target global check codes is larger than 1, recovering the target global check codes by using the data blocks.
Optionally, the method further includes:
judging whether the data block has errors or not;
if yes, recovering the error-reported data block by using the global check code or the local check code.
Optionally, before generating the global check code and the local check code of the data block, the method further includes:
and receiving original data stored by a user, and splitting the original data to obtain k data blocks.
The present application further provides a check code recovery system, which includes:
the check code generating module is used for generating a global check code and a local check code of the data block;
the transformation relation determining module is used for determining a first transformation relation between the data block and the global check code and determining a second transformation relation between the data block and the local check code; the check code conversion relation is used for combining the first conversion relation and the second conversion relation to generate a check code conversion relation of the global check code and the local check code;
the parameter determining module is used for determining a transformation parameter for transforming between the global check code and the local check code according to the check code transformation relation;
and the check code recovery module is used for recovering the error-reported global check code or local check code by using the transformation parameters.
The application also provides a storage medium, on which a computer program is stored, and the computer program realizes the steps executed by the check code recovery method when executed.
The application also provides an electronic device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor realizes the step executed by the check code recovery method when calling the computer program in the memory.
The application provides a check code recovery method, which comprises the following steps: generating a global check code and a local check code of the data block; determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code; generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation; determining a transformation parameter for transformation between the global check code and the local check code according to the check code transformation relation; and recovering the error-reported global check code or local check code by using the transformation parameters.
After the global check code and the local check code of the data block are obtained, the check code conversion relation is determined according to the conversion relation between the data block and the global check code and the local check code respectively, and the global check code and the local check code can be converted mutually based on the check code conversion relation. And determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation, and recovering the wrong global check code or local check code by using the transformation parameters when the global check code or local check code reports errors. The check code recovery process does not need to carry out recoding calculation according to the data code, so that the calculation amount of the recovery check code can be reduced, and the recovery efficiency of the check code is improved. The application also provides a check code recovery system, a storage medium and an electronic device, which have the beneficial effects and are not repeated herein.
Drawings
In order to more clearly illustrate the embodiments of the present application, the drawings needed for the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings can be obtained by those skilled in the art without inventive effort.
Fig. 1 is a flowchart of a check code recovery method according to an embodiment of the present application;
FIG. 2 is a diagram illustrating an exemplary structure of an LRC according to an embodiment of the present disclosure;
fig. 3 is a schematic diagram illustrating a relationship between a global check code and a local check code according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a check code recovery system according to an embodiment of the present disclosure.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without making any creative effort belong to the protection scope of the present application.
Referring to fig. 1, fig. 1 is a flowchart of a check code recovery method according to an embodiment of the present disclosure.
The specific steps may include:
s101: generating a global check code and a local check code of the data block;
the embodiment can be applied to a distributed storage system, and the embodiment can receive original data stored by a user, split the original data to obtain k data blocks, and then generate r global check codes and m local check codes of the k data blocks according to an erasure code algorithm.
Erasure Code (Erasure Code) belongs to a forward error correction technology in the coding theory, and is first applied in the communication field to solve the problems of loss and loss in data transmission. Erasure coding techniques have been introduced into the storage area because of their superior effectiveness in preventing data loss. Erasure codes can effectively reduce storage overhead on the premise of ensuring the same reliability, so erasure code technology is widely applied to various large storage systems and data centers.
The erasure codes are of various types, and RS codes (Reed-Solomon codes) applied in a distributed environment are more common in a real storage system. The RS code is associated with two parameters k and r. Given the two positive integers k and r, the RS code encodes k data blocks into r additional check codes (i.e., data in the check blocks). The way in which r check codes are encoded based on the vandermonde matrix or the cauchy matrix is referred to as RS erasure coding using vandermonde matrix or cauchy matrix encoding. In this embodiment, all the data blocks may be divided into m data block groups, and a local check code corresponding to each data block group is generated through an RS algorithm, where each data block group corresponds to one local check code. After the global check code and the local check code are obtained, whether the data block has errors can be judged; if yes, recovering the error-reported data block by using the global check code or the local check code.
S102: determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code;
in this step, the first transformation relationship between the data block and the global check code may be determined according to the generation manner of the global check code, and the process is as follows: generating global check codes corresponding to all the data blocks through an RS algorithm, and determining the first transformation relation between the data blocks and the global check codes according to the RS algorithm; wherein the first transformation relationship is: p is a radical of i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k ;p i Denotes the ith global check code, a i1 、a i2 、…、a ik Indicating the calculation of the ith global check code p i K RS algorithm parameters, x, used j Represents the jth data block, j is more than or equal to 1 and less than or equal to k, and k represents the total number of the data blocks.
The step can also determine the data block and the local check according to the generation mode of the local check codeAnd checking the second transformation relation of the codes, wherein the process is as follows: dividing all the data blocks into m data block groups, generating a local check code corresponding to each data block group through an RS algorithm, and determining the second transformation relation between the data blocks and the local check codes according to the RS algorithm; wherein the second transformation relation is: lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st ;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, l n1 、l n2 、…、l nt Indicating the calculation of lp n T RS algorithm parameters, x, used s1 、x s2 、…、x st Denotes the s1 th to st th data blocks.
S103: generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation;
the first transformation relation describes the relation between the data block and the global check code, the second transformation relation describes the relation between the data block and the local check code, and the check code transformation relation between the global check code and the local check code can be obtained through a formula combining the first transformation relation and the second transformation relation.
S104: determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation;
after the check code transformation relation is obtained, transformation parameters for transformation between the global check code and the local check code can be determined, the local check code can be obtained according to the global check code and the transformation parameters, and the global check code can also be obtained according to the local check code and the transformation parameters.
S105: and recovering the error-reported global check code or local check code by using the transformation parameters.
Before this step, there may be an operation of detecting whether the global check code or the local check code reports an error; if the global check code reports errors, the local check code, the transformation parameters and part of the global check code can be used for recovering the error-reported global check code; if the local check code reports errors, the global check code, the transformation parameters and part of the local check code can be used for recovering the error-reported local check code. In the above scheme, when any check code is erroneous, only the remaining other check code blocks need to be read, and the entire data block does not need to be read. Therefore, the recovery speed of the check code block is improved on the premise that the redundant storage block is not added and the effect of the local check code is not influenced. In this embodiment, redundant code blocks are not added, and an LRC improved algorithm for increasing the recovery speed when check code blocks are in error is used, so that the composed erasure correcting disk group can have the advantage of fast recovery in any single error scenario.
In this embodiment, after the global check code and the local check code of the data block are obtained, the check code transformation relationship is determined according to the transformation relationships between the data block and the global check code and the local check code, and the global check code and the local check code can be mutually converted based on the check code transformation relationship. And determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation, and recovering the wrong global check code or local check code by using the transformation parameters when the global check code or local check code reports errors. The check code recovery process does not need to carry out recoding calculation according to the data code, so that the calculation amount of the recovery check code can be reduced, and the recovery efficiency of the check code is improved.
As a possible implementation manner, the embodiment corresponding to fig. 1 may generate the check code transformation relationship between the global check code and the local check code by combining the first transformation relationship and the second transformation relationship, including: establishing an equation set according to the first transformation relations corresponding to all the global check codes and the second transformation relations corresponding to all the local check codes; solving the equation set to obtain the check code transformation relation;
wherein, the above-mentioned equation set can be:
p i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k
lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st
the expression corresponding to the check code transformation relation is as follows:
lp 1 ⊕lp 2 ⊕…⊕lp m ⊕p 1 *pp 1 ⊕p 2 *pp 2 …⊕p r *pp r =0;
in the above expression, lp n (i.e., lp) 1 、lp 2 、…、lp m ) Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, m represents the total number of the local check codes, p i (i.e. p) 1 、p 2 、…、p r ) Represents the ith global check code, i is more than or equal to 1 and less than or equal to r, r represents the total number of the global check codes, pp i (i.e., pp) 1 、pp 2 、…、pp r ) A transformation parameter representing a transformation between the global check code and the local check code.
After all the global check codes and the local check codes are obtained in S101 in the embodiment corresponding to fig. 1, a set of transformation parameters pp corresponding to the above expression may be calculated and obtained based on the expression corresponding to the above check code transformation relation 1 、pp 2 、…、pp r And storing the transformation parameters.
As a further introduction to the corresponding embodiment in fig. 1, the check code may be recovered in the following manner, and the specific process includes the following steps:
step 1: generating a global check code and a local check code of the data block;
step 2: determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code;
and step 3: generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation;
and 4, step 4: determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation;
and 5: if the target local check code is in error, judging whether the number of the target local check codes is more than 1; if the number of the target local check codes is equal to 1, recovering the target local check codes by using the transformation parameters, all the global check codes and all the local check codes except the target local check codes; if the number of the target local check codes is larger than 1, setting the data block group corresponding to the target local check codes as a target data block group; and recovering the target local check code by using all the data blocks in the target data block group.
And 6: if the target global check code is in error, judging whether the number of the target global check codes is more than 1; if the number of the target global check codes is equal to 1, recovering the target global check codes by using the transformation parameters, all the local check codes and all the global check codes except the target global check codes; and if the number of the target global check codes is larger than 1, recovering the target global check codes by using the data blocks.
In the above scheme, when any check code is erroneous, only the remaining other check code blocks need to be read, and the entire data block does not need to be read. Therefore, the recovery speed of the check code block is improved on the premise that the redundant storage block is not added and the effect of the local check code is not influenced. The present embodiment does not add redundant code blocks, and improves the LRC improved algorithm for recovering speed when check code blocks are in error, so that the formed erasure correcting disk group can have the advantage of quick recovery in any single error scenario.
The flow described in the above embodiment is explained below by an embodiment in practical use.
RS erasure codes based on vandermonde matrices are as follows:
Figure 595342DEST_PATH_IMAGE001
the RS erasure code based on the Cauchy matrix is as follows:
Figure 806881DEST_PATH_IMAGE002
the k x k matrix in the above description corresponds to k original data blocks, and the r x k matrix in the lower part corresponds to an encoding matrix, which is obtained by correlating with original data D 1 To D k Multiply to obtain newly added P 1 To P r I.e. the data of the r check blocks obtained by encoding (i.e. the check code). When a plurality of r data are randomly made to have errors or are lost in transmission and the errors need to be corrected, the inverse matrix of the matrix corresponding to the residual data is multiplied by the data, and the original data block D is obtained 1 To D k
With D 1 To D k Data loss, decoding is performed as an example, and the process is as follows:
Figure 280587DEST_PATH_IMAGE003
it is known that the core concept of erasure codes is to construct a reversible coding matrix to generate the parity data, and the inverse matrix can be calculated to recover the original data. Common RS erasure codes use the above-described cauchy matrix or vandermonde matrix, which has the advantage that the resulting matrix is definitely reversible, any sub-matrix thereof is also reversible, and the size expansion of the matrix is simple.
The common RS erasure code inverse matrix is calculated by adopting a Gaussian elimination method, the general solution is suitable for the inversion of any reversible matrix, but the characteristic of matrix coding is not optimized, so that a large amount of redundant operation can be introduced although the calculation is regular. When k data blocks are stored and r check data blocks are added, the error probability of a single data block needing to be recovered accounts for 99.75 percent (2007 statistical data of technical annual meeting of storage technologies), while the Gaussian elimination requirement (k + r) is used 3 The secondary operation can obtain the required inverse matrix, and then the corresponding data block is recovered.
The LRC (local check code) is an improved algorithm for RS, and can be applied to Windows Azure Storage (WAS) storage. Fig. 2 shows a simple structure of an LRC, and fig. 2 is a diagram illustrating a structure of an LRC according to an embodiment of the present disclosure. As shown in fig. 2, x1-x5 represent data blocks stored by 5 users, p1 and p2 represent global check codes generated by RS, and lp1 and lp2 represent local check codes generated by RS.
The process of obtaining the global check codes p1 and p2 through calculation of the RS algorithm is as follows:
Figure 515260DEST_PATH_IMAGE004
formula (1);
in the above formula, a and b represent different parameters, the specific data values of the parameters are determined by RS formula relations such as Van der Monte or Cauchy, and the operation is realized by multiplication and addition iteration of Galois fields.
As can be seen from the above, when only p1 and p2 exist, all data blocks need to be fetched for operation when any error occurs, that is, for the example in fig. 2, at least five data blocks need to be read at a time to complete the operation.
LRC proposes the concept of local check codes, such as lp1 and lp2 in fig. 2, and generates the local check codes by first grouping data blocks x1-x5 based on the relationship and properties of the data blocks, such as the example in fig. 2, where x1-x3 are grouped and x4 and x5 are grouped. Then there are:
Figure 968500DEST_PATH_IMAGE005
formula (2);
as can be seen from the above, 99.75% of the error occurrences are single error scenarios, and for any user data (x 1-x 5) error in the above example, lp1 and lp2 can be applied for fast recovery. That is, based on the relationship of formula (2), when an error occurs in any one of x1 to x3, the xor recovery can be performed by using lp1 by only reading the remaining two blocks of data. When an error occurs in any one of x4 and x5, only lp2 and the remaining data block need to be read for recovery. This is a great improvement over the need to read at least five blocks of data when recovering using p1 and p 2.
The LRC is only an improvement of any error, and when more than one error occurs, the data blocks for global check p1 and p2 are needed, so the security of the global check code is as important as the guarantee requirement of data security, but when the global check code has an error, the conventional LRC cannot recover by using the local check code of the LRC, and even if encoding needs to be performed again, the data blocks to be read are all the data blocks, and the efficiency is poor. The embodiment aims at the problem, and improves the generation method of the LRC, so that the single error (99.75% of probability occurrence) of the check code block can be quickly recovered on the premise of not increasing redundancy.
Referring to fig. 3, fig. 3 is a schematic diagram of a relationship between a global check code and a local check code provided in an embodiment of the present application, in fig. 3, x1, x2, x3, x4, and x5 represent data of a data block, p1 and p2 represent the global check code, lp1 and lp2 represent the local check code, l1, l2, and l3 represent parameters for calculating lp1, l4 and l5 represent parameters for calculating lp2, and pp1 and pp2 represent transformation parameters for transforming between the global check code and the local check code.
In the present embodiment, in order to improve the decoding speed of p1 and p2 in the case of a single error, the transform parameters pp1 and pp2 are used as the third partial code, and in order to save redundant data blocks, the operation result is equal to the exclusive or operation based on lp1 and lp2, which is expressed as:
Figure 454452DEST_PATH_IMAGE006
formula (3);
in order to enable the formula (3) to be satisfied, the generation relationship between lp1 and lp2 needs to be improved, and is expressed as:
Figure 630218DEST_PATH_IMAGE007
formula (4);
li and ppi in the above equations (3) and (4) are the operation parameters proposed in this embodiment, and the parameter values thereof depend on the grouping relationship, i.e. the number of data blocks, the grouping manner, and the number of check codes. As in the case of fig. 3, for any RS algorithm, the above combination of equations can be expressed based on the relationship of equation (1) in conjunction with p1p 2:
Figure 945662DEST_PATH_IMAGE008
formula (5);
since li and ppi are the operation parameters proposed in this embodiment, in order to make the operation formula hold, the operation parameters need to satisfy a certain condition during assignment, and the condition can be derived and calculated by formula (5), and the analysis and transformation of formula (5) can obtain:
Figure 123964DEST_PATH_IMAGE009
formula (6);
Figure 716620DEST_PATH_IMAGE010
Figure 30664DEST_PATH_IMAGE011
if the formula (5) is established, the relationship of the formula (6) needs to be satisfied.
In the formula (6)
Figure 974349DEST_PATH_IMAGE012
It is known that when pp1 and pp2 are given, one can solve for
Figure 533507DEST_PATH_IMAGE013
After the verification, all values of li and ppi in fig. 3 can be obtained based on the formula (6).
To illustrate the above equation, assume that the RS algorithm uses the vandermonde relationship at this time, namely:
Figure 246248DEST_PATH_IMAGE014
formula (7);
then a valid solution can be simply found based on the above equation: pp1= pp2=1, l1=2, l2=3, l3=4, l4=5, l5=6; the verification relationship is as follows:
Figure 967079DEST_PATH_IMAGE015
formula (8)
If the above relationship is established, the formula (3) is established.
Therefore, when the method is implemented by using the embodiment, lp1 and lp2, and pp1 and pp2 form a local erasure group. Because the setting-based relationship is:
Figure 132481DEST_PATH_IMAGE016
formula (9);
therefore, any redundant storage does not need to be additionally added. For any error of the check codes lp1, lp2, p1, p2, the error correction relationship can be obtained as follows:
Figure 229750DEST_PATH_IMAGE017
formula (10);
compared with the above-mentioned LRC, it can be seen that any error check code thereof only needs to read the remaining other check code blocks, and does not need to read all the data blocks. Therefore, the recovery speed of the check code block is improved on the premise that the redundant storage block is not added and the effect of the local check code is not influenced. The present embodiment does not add redundant code blocks, and improves the LRC improved algorithm for recovering speed when check code blocks are in error, so that the formed erasure correcting disk group can have the advantage of quick recovery in any single error scenario.
The embodiment provides an improved scheme based on the LRC, and by improving the encoding and decoding mode, the check code block can obtain the same effect as the data code block recovery under the protection of the local check code block without changing the recovery effect of the local check code block and without adding any redundant storage, so that the data reading amount required by the recovery is reduced, and the recovery speed is improved. In this embodiment, after the global check code and the local check code of the data block are obtained, the check code transformation relationship is determined according to the transformation relationships between the data block and the global check code and the local check code, and the global check code and the local check code can be mutually converted based on the check code transformation relationship. And determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation, and recovering the wrong global check code or local check code by using the transformation parameters when the global check code or local check code reports errors. The process of recovering the check code does not need to carry out recoding calculation according to the data code, the calculation amount of recovering the check code can be reduced, and the recovery efficiency of the check code is improved.
Referring to fig. 4, fig. 4 is a schematic structural diagram of a check code recovery system according to an embodiment of the present application;
the system may include:
a check code generation module 401, configured to generate a global check code and a local check code of a data block;
a transformation relation determining module 402, configured to determine a first transformation relation between the data block and the global check code, and determine a second transformation relation between the data block and the local check code; the check code conversion relation of the global check code and the local check code is generated by combining the first conversion relation and the second conversion relation;
a parameter determining module 403, configured to determine, according to the check code transformation relationship, transformation parameters for transformation between the global check code and the local check code;
a check code recovery module 404, configured to recover the error-reported global check code or local check code by using the transformation parameter.
The embodiment can be applied to a distributed storage system, and the embodiment can receive original data stored by a user, split the original data to obtain k data blocks, and further generate r global check codes and m local check codes of the k data blocks according to an erasure code algorithm.
In this embodiment, the first transformation relationship between the data block and the global check code may be determined according to a generation manner of the global check code, and the process thereof is as follows: generating global check codes corresponding to all the data blocks through an RS algorithm, and determining the first transformation relation between the data blocks and the global check codes according to the RS algorithm; wherein the first transformation relationship is: p is a radical of i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k ;p i Denotes the ith global check code, a i1 、a i2 、…、a ik Indicating the calculation of the ith global check code p i K RS algorithm parameters, x, used j Represents the jth data block, j is more than or equal to 1 and less than or equal to k, and k represents the total number of the data blocks.
In this embodiment, the second transformation relationship between the data block and the local check code may also be determined according to the generation manner of the local check code, and the process is as follows: dividing all the data blocks into m data block groups, generating a local check code corresponding to each data block group through an RS algorithm, and determining the second transformation relation between the data blocks and the local check codes according to the RS algorithm; wherein the second transformation relation is: lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st ;lp n Represents the nth local check code, n is more than or equal to 1 and less than or equal to m, l n1 、l n2 、…、l nt Represents the calculation of lp n T RS algorithm parameters, x, used s1 、x s2 、…、x st Denotes the s1 th to st th data blocks.
The first transformation relation describes the relation between the data block and the global check code, the second transformation relation describes the relation between the data block and the local check code, and the check code transformation relation between the global check code and the local check code can be obtained through a formula combining the first transformation relation and the second transformation relation.
After the check code transformation relation is obtained, transformation parameters for transformation between the global check code and the local check code can be determined, the local check code can be obtained according to the global check code and the transformation parameters, and the global check code can also be obtained according to the local check code and the transformation parameters.
Before this step, there may be an operation of detecting whether the global check code or the local check code reports an error; if the global check code reports errors, the local check code, the transformation parameters and part of the global check code can be used for recovering the error-reported global check code; if the local check code reports errors, the global check code, the transformation parameters and part of the local check code can be used for recovering the error-reported local check code.
In this embodiment, after the global check code and the local check code of the data block are obtained, the check code transformation relationship is determined according to the transformation relationships between the data block and the global check code and the local check code, and the global check code and the local check code can be mutually converted based on the check code transformation relationship. And determining transformation parameters for transformation between the global check code and the local check code according to the check code transformation relation, and recovering the wrong global check code or local check code by using the transformation parameters when the global check code or local check code reports errors. The check code recovery process does not need to carry out recoding calculation according to the data code, so that the calculation amount of the recovery check code can be reduced, and the recovery efficiency of the check code is improved.
Further, the generating of the global check code of the data block by the check code generating module 401 includes: and generating the global check codes corresponding to all the data blocks through an RS algorithm.
Further, the process of the transformation relation determining module 402 determining the first transformation relation between the data block and the global check code includes: determining the first transformation relation between the data block and the global check code according to an RS algorithm;
wherein the first transformation relationship is: p is a radical of i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k ;p i Denotes the ith global check code, a i1 、a i2 、…、a ik Represents the calculation p i K RS algorithm parameters, x, used j Represents the jth data block, j is more than or equal to 1 and less than or equal to k, and k represents the total number of the data blocks.
Further, the process of generating the local check code of the data block by the check code generating module 401 includes: and dividing all the data blocks into m data block groups, and generating a local check code corresponding to each data block group through an RS algorithm.
Further, the process of the transformation relation determining module 402 determining the second transformation relation between the data block and the local check code includes: determining the second transformation relation between the data block and the local check code according to an RS algorithm;
wherein, the second transformation relation is as follows: lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st ;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, l n1 、l n2 、…、l nt Indicating the calculation of lp n T RS algorithm parameters, x, used s1 、x s2 、…、x st Denotes the s1 th to st th data blocks.
Further, the process of generating the check code transformation relationship between the global check code and the local check code by the transformation relationship determining module 402 combining the first transformation relationship and the second transformation relationship includes: establishing an equation set according to the first transformation relations corresponding to all the global check codes and the second transformation relations corresponding to all the local check codes; solving the equation set to obtain the check code transformation relation; wherein, the expression corresponding to the check code transformation relation is as follows: lp 1 ⊕lp 2 ⊕…⊕lp m ⊕p 1 *pp 1 ⊕p 2 *pp 2 …⊕p r *pp r =0;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, m represents the total number of the local check codes, p i Representing the ith global check code, i is more than or equal to 1 and less than or equal to r, r represents the total number of the global check codes, pp i And the transformation parameters represent transformation between the global check code and the local check code.
Further, the process of recovering the error-reported global check code or local check code by the check code recovery module 404 using the transformation parameter includes: if the target local check code is in error, judging whether the number of the target local check codes is more than 1; if the number of the target local check codes is equal to 1, recovering the target local check codes by using the transformation parameters, all the global check codes and all the local check codes except the target local check codes.
Further, the check code recovery module 404 is further configured to, after determining whether the number of the target local check codes is greater than 1, set the data block group corresponding to the target local check codes as a target data block group if the number of the target local check codes is greater than 1; and recovering the target local check code by using all the data blocks in the target data block group.
Further, the process of recovering the error-reported global check code or local check code by the check code recovery module 404 using the transformation parameter includes: if the target global check code is in error, judging whether the number of the target global check codes is more than 1; and if the number of the target global check codes is equal to 1, recovering the target global check codes by using the transformation parameters, all the local check codes and all the global check codes except the target global check codes.
Further, the check code recovery module 404 is further configured to recover the target global check code by using the data block if the number of the target global check codes is greater than 1 after determining whether the number of the target global check codes is greater than 1.
Further, the method also comprises the following steps:
the data block recovery module is used for judging whether the data block has errors or not; if yes, recovering the error-reported data block by using the global check code or the local check code.
Further, the method also comprises the following steps:
and the data splitting module is used for receiving the original data stored by the user before generating the global check code and the local check code of the data block, and splitting the original data to obtain k data blocks.
Since the embodiment of the system part and the embodiment of the method part correspond to each other, please refer to the description of the embodiment of the method part for the embodiment of the system part, and details are not repeated here.
The present application also provides a storage medium having a computer program stored thereon, which when executed, may implement the steps provided by the above-described embodiments. The storage medium may include: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, an optical disk, or other various media capable of storing program codes.
The steps implemented when the computer program is executed include: generating a global check code and a local check code of the data block; determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code; generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation; determining a transformation parameter for transformation between the global check code and the local check code according to the check code transformation relation; and recovering the error-reported global check code or local check code by using the transformation parameters.
The present application further provides an electronic device, which may include a memory and a processor, where the memory stores a computer program, and when the processor calls the computer program in the memory, the steps provided in the foregoing embodiments may be implemented. Of course, the electronic device may also include various network interfaces, power supplies, and the like.
The embodiments are described in a progressive manner in the specification, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. For the system disclosed by the embodiment, the description is relatively simple because the system corresponds to the method disclosed by the embodiment, and the relevant points can be referred to the description of the method part. It should be noted that, for those skilled in the art, without departing from the principle of the present application, the present application can also make several improvements and modifications, and those improvements and modifications also fall into the protection scope of the claims of the present application.
It is further noted that, in the present specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or apparatus that comprises the element.

Claims (13)

1. A check code recovery method, comprising:
generating a global check code and a local check code of the data block;
determining a first transformation relation between the data block and the global check code, and determining a second transformation relation between the data block and the local check code;
generating a check code conversion relation of the global check code and the local check code by combining the first conversion relation and the second conversion relation;
determining a transformation parameter for transformation between the global check code and the local check code according to the check code transformation relation;
recovering the global check code or the local check code which reports errors by using the transformation parameters;
wherein generating a check code transformation relationship between the global check code and the local check code by combining the first transformation relationship and the second transformation relationship comprises:
establishing an equation set according to the first transformation relations corresponding to all the global check codes and the second transformation relations corresponding to all the local check codes;
solving the equation set to obtain the check code transformation relation; wherein, the expression corresponding to the check code transformation relation is as follows: lp 1 ⊕lp 2 ⊕…⊕lp m ⊕p 1 *pp 1 ⊕p 2 *pp 2 …⊕p r *pp r =0;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, m represents the total number of the local check codes, p i Represents the ith global check code, i is more than or equal to 1 and less than or equal to r, r represents the total number of the global check codes, pp i The transformation parameters representing the transformation between the global check code and the local check code;
the generating of the local check code of the data block includes:
dividing all the data blocks into m data block groups, and generating the local check code corresponding to each data block group through an RS algorithm.
2. The check code recovery method of claim 1, wherein the generating the global check code of the data block comprises:
and generating the global check codes corresponding to all the data blocks through an RS algorithm.
3. The check code recovery method of claim 2, wherein determining the first transformation relationship between the data block and the global check code comprises:
determining the first transformation relation between the data block and the global check code according to the RS algorithm;
wherein the first transformation relationship is: p is a radical of i =a i1 *x 1 ⊕a i2 *x 2 ⊕…⊕a ik *x k ;p i Represents the ith of the global check code, a i1 、a i2 、…、a ik Represents the calculation p i K RS algorithm parameters, x, used j J is more than or equal to 1 and less than or equal to k, and k represents the total number of the data blocks.
4. The check code recovery method of claim 1, wherein determining the second transformation relationship between the data block and the local check code comprises:
determining the second transformation relation between the data block and the local check code according to the RS algorithm;
wherein, the second transformation relation is as follows: lp n =l n1 *x s1 ⊕l n2 *x s2 ⊕…⊕l nt *x st ;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, l n1 、l n2 、…、l nt Indicating the calculation of lp n T RS algorithm parameters, x, used s1 、x s2 、…、x st Represents the s1 th to st th data blocks.
5. The parity check code recovery method according to claim 1, wherein the recovering the error-reported global parity check code or the local parity check code using the transformation parameter comprises:
if the target local check code is in error, judging whether the number of the target local check codes is more than 1;
and if the number of the target local check codes is equal to 1, recovering the target local check codes by using the transformation parameters, all the global check codes and all the local check codes except the target local check codes.
6. The check code recovery method of claim 5, wherein after determining whether the number of the target local check codes is greater than 1, the method further comprises:
if the number of the target local check codes is larger than 1, setting the data block group corresponding to the target local check codes as a target data block group;
and recovering the target local check code by using all the data blocks in the target data block group.
7. The parity check code recovery method of claim 1, wherein the recovering the error-reported global parity check code or the local parity check code using the transformation parameters comprises:
if the target global check code is in error, judging whether the number of the target global check codes is more than 1;
and if the number of the target global check codes is equal to 1, recovering the target global check codes by using the transformation parameters, all the local check codes and all the global check codes except the target global check codes.
8. The check code recovery method according to claim 7, after determining whether the number of the target global check codes is greater than 1, further comprising:
and if the number of the target global check codes is larger than 1, recovering the target global check codes by using the data blocks.
9. The check code recovery method of claim 1, further comprising:
judging whether the data block has errors or not;
if so, recovering the error-reported data block by using the global check code or the local check code.
10. The parity check code recovery method of claim 1, further comprising, before generating the global parity check code and the local parity check code of the data block:
and receiving original data stored by a user, and splitting the original data to obtain k data blocks.
11. A check code recovery system, comprising:
the check code generating module is used for generating a global check code and a local check code of the data block;
a transformation relation determining module, configured to determine a first transformation relation between the data block and the global check code, and determine a second transformation relation between the data block and the local check code; the check code conversion relation of the global check code and the local check code is generated by combining the first conversion relation and the second conversion relation;
the parameter determining module is used for determining a transformation parameter for transforming between the global check code and the local check code according to the check code transformation relation;
a check code recovery module, configured to recover the error-reported global check code or the error-reported local check code by using the transformation parameter;
the process of generating the check code transformation relationship between the global check code and the local check code by the transformation relationship determination module combining the first transformation relationship and the second transformation relationship includes: establishing an equation set according to the first transformation relations corresponding to all the global check codes and the second transformation relations corresponding to all the local check codes; solving the equation set to obtain the check code transformation relation; wherein, the expression corresponding to the check code transformation relation is as follows: lp 1 ⊕lp 2 ⊕…⊕lp m ⊕p 1 *pp 1 ⊕p 2 *pp 2 …⊕p r *pp r =0;lp n Representing the nth local check code, n is more than or equal to 1 and less than or equal to m, m represents the total number of the local check codes, p i Representing the ith global check code, i is more than or equal to 1 and less than or equal to r, r represents the total number of the global check codes, pp i A transformation parameter representing a transformation between the global check code and the local check code;
the process of generating the local check code of the data block by the check code generating module comprises the following steps: and dividing all the data blocks into m data block groups, and generating a local check code corresponding to each data block group through an RS algorithm.
12. An electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the check code recovery method according to any one of claims 1 to 10 when calling the computer program in the memory.
13. A storage medium having stored thereon computer-executable instructions which, when loaded and executed by a processor, carry out the steps of the check code recovery method according to any one of claims 1 to 10.
CN202211409901.7A 2022-11-11 2022-11-11 Check code recovery method, system, electronic equipment and storage medium Active CN115454712B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211409901.7A CN115454712B (en) 2022-11-11 2022-11-11 Check code recovery method, system, electronic equipment and storage medium
PCT/CN2023/085989 WO2024098647A1 (en) 2022-11-11 2023-04-03 Check-code recovery method and system, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211409901.7A CN115454712B (en) 2022-11-11 2022-11-11 Check code recovery method, system, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN115454712A CN115454712A (en) 2022-12-09
CN115454712B true CN115454712B (en) 2023-02-28

Family

ID=84295542

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211409901.7A Active CN115454712B (en) 2022-11-11 2022-11-11 Check code recovery method, system, electronic equipment and storage medium

Country Status (2)

Country Link
CN (1) CN115454712B (en)
WO (1) WO2024098647A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115454712B (en) * 2022-11-11 2023-02-28 苏州浪潮智能科技有限公司 Check code recovery method, system, electronic equipment and storage medium
CN115793984B (en) * 2023-01-03 2023-04-28 苏州浪潮智能科技有限公司 Data storage method, device, computer equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527993A (en) * 2016-11-09 2017-03-22 北京搜狐新媒体信息技术有限公司 Mass file storage method and device for distributed type system
CN114048061A (en) * 2021-10-09 2022-02-15 阿里云计算有限公司 Check block generation method and device
CN115098295A (en) * 2022-06-29 2022-09-23 阿里巴巴(中国)有限公司 Data local recovery method, equipment and storage medium
CN115269258A (en) * 2022-07-27 2022-11-01 山东云海国创云计算装备产业创新中心有限公司 Data recovery method and system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101934204B1 (en) * 2017-07-28 2018-12-31 한양대학교 산학협력단 Erasure Coding Method and Apparatus for Data Storage
CN107656832B (en) * 2017-09-18 2019-10-25 华中科技大学 A kind of correcting and eleting codes method of low data reconstruction expense
US11531593B2 (en) * 2018-09-03 2022-12-20 Here Data Technology Data encoding, decoding and recovering method for a distributed storage system
CN111240597B (en) * 2020-01-15 2024-05-17 书生星际(北京)科技有限公司 Method, apparatus, device and computer readable storage medium for storing data
CN111858169B (en) * 2020-07-10 2023-07-25 山东云海国创云计算装备产业创新中心有限公司 Data recovery method, system and related components
CN115454712B (en) * 2022-11-11 2023-02-28 苏州浪潮智能科技有限公司 Check code recovery method, system, electronic equipment and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527993A (en) * 2016-11-09 2017-03-22 北京搜狐新媒体信息技术有限公司 Mass file storage method and device for distributed type system
CN114048061A (en) * 2021-10-09 2022-02-15 阿里云计算有限公司 Check block generation method and device
CN115098295A (en) * 2022-06-29 2022-09-23 阿里巴巴(中国)有限公司 Data local recovery method, equipment and storage medium
CN115269258A (en) * 2022-07-27 2022-11-01 山东云海国创云计算装备产业创新中心有限公司 Data recovery method and system

Also Published As

Publication number Publication date
WO2024098647A1 (en) 2024-05-16
CN115454712A (en) 2022-12-09

Similar Documents

Publication Publication Date Title
CN115454712B (en) Check code recovery method, system, electronic equipment and storage medium
US8127212B2 (en) System and method for determining the fault-tolerance of an erasure code
US8522122B2 (en) Correcting memory device and memory channel failures in the presence of known memory device failures
CN107086870B (en) Repair the MDS array code coding and coding/decoding method of more piece point failure
WO2020047707A1 (en) Data coding, decoding and repairing method for distributed storage system
Silberstein et al. Error resilience in distributed storage via rank-metric codes
CN111078460B (en) Fast erasure code calculation method
CN112000512B (en) Data restoration method and related device
CN114281270B (en) Data storage method, system, equipment and medium
RU2680350C2 (en) Method and system of distributed storage of recoverable data with ensuring integrity and confidentiality of information
EP3852275A1 (en) Method, device and apparatus for storing data, computer readable storage medium
CN112799875B (en) Method, system, device and medium for verification recovery based on Gaussian elimination
CN113505019B (en) Erasure code data and verification recovery method, device and equipment and readable medium
US20100153822A1 (en) Constructing Forward Error Correction Codes
CN114153651B (en) Data encoding method, device, equipment and medium
CN111858169A (en) Data recovery method, system and related components
Li et al. Beyond the MDS bound in distributed cloud storage
WO2017041232A1 (en) Encoding and decoding framework for binary cyclic code
RU2707940C1 (en) Method of multilevel control and data integrity assurance
CN106911793B (en) I/O optimized distributed storage data repair method
CN115269258A (en) Data recovery method and system
RU2812948C1 (en) Method for ensuring integrity and availability of information in distributed data storage systems
CN107615248B (en) Distributed data storage method, control equipment and system
CN114244376B (en) Data encoding method, system, device and medium
CN114879904B (en) Data storage erasure method, device, equipment and readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant