CN112181713A - Data recovery method and system of computer storage system - Google Patents
Data recovery method and system of computer storage system Download PDFInfo
- Publication number
- CN112181713A CN112181713A CN202011077370.7A CN202011077370A CN112181713A CN 112181713 A CN112181713 A CN 112181713A CN 202011077370 A CN202011077370 A CN 202011077370A CN 112181713 A CN112181713 A CN 112181713A
- Authority
- CN
- China
- Prior art keywords
- data block
- data
- value
- computer storage
- storage system
- 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.)
- Granted
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 86
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012795 verification Methods 0.000 claims description 70
- 125000004122 cyclic group Chemical group 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 18
- 230000007812 deficiency Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 description 14
- 230000009286 beneficial effect Effects 0.000 description 10
- 238000001514 detection method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention provides a data recovery method and a data recovery system of a computer storage system, wherein the method comprises the following steps: checking whether a first data block in a computer storage system is corrupted; if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area; and checking whether the second data block is damaged, if the second data block is damaged, adopting a preset local data recovery mechanism to recover the first data block, and if not, replacing the first data block with the second data block. The system comprises modules corresponding to the method steps. According to the data recovery method and the data recovery system of the computer storage system, when the data block in the computer storage system is damaged, whether the backup data to be replaced is damaged or not is detected, and if the backup data is damaged, a local data recovery mechanism can be adopted for data recovery, so that the safety of the computer storage system is improved, and the data recovery capability of the computer storage system is improved.
Description
Technical Field
The invention relates to the technical field of computer data recovery, in particular to a data recovery method and a data recovery system of a computer storage system.
Background
At present, in order to prevent the loss of important data in a computer storage system, the important data is generally backed up, and when the important data is lost, corresponding backup data is searched; however, when the backup data is maliciously damaged or invaded, if the backup data is directly obtained for use, not only may an error occur when the backup data is linked with other data, but also the security of the storage system is reduced; in addition, when backup data is also corrupted, the ability to perform data recovery is also limited.
Disclosure of Invention
One of the objectives of the present invention is to provide a data recovery method and a data recovery system for a computer storage system, when a data block in the computer storage system is damaged, detect whether backup data to be replaced is also damaged, and if the backup data is also damaged, perform data recovery by using a local data recovery mechanism, thereby increasing the security of the computer storage system and improving the data recovery capability thereof.
The embodiment of the invention provides a data recovery method of a computer storage system, which comprises the following steps:
checking whether a first data block in the computer storage system is corrupted;
if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area;
and checking whether the second data block is damaged, if the second data block is damaged, adopting a preset local data recovery mechanism to recover the first data block, and if not, replacing the first data block with the second data block.
Preferably, said checking whether there is a corrupted first data block in said computer storage system comprises:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
Preferably, if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area, includes:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
Preferably, the data recovery method of the computer storage system further comprises:
backing up a first data block in the computer storage system to the backup area in advance;
wherein the backing up the first data block in the computer storage system to the backup area in advance comprises:
wherein,for the computer storage systemA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a pre-set pseudo-random function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for the computer storage systemA first verification value for the first data block,is a preset private key and is used as a key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
said checking whether said second data block is corrupted comprises:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,for back-up in the backup areaA preset random number of the first data block,for back-up in the backup areaA second verification value for the first data block;
Preferably, if the second data block is damaged, recovering the first data block by using a preset local data recovery mechanism, otherwise, replacing the first data block with the second data block includes:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is a first subIn the data blockThe feature vector of each of the data is,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,the number of the data in the second sub data block is;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsThe estimated value of the missing value after the second iteration,,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,the number of data in the third sub data block;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
The embodiment of the invention provides a data recovery system of a computer storage system, which comprises: the device comprises a first checking module, an obtaining module, a second checking module and a recovering module;
the first checking module checks whether a first data block in the computer storage system is corrupted; if the first data block is damaged, the obtaining module obtains a second data block corresponding to the first data block in a preset backup area; the second checking module checks whether the second data block is damaged, if the second data block is damaged, the recovery module recovers the first data block by adopting a preset local data recovery mechanism, otherwise, the first data block is replaced by the second data block.
Preferably, the first checking module performs operations comprising:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
Preferably, the obtaining module performs operations including:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
Preferably, the data recovery system of a computer storage system further comprises:
the backup module is used for backing up a first data block in the computer storage system to the backup area in advance;
the backup module performs operations comprising:
wherein,for computer storage systemsTo middleA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a pre-set pseudo-random function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for the computer storage systemA first verification value for the first data block,to prepareThe set private key is used for setting the private key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
the second checking module performs operations comprising:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,for back-up in the backup areaA preset random number of the first data block,for back-up in the backup areaA second verification value for the first data block;
Preferably, the recovery module performs operations comprising:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is the first sub data blockThe feature vector of each of the data is,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,the number of the data in the second sub data block is;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsAfter a second iterationThe estimated value of the missing value of (c),,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,the number of data in the third sub-data block;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
The technical solution of the present invention is further described in detail by the accompanying drawings and embodiments.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention and not to limit the invention. In the drawings:
FIG. 1 is a flowchart illustrating a data recovery method for a computer storage system according to an embodiment of the present invention.
Detailed Description
The preferred embodiments of the present invention will be described in conjunction with the accompanying drawings, and it will be understood that they are described herein for the purpose of illustration and explanation and not limitation.
An embodiment of the present invention provides a data recovery method for a computer storage system, as shown in fig. 1, including:
step S1, checking whether the first data block in the computer memory system is damaged;
step S2, if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area;
step S3, checking whether the second data block is damaged, if the second data block is damaged, recovering the first data block by using a preset local data recovery mechanism, otherwise, replacing the first data block with the second data block.
The working principle of the technical scheme is as follows:
automatically checking the computer storage system in real time according to a preset time interval or receiving a checking starting instruction input by a user to check the computer storage system, and checking whether a first data block in the computer storage system is maliciously damaged or lost; if the first data block is maliciously damaged or lost, acquiring a second data block corresponding to the first data block in a preset backup area, and preparing for replacement; the preset backup area is a backup area divided from a cloud server or a local storage system for backup; checking whether the second data block to be replaced is also damaged; if the second data block is maliciously damaged, it may present a security threat and belong to damaged data, and the direct replacement may cause errors of other data; if the second data block is damaged, a preset local data recovery mechanism is adopted to recover the first data block; the preset local data recovery mechanism specifically comprises: recovering different data types by adopting a plurality of methods; and if the second data block is not damaged, directly replacing the damaged first data block with the second data block.
The technical scheme has the beneficial effects that: according to the embodiment of the invention, when the data block in the computer storage system is damaged, whether the backup data to be replaced is also damaged is detected, and if the backup data is also damaged, a local data recovery mechanism can be adopted for data recovery, so that the safety of the computer storage system is improved, and the data recovery capability of the computer storage system is improved.
The embodiment of the invention provides a data recovery method of a computer storage system, wherein the step of checking whether a damaged first data block exists in the computer storage system comprises the following steps:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
The working principle of the technical scheme is as follows:
each data block in the computer storage system is provided with a corresponding cyclic code and an ECC check code; the cyclic code is specifically: a Cyclic Redundancy Check (CRC), which is a commonly used check code with error detection and correction capabilities; a block CRC code must be divisible by the generator polynomial so that if the remainder is 0 when the receiver divides the CRC code by the generator polynomial, the CRC code has no errors; if the remainder is not 0, the CRC code error is indicated, and the data block is damaged; the ECC check code specifically comprises: correcting the memory check code; when data is written into a computer storage system, corresponding ECC check codes are also stored, when the previously written data is read again, the stored ECC check codes are compared with the ECC check codes generated by reading, and if the stored ECC check codes are the same as the ECC check codes, the ECC check codes are correct; if not, the ECC check code is wrong, which indicates that the data block is damaged.
The technical scheme has the beneficial effects that: the embodiment of the invention checks the cyclic code and the ECC check code of the data block in the computer storage system together to judge whether the data block is damaged or not, thereby improving the detection capability of whether the data block in the computer storage system is damaged or not.
The embodiment of the present invention provides a data recovery method for a computer storage system, where if a first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area, where the method includes:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
The working principle of the technical scheme is as follows:
if the first data block in the computer storage system is damaged; the first data block has a read path through which the first data block can be read; the preset backup path database specifically comprises: when a local first data block is backed up to a backup area, matching a local reading path of the first data block with a corresponding backup path in the backup area one by one and storing the first data block in a backup path database; when a second data block corresponding to the first data block in the backup area is required to be acquired, only a backup path corresponding to the reading path needs to be inquired in the backup path database; a second data block corresponding to the first data block may be obtained via the backup path.
The technical scheme has the beneficial effects that: the embodiment of the invention stores the reading path of the first data block in the computer storage system and the backup path in the backup area into the backup path database in a one-to-one matching manner, when the first data block is damaged and a second data block corresponding to the first data block in the backup area is required to be obtained, the management capability of backup information is enhanced, and the convenience of obtaining backup data is improved.
The embodiment of the invention provides a data recovery method of a computer storage system, which further comprises the following steps:
backing up a first data block in the computer storage system to the backup area in advance;
wherein the backing up the first data block in the computer storage system to the backup area in advance comprises:
wherein,for the computer storage systemA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a preset pseudo-randomThe function of the function is that of the function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for the computer storage systemA first verification value for the first data block,is a preset private key and is used as a key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
said checking whether said second data block is corrupted comprises:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,for back-up in the backup areaA preset random number of the first data block,for back-up in the backup areaA second verification value for the first data block;
The working principle of the technical scheme is as follows:
calculating a first verification value and a second verification value associated with the first data block using different encryption schemes and calculation methods; when data backup is carried out, the data is directly uploaded to the backup area; uploading the first verification value and the second verification value to the backup area; after data in a computer storage system is backed up to a backup area, if a first data block is maliciously damaged or invaded, only the sequence numbers of the maliciously damaged or invaded data blocks are needed to be obtained, and a corresponding second data block is searched in the backup area according to the sequence numbers; then calculating a third verification value of the second data block; finally according to the equationTo determine whether the second data block is maliciously damaged or invaded.
The technical scheme has the beneficial effects that: if the backup data to be replaced is maliciously damaged or invaded, the security of the computer storage system is threatened if the backup data to be replaced is directly obtained and replaced.
The embodiment of the invention provides a data recovery method of a computer storage system, wherein if the second data block is damaged, a preset local data recovery mechanism is adopted to recover the first data block, otherwise, the first data block is replaced by the second data block, and the method comprises the following steps:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is the first sub data blockThe feature vector of each of the data is,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,the number of the data in the second sub data block is;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsThe estimated value of the missing value after the second iteration,,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,the number of data in the third sub data block;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
The working principle of the technical scheme is as follows:
firstly, classifying the damaged first data block according to types, and calling different data recovery schemes aiming at different types of data; the preset data block partition type division rule specifically comprises the following steps: if the data conforms to or approximately conforms to normal distribution, dividing the data into first type data blocks; judging that the data do not conform to normal distribution, and dividing the data into second type data blocks; dividing the rest types of data into third type data blocks; the preset layering rules are specifically as follows: positioning the position of data loss in the data block according to the error reporting of the cyclic code and the ECC check code of the data block, selecting the position and reserving preset data lengths on two sides of the position as one layer to ensure that each layer has only one position point of data loss, and reserving the preset data lengths on two sides of the position point to estimate the lost data according to the data on the two sides; the preset missing data filling rule is specifically as follows: and filling the filling value into the position points of data loss.
The technical scheme has the beneficial effects that: the embodiment of the invention classifies the damaged first data blocks according to types, calls different data recovery schemes aiming at different types of data, improves the speed and the precision of the computer storage system for recovering data, and simultaneously can adopt a local data recovery mechanism to recover data when backup data is damaged, thereby improving the capability of the computer storage system for recovering data.
The embodiment of the invention provides a data recovery system of a computer storage system, which comprises: the device comprises a first checking module, an obtaining module, a second checking module and a recovering module;
the first checking module checks whether a first data block in the computer storage system is corrupted; if the first data block is damaged, the obtaining module obtains a second data block corresponding to the first data block in a preset backup area; the second checking module checks whether the second data block is damaged, if the second data block is damaged, the recovery module recovers the first data block by adopting a preset local data recovery mechanism, otherwise, the first data block is replaced by the second data block.
The working principle of the technical scheme is as follows:
automatically checking the computer storage system in real time according to a preset time interval or receiving a checking starting instruction input by a user to check the computer storage system, and checking whether a first data block in the computer storage system is maliciously damaged or lost; if the first data block is maliciously damaged or lost, acquiring a second data block corresponding to the first data block in a preset backup area, and preparing for replacement; the preset backup area is a backup area divided from a cloud server or a local storage system for backup; checking whether the second data block to be replaced is also damaged; if the second data block is maliciously damaged, it may present a security threat and belong to damaged data, and the direct replacement may cause errors of other data; if the second data block is damaged, a preset local data recovery mechanism is adopted to recover the first data block; the preset local data recovery mechanism specifically comprises: recovering different data types by adopting a plurality of methods; and if the second data block is not damaged, directly replacing the damaged first data block with the second data block.
The technical scheme has the beneficial effects that: according to the embodiment of the invention, when the data block in the computer storage system is damaged, whether the backup data to be replaced is also damaged is detected, and if the backup data is also damaged, a local data recovery mechanism can be adopted for data recovery, so that the safety of the computer storage system is improved, and the data recovery capability of the computer storage system is improved.
The embodiment of the invention provides a data recovery system of a computer storage system, wherein a first checking module executes the following operations:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
The working principle of the technical scheme is as follows:
each data block in the computer storage system is provided with a corresponding cyclic code and an ECC check code; the cyclic code is specifically: a Cyclic Redundancy Check (CRC), which is a commonly used check code with error detection and correction capabilities; a block CRC code must be divisible by the generator polynomial so that if the remainder is 0 when the receiver divides the CRC code by the generator polynomial, the CRC code has no errors; if the remainder is not 0, the CRC code error is indicated, and the data block is damaged; the ECC check code specifically comprises: correcting the memory check code; when data is written into a computer storage system, corresponding ECC check codes are also stored, when the previously written data is read again, the stored ECC check codes are compared with the ECC check codes generated by reading, and if the stored ECC check codes are the same as the ECC check codes, the ECC check codes are correct; if not, the ECC check code is wrong, which indicates that the data block is damaged.
The technical scheme has the beneficial effects that: the first checking module in the embodiment of the invention checks the cyclic code and the ECC check code of the data block in the computer storage system together to judge whether the data block is damaged or not, thereby improving the detection capability of whether the data block in the computer storage system is damaged or not.
The embodiment of the invention provides a data recovery system of a computer storage system, wherein an acquisition module executes the following operations:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
The working principle of the technical scheme is as follows:
if the first data block in the computer storage system is damaged; the first data block has a read path through which the first data block can be read; the preset backup path database specifically comprises: when a local first data block is backed up to a backup area, matching a local reading path of the first data block with a corresponding backup path in the backup area one by one and storing the first data block in a backup path database; when a second data block corresponding to the first data block in the backup area is required to be acquired, only a backup path corresponding to the reading path needs to be inquired in the backup path database; a second data block corresponding to the first data block may be obtained via the backup path.
The technical scheme has the beneficial effects that: the acquisition module of the embodiment of the invention matches the reading path of the first data block in the computer storage system with the backup path in the backup area one by one and stores the reading path and the backup path in the backup area into the backup path database, when the first data block is damaged and a second data block corresponding to the first data block in the backup area is required to be acquired only through the backup path, thereby enhancing the management capability of backup information and promoting the convenience of acquiring backup data.
The embodiment of the invention provides a data recovery system of a computer storage system, which further comprises:
the backup module is used for backing up a first data block in the computer storage system to the backup area in advance;
the backup module performs operations comprising:
wherein,for the computer storage systemA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a pre-set pseudo-random function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for a computerIn a storage systemA first verification value for the first data block,is a preset private key and is used as a key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
the second checking module performs operations comprising:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,for back-up in the backup areaA preset random number of the first data block,for back-up in the backup areaA second verification value for the first data block;
The working principle of the technical scheme is as follows:
calculating a first verification value and a second verification value associated with the first data block using different encryption schemes and calculation methods; when data backup is carried out, the data is directly uploaded to the backup area; uploading the first verification value and the second verification value to the backup area; after data in a computer storage system is backed up to a backup area, if a first data block is maliciously damaged or invaded, only the sequence numbers of the maliciously damaged or invaded data blocks are needed to be obtained, and a corresponding second data block is searched in the backup area according to the sequence numbers; then calculating a third verification value of the second data block; finally according to the equationTo determine whether the second data block is maliciously damaged or invaded.
The technical scheme has the beneficial effects that: if the backup data to be replaced is maliciously damaged or invaded, the security of the computer storage system is threatened if the backup data to be replaced is directly obtained and replaced.
The embodiment of the invention provides a data recovery system of a computer storage system, wherein the recovery module executes the following operations:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is the first sub data blockCharacteristics of the dataThe vector of the vector is then calculated,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,as a second sub data blockThe number of the middle data;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsThe estimated value of the missing value after the second iteration,,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,the number of data in the third sub data block;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
The working principle of the technical scheme is as follows:
firstly, classifying the damaged first data block according to types, and calling different data recovery schemes aiming at different types of data; the preset data block partition type division rule specifically comprises the following steps: if the data conforms to or approximately conforms to normal distribution, dividing the data into first type data blocks; judging that the data do not conform to normal distribution, and dividing the data into second type data blocks; dividing the rest types of data into third type data blocks; the preset layering rules are specifically as follows: positioning the position of data loss in the data block according to the error reporting of the cyclic code and the ECC check code of the data block, selecting the position and reserving preset data lengths on two sides of the position as one layer to ensure that each layer has only one position point of data loss, and reserving the preset data lengths on two sides of the position point to estimate the lost data according to the data on the two sides; the preset missing data filling rule is specifically as follows: and filling the filling value into the position points of data loss.
The technical scheme has the beneficial effects that: the recovery module of the embodiment of the invention classifies the damaged first data blocks according to types, calls different data recovery schemes aiming at different types of data, improves the speed and the precision of the computer storage system for recovering data, and simultaneously can adopt a local data recovery mechanism to recover data when backup data is damaged, thereby improving the capability of the computer storage system for recovering data.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.
Claims (10)
1. A method of data recovery in a computer storage system, comprising:
checking whether a first data block in the computer storage system is corrupted;
if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area;
and checking whether the second data block is damaged, if the second data block is damaged, adopting a preset local data recovery mechanism to recover the first data block, and if not, replacing the first data block with the second data block.
2. A method for data recovery in a computer storage system as recited in claim 1, wherein said checking whether there is a corrupted first data block in said computer storage system comprises:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
3. The method as claimed in claim 2, wherein if the first data block is damaged, acquiring a second data block corresponding to the first data block in a preset backup area, comprises:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
4. A method of data recovery in a computer storage system as claimed in claim 3, further comprising:
backing up a first data block in the computer storage system to the backup area in advance;
wherein the backing up the first data block in the computer storage system to the backup area in advance comprises:
wherein,for computer storage systemsIn system the firstA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a pre-set pseudo-random function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for the computer storage systemA first verification value for the first data block,is a preset private key and is used as a key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
said checking whether said second data block is corrupted comprises:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,in a backup area for backupTo (1) aA preset random number of the first data block,for back-up in the backup areaA second verification value for the first data block;
5. The method for recovering data in a computer storage system according to claim 4, wherein if the second data block is corrupted, a preset local data recovery mechanism is adopted to recover the first data block, otherwise the first data block is replaced with the second data block, and the method comprises:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is the first sub data blockThe feature vector of each of the data is,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,the number of the data in the second sub data block is;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsThe estimated value of the missing value after the second iteration,,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,for the data in the third sub data blockCounting;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
6. A data recovery system for a computer storage system, comprising: the device comprises a first checking module, an obtaining module, a second checking module and a recovering module;
the first checking module checks whether a first data block in the computer storage system is corrupted; if the first data block is damaged, the obtaining module obtains a second data block corresponding to the first data block in a preset backup area; the second checking module checks whether the second data block is damaged, if the second data block is damaged, the recovery module recovers the first data block by adopting a preset local data recovery mechanism, otherwise, the first data block is replaced by the second data block.
7. The data recovery system of a computer storage system of claim 6, wherein the first check module performs operations comprising:
checking a cyclic code and an ECC check code of each first data block in the computer storage system;
and if the cyclic code is wrong and/or the ECC check code is wrong, the first data block is damaged.
8. The data recovery system of a computer storage system of claim 7, wherein the obtaining module performs operations comprising:
if the first data block is damaged, extracting a reading path of the first data block;
acquiring a backup path corresponding to the read path in a preset backup path database;
and acquiring a second data block corresponding to the first data block through the backup path.
9. The data recovery system for a computer storage system of claim 8, further comprising:
the backup module is used for backing up a first data block in the computer storage system to the backup area in advance;
the backup module performs operations comprising:
wherein,for the computer storage systemA first one of the data blocks is selected,for the computer storage systemA first verification value for the first data block,is a pre-set pseudo-random function,is a preset private key;
wherein,for the computer storage systemA second verification value for the first data block,for the computer storage systemA first verification value for the first data block,is a preset private key and is used as a key,the number of the first data blocks in the computer storage system is counted;
backing up the first data block to the backup area;
sending the first verification value and the second verification value to the backup area;
the second checking module performs operations comprising:
Calculating a third verification value for the second data block:
wherein,in order to be the third verification value,for the set of sequence numbers of the first data block that is corrupted,for back-up in the backup areaA first one of the data blocks is selected,for back-up in the backup areaA preset random number of the first data block,for back-up in the backup areaA first dataA second verification value for the block;
10. The data recovery system of a computer storage system of claim 9, wherein the recovery module performs operations comprising:
if the second data block is corrupted;
adopting a preset local data recovery mechanism to recover the first data block;
the local data recovery mechanism comprises:
dividing the first data block into a first type data block, a second type data block and a third type data block according to a preset data block type division rule;
carrying out layering processing on the first type data block according to a preset layering rule to obtain a plurality of first subdata blocks;
calculating a first padding value of the first sub data block:
wherein,is the first fill-in value and is,is the first sub data blockThe number of the data is one,is the first sub data blockThe feature vector of each of the data is,,the number of data in the first sub data block;
filling the first sub data block by adopting the first filling value according to a preset missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the second type data according to the layering rule to obtain a plurality of second sub data blocks;
constructing a first deficiency value estimation model:
wherein,a model is estimated for the first missing value,is a pre-set correlation coefficient and is,is a function of the probability density that is preset,is a parameter of the probability density function,is the first sub data blockThe number of the data is one,the number of the data in the second sub data block is;
drawing a missing value estimation curve based on the missing value estimation model;
selecting the maximum value on the missing value estimation curve as a second filling value;
filling the second subdata with the second filling value according to the missing data filling rule;
and/or the presence of a gas in the gas,
carrying out layering processing on the third type data block according to a preset layering rule to obtain a plurality of third sub data blocks;
constructing a second deficiency value estimation model;
wherein,a model is estimated for the second missing value,is a preset normal distribution parameter,,is as followsThe estimated value of the missing value after the second iteration,,for the third sub-data block is,,is the first in the third sub-data blockThe number of the data is one,is the first in the third sub-data blockThe number of the data is one,the number of data in the third sub data block;
estimating the second missing value to a modelOutput value of the sub-iterationAs a third padding value;
filling the third type data block by adopting the third filling value according to the missing data filling rule;
and if the second data block is not damaged, replacing the first data block with the second data block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011077370.7A CN112181713B (en) | 2020-10-10 | 2020-10-10 | Data recovery method and system of computer storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011077370.7A CN112181713B (en) | 2020-10-10 | 2020-10-10 | Data recovery method and system of computer storage system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112181713A true CN112181713A (en) | 2021-01-05 |
CN112181713B CN112181713B (en) | 2021-06-04 |
Family
ID=73948660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011077370.7A Active CN112181713B (en) | 2020-10-10 | 2020-10-10 | Data recovery method and system of computer storage system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181713B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114218018A (en) * | 2022-02-18 | 2022-03-22 | 深圳佰维存储科技股份有限公司 | System data protection method and device, readable storage medium and electronic equipment |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030168A (en) * | 2007-02-15 | 2007-09-05 | 华为技术有限公司 | Method and apparatus for realizing high-reliability chain list |
US20080226081A1 (en) * | 2007-03-16 | 2008-09-18 | Yuichi Terao | Data recovery method, image processing apparatus, controller board, and data recovery program |
CN101546291A (en) * | 2009-05-12 | 2009-09-30 | 华为技术有限公司 | Access method and device for increasing robustness of memory data |
CN103870362A (en) * | 2014-03-21 | 2014-06-18 | 华为技术有限公司 | Data recovery method, data recovery device and backup system |
CN104393999A (en) * | 2014-12-10 | 2015-03-04 | 暨南大学 | Slave device authentication method and system for master device |
CN104598330A (en) * | 2013-10-30 | 2015-05-06 | 中国航空工业集团公司第六三一研究所 | Data storage and verification method based on dual backup |
US20150143198A1 (en) * | 2013-11-15 | 2015-05-21 | Qualcomm Incorporated | Method and apparatus for multiple-bit dram error recovery |
CN105893181A (en) * | 2016-03-30 | 2016-08-24 | 苏州美天网络科技有限公司 | Cloud hard disk data recovery method |
CN106612171A (en) * | 2016-07-14 | 2017-05-03 | 四川用联信息技术有限公司 | Data soft recovery method in cloud storage |
CN106959910A (en) * | 2017-05-09 | 2017-07-18 | 广州响动信息科技有限公司 | Remote data management method and system |
CN108572887A (en) * | 2017-03-14 | 2018-09-25 | 上海骐宏电驱动科技有限公司 | Data detection bearing calibration |
CN111008094A (en) * | 2018-10-08 | 2020-04-14 | 阿里巴巴集团控股有限公司 | Data recovery method, equipment and system |
CN111446970A (en) * | 2020-02-11 | 2020-07-24 | 上海威固信息技术股份有限公司 | Method for preprocessing low-density parity check code decoding soft decision information |
CN111628864A (en) * | 2020-06-05 | 2020-09-04 | 微位(深圳)网络科技有限公司 | Method for carrying out secret key safety recovery by using SIM card |
-
2020
- 2020-10-10 CN CN202011077370.7A patent/CN112181713B/en active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030168A (en) * | 2007-02-15 | 2007-09-05 | 华为技术有限公司 | Method and apparatus for realizing high-reliability chain list |
US20080226081A1 (en) * | 2007-03-16 | 2008-09-18 | Yuichi Terao | Data recovery method, image processing apparatus, controller board, and data recovery program |
CN101546291A (en) * | 2009-05-12 | 2009-09-30 | 华为技术有限公司 | Access method and device for increasing robustness of memory data |
CN104598330A (en) * | 2013-10-30 | 2015-05-06 | 中国航空工业集团公司第六三一研究所 | Data storage and verification method based on dual backup |
US20150143198A1 (en) * | 2013-11-15 | 2015-05-21 | Qualcomm Incorporated | Method and apparatus for multiple-bit dram error recovery |
CN103870362A (en) * | 2014-03-21 | 2014-06-18 | 华为技术有限公司 | Data recovery method, data recovery device and backup system |
CN104393999A (en) * | 2014-12-10 | 2015-03-04 | 暨南大学 | Slave device authentication method and system for master device |
CN105893181A (en) * | 2016-03-30 | 2016-08-24 | 苏州美天网络科技有限公司 | Cloud hard disk data recovery method |
CN106612171A (en) * | 2016-07-14 | 2017-05-03 | 四川用联信息技术有限公司 | Data soft recovery method in cloud storage |
CN108572887A (en) * | 2017-03-14 | 2018-09-25 | 上海骐宏电驱动科技有限公司 | Data detection bearing calibration |
CN106959910A (en) * | 2017-05-09 | 2017-07-18 | 广州响动信息科技有限公司 | Remote data management method and system |
CN111008094A (en) * | 2018-10-08 | 2020-04-14 | 阿里巴巴集团控股有限公司 | Data recovery method, equipment and system |
CN111446970A (en) * | 2020-02-11 | 2020-07-24 | 上海威固信息技术股份有限公司 | Method for preprocessing low-density parity check code decoding soft decision information |
CN111628864A (en) * | 2020-06-05 | 2020-09-04 | 微位(深圳)网络科技有限公司 | Method for carrying out secret key safety recovery by using SIM card |
Non-Patent Citations (3)
Title |
---|
AMBIKA GUPTA 等: "Implementation of Storage in Virtual Private Cloud using Simple Storage Service on AWS", 《PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON INNOVATIVE MECHANISMS FOR INDUSTRY APPLICATIONS (ICIMIA 2020)》 * |
傅颖勋 等: "安全云存储系统与关键技术综述", 《计 算 机 研 究 与 发 展》 * |
阮春阳 等: "基于再生码的数据完整性验证及恢复", 《计算机工程与设计》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114218018A (en) * | 2022-02-18 | 2022-03-22 | 深圳佰维存储科技股份有限公司 | System data protection method and device, readable storage medium and electronic equipment |
CN114218018B (en) * | 2022-02-18 | 2022-05-27 | 深圳佰维存储科技股份有限公司 | System data protection method and device, readable storage medium and electronic equipment |
Also Published As
Publication number | Publication date |
---|---|
CN112181713B (en) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885256B (en) | Data storage method, device and medium based on data slicing | |
CN107612561B (en) | Encoding and decoding method and device | |
US8250427B2 (en) | Selecting erasure codes for a fault tolerant system | |
US20150178170A1 (en) | Method and Apparatus for Recovering Data | |
RU2696425C1 (en) | Method of two-dimensional control and data integrity assurance | |
US10885814B2 (en) | Share recovery system, share recovery apparatus, share recovery method, and program | |
CN110532126A (en) | Correcting and eleting codes memory system data quick recovery method, device and storage medium | |
CN110011998B (en) | Identity-based multi-backup remote data holding verification method | |
CN106612272A (en) | Verification and recovery algorithm for data tampering in cloud storage | |
Dichenko et al. | Controlling and restoring the integrity of multi-dimensional data arrays through cryptocode constructs | |
CN112181713B (en) | Data recovery method and system of computer storage system | |
CN103703446B (en) | Data reconstruction that network storage Zhong Kang Byzantium lost efficacy, failure-data recovery method and device | |
CN112416891B (en) | Data detection method, device, electronic equipment and readable storage medium | |
US8762336B2 (en) | Geo-verification and repair | |
CN109101360B (en) | Data integrity protection method based on bloom filter and cross coding | |
CN114780298A (en) | File data processing method and device, computer terminal and storage medium | |
CN106227617A (en) | Self-repair method and storage system based on correcting and eleting codes algorithm | |
CN105279048B (en) | A kind of data reconstruction method and device | |
US7073024B1 (en) | Data protection method wherein data protection code is stored together with parity | |
CN113282693A (en) | 3 DGIS-based holographic data management method and system | |
CN116930727B (en) | Chip detection method based on circuit board | |
WO2014051462A1 (en) | Method for recovering recordings in a storage device and system for implementing same | |
CN115208554B (en) | Management method and system for key self-checking, self-correcting and self-recovering | |
CN117349860A (en) | File storage system and method based on matrix change and data segmentation | |
Colombier et al. | Horizontal correlation attack on classic McEliece |
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 |