WO2024051114A1 - 一种数据转存方法、系统、设备及非易失性可读存储介质 - Google Patents

一种数据转存方法、系统、设备及非易失性可读存储介质 Download PDF

Info

Publication number
WO2024051114A1
WO2024051114A1 PCT/CN2023/079095 CN2023079095W WO2024051114A1 WO 2024051114 A1 WO2024051114 A1 WO 2024051114A1 CN 2023079095 W CN2023079095 W CN 2023079095W WO 2024051114 A1 WO2024051114 A1 WO 2024051114A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
target
check code
raid6
disk
Prior art date
Application number
PCT/CN2023/079095
Other languages
English (en)
French (fr)
Inventor
吴睿振
陈静静
张永兴
张旭
王小伟
王凛
Original Assignee
苏州元脑智能科技有限公司
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 苏州元脑智能科技有限公司 filed Critical 苏州元脑智能科技有限公司
Publication of WO2024051114A1 publication Critical patent/WO2024051114A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems

Definitions

  • the present application relates to the field of RAID technology, and more particularly, to a data transfer method, system, device and non-volatile readable storage medium.
  • TP-RAID Triple Parity-RAID, triple parity check disk array
  • TP-RAID Although the core of TP-RAID is to support three error RAID algorithms at the same time, considering that product implementation needs to support multiple solutions to customers, each solution needs to be able to quickly migrate to each other. For example, the TP-RAID solution needs to be migrated to a RAID6 solution. During this process, the data in the TP-RAID scheme can only be calculated and written to the disk according to the RAID6 scheme. However, this method requires reading all the data and performing calculations, which requires a large amount of calculation and is time-consuming, affecting the efficiency of data transfer. .
  • This application is to provide a data transfer method, which can solve to a certain extent the technical problem of how to quickly transfer TP-RAID storage data in RAID6 mode.
  • This application also provides a data transfer system, equipment and non-volatile readable storage medium.
  • a data transfer method including:
  • the above-mentioned TP-RAID method includes a RAID method that generates three check codes
  • the RAID6 checksum of the data block in the above target stripe data is calculated based on the RAID6 method. code verification;
  • the above target position information represents that the above reference check code is located in any of the fourth to penultimate digits of the above target strip data, then the number determined in the above target strip data is consistent with the value of the above target position information.
  • Corresponding target operation data perform operations on the above target operation data to obtain the above RAID6 check code;
  • the target strip data to be transferred after the TP-RAID method includes:
  • the above-mentioned determination of the target location information of the preset type of reference check code in the above-mentioned target strip data includes:
  • the above target location information indicates that the above reference check code is located in any of the fourth to penultimate digits of the above target strip data, then determine the number in the above target strip data and the above target
  • the target operation data corresponding to the value of the position information includes:
  • the target position information indicates that the reference check code is located at the penultimate position of the target strip data, then the three check codes in the target strip data are used as the target operation data.
  • the above-mentioned operation on the above-mentioned target operation data is performed to obtain the above-mentioned RAID6 check code, including:
  • the above target operation data is operated to obtain the above RAID6 check code
  • the above first operation formula includes:
  • P' and Q' represent the above-mentioned RAID6 check codes
  • P, Q, and R represent the above-mentioned target operation data
  • K represents the total number of the above-mentioned data blocks.
  • the above-mentioned data block and the above-mentioned RAID6 check code are dropped to disk, including:
  • the above-mentioned data block and the above-mentioned RAID6 check code are placed on the disk according to the above-mentioned left-hand misalignment.
  • the above target location information indicates that the above reference check code is located in any of the fourth to penultimate digits of the above target strip data, then determine the number in the above target strip data and the above target
  • the target operation data corresponding to the value of the position information includes:
  • the target position information indicates that the reference check code is located at the third to last position of the target strip data, then the three check codes in the target strip data are used as the target operation data.
  • the above-mentioned operation on the above-mentioned target operation data is performed to obtain the above-mentioned RAID6 check code, including:
  • the above target operation data is operated to obtain the above RAID6 check code
  • the above second operation formula includes:
  • P′ and Q′ represent the above-mentioned RAID6 check code
  • P, Q and R represent the above-mentioned target operation data.
  • the above-mentioned data block and the above-mentioned RAID6 check code are dropped to disk, including:
  • the above-mentioned data block and the above-mentioned RAID6 check code are placed on the disk according to the above-mentioned left-hand misalignment.
  • the above target location information indicates that the above reference check code is located in any of the fourth to penultimate digits of the above target strip data, then determine the number in the above target strip data and the above target
  • the target operation data corresponding to the value of the position information includes:
  • the above target position information represents that the above reference check code is located at any one of the fourth to last fourth digits of the above target strip data, then the three check codes in the above target strip data and D(K +4-X) to DK as the target operation data, where X represents the value of the reciprocal number of digits of the target position information in the target strip data.
  • the above-mentioned operation on the above-mentioned target operation data is performed to obtain the above-mentioned RAID6 check code, including:
  • the above target operation data is operated to obtain the above RAID6 check code
  • the above third operation formula includes:
  • P′ and Q′ represent the above-mentioned RAID6 check codes
  • P, Q, R, D(K+4-X) to DK represent the above-mentioned target operation data
  • D(K+4- The data blocks corresponding to X) to DK are DK
  • K represents the total number of the above data blocks.
  • the above-mentioned data block and the above-mentioned RAID6 check code are dropped to disk, including:
  • the above target location information indicates that the above reference check code is located in any of the fourth to penultimate digits of the above target stripe data, then the above data block and the above RAID6 check code are processed according to the above left-handed misalignment method. Place the plate.
  • the above-mentioned data block and the above-mentioned RAID6 check code are dropped to disk, including:
  • the target position information indicates that the reference check code is located at the first, second, or third digit of the target stripe data
  • the corresponding data block and the RAID6 check code are processed based on the left-hand misalignment method. Place the plate;
  • the target location information indicates that the reference check code is located at the last bit of the target stripe data
  • the corresponding data block and the RAID6 check code are placed on disk based on load balancing requirements.
  • the above-mentioned determination of the target stripe data to be transferred after being placed on the disk through the TP-RAID method includes: determining the above-mentioned target stripe data to be transferred after being placed on the disk through the above-mentioned TP-RAID method and left-hand alignment;
  • the above-mentioned placing of the above-mentioned data block and the above-mentioned RAID6 check code includes: placing the above-mentioned data block and the above-mentioned RAID6 check code in the above-mentioned left-hand alignment manner.
  • the above-mentioned determination of the target stripe data to be transferred after being placed on the disk through the TP-RAID method includes: determining the above-mentioned target stripe data to be transferred after being placed on the disk through the above-mentioned TP-RAID method and the right-hand misalignment method. ;
  • the above-mentioned placing of the above-mentioned data block and the above-mentioned RAID6 check code includes: placing the above-mentioned data block and the above-mentioned RAID6 check code in the above-mentioned right-hand misaligned manner.
  • the above-mentioned determination of the target stripe data to be transferred after being placed on the disk using the TP-RAID method includes: determining the above-mentioned target stripe data to be transferred after being placed on the disk using the above-mentioned TP-RAID method and right-hand alignment;
  • the above-mentioned placing of the above-mentioned data block and the above-mentioned RAID6 check code includes: placing the above-mentioned data block and the above-mentioned RAID6 check code in the above-mentioned right-hand alignment manner.
  • the above-mentioned determination of the target location information of the preset type of reference check code in the above-mentioned target strip data includes:
  • a data transfer system including:
  • the first determination module is configured to determine the target stripe data to be transferred after being placed on the disk through the TP-RAID method.
  • the above-mentioned TP-RAID method includes a RAID method that generates three check codes;
  • the second determination module is configured to determine the target location information of the preset type of reference check code in the above-mentioned target strip data
  • the first processing module is configured to calculate the target strip based on the RAID6 method if the target location information indicates that the reference check code is located in the first, second, third or last digit of the target strip data.
  • the second processing module is configured to determine the quantity in the target strip data if the target location information represents that the reference check code is located in any of the fourth to penultimate bits of the target strip data.
  • the target operation data corresponding to the numerical value of the above-mentioned target location information is operated on the above-mentioned target operation data to obtain the above-mentioned RAID6 check code;
  • the first storage module is configured to write the above-mentioned data block and the above-mentioned RAID6 check code to disk.
  • a data transfer device including:
  • the processor is configured to implement the steps of any of the above data dumping methods when executing the above computer program.
  • a non-volatile readable storage medium A computer program is stored in the non-volatile readable storage medium. When the computer program is executed by a processor, the steps of any of the above data transfer methods are implemented.
  • This application provides a data transfer method that determines the target strip data to be transferred after being dropped to the disk using the TP-RAID method.
  • the TP-RAID method includes Including the RAID method of generating three check codes; determining the target location information of the preset type of reference check code in the target stripe data; if the target location information indicates that the reference check code is located in the first or third position of the target stripe data The second digit or the third digit or the last digit, the RAID6 check code of the data block in the target stripe data is calculated based on the RAID6 method; if the target location information represents the reference check code, it is located in the fourth to last digit of the target stripe data.
  • Either of the two bits determines the number of target operation data corresponding to the value of the target location information in the target stripe data, and operates on the target operation data to obtain the RAID6 check code; the data block and the RAID6 check code are Make a placement.
  • the way in which the target strip obtains the RAID6 check code can be distinguished according to the target location information of the reference check code in the target strip data, and the target location information indicates that the reference check code is located in the target strip data.
  • Figure 1 is a first flow chart of a data transfer method provided by an embodiment of the present application
  • Figure 2 is a schematic diagram of a TP-RAID scenario composed of user data on three disks
  • Figure 3 is a schematic diagram of the implementation of existing recoding
  • FIG. 4 is a schematic diagram of strip processing in this application.
  • Figure 5 is a schematic diagram of a data transfer method provided by an embodiment of the present application.
  • Figure 6 is a schematic structural diagram of a data dumping system provided by an embodiment of the present application.
  • Figure 7 is a schematic structural diagram of a data dump device provided by an embodiment of the present application.
  • FIG. 8 is another schematic structural diagram of a data dump device provided by an embodiment of the present application.
  • RAID Redundant Arrays of Independent Disks, disk array
  • a disk array is By combining multiple independent disks together, a disk group with huge capacity is obtained.
  • Using RAID storage technology can greatly increase storage capacity, improve the system's input and output request processing capabilities, and improve data reliability through distributed data storage technology, parallel access methods and information redundancy technology. After the design idea of RAID was proposed, it was quickly accepted by the industry. As a high-performance and highly reliable storage technology, RAID technology has been widely used in people's production and life.
  • RAID mainly uses data striping, data verification and mirroring technologies to obtain stronger performance, higher reliability, better fault tolerance and stronger scalability. According to different data application requirements, the strategies and architectures of these three technologies can be used or combined. Therefore, according to different strategies and architectures, RAID can be divided into different levels: RAID0, 1, 5, 6, and 10.
  • TP-RAID Compared with RAID5, 6, TP -RAID, as the name suggests, can support three wrong RAID algorithms at the same time. Although the core of TP-RAID is to support three error RAID algorithms at the same time, considering that product implementation needs to support multiple solutions to customers, each solution needs to be able to quickly migrate to each other. For example, the TP-RAID solution needs to be migrated to a RAID6 solution. During this process, the data in the TP-RAID scheme can only be calculated and written to the disk according to the RAID6 scheme. However, this method requires reading all the data and performing calculations, which requires a large amount of calculation and is time-consuming, affecting the efficiency of data transfer. .
  • the data transfer method provided by this application can quickly transfer TP-RAID storage data in RAID6 mode.
  • Figure 1 is a first flow chart of a data dumping method provided by an embodiment of the present application.
  • Step S101 Determine the target stripe data to be transferred after being placed on the disk through the TP-RAID method.
  • the TP-RAID method includes a RAID method that generates three check codes.
  • the target stripe data to be transferred after being placed on the disk through the TP-RAID method can be determined first.
  • the number and type of data blocks in the target stripe data can be determined according to actual needs, which is not limited in this application.
  • the TP-RAID method in this application includes a RAID method that generates three check codes.
  • the traditional generation formula of three check codes can be as follows:
  • a represents the parameters required for TP-RAID encoding
  • d represents the data block
  • p1, p2, and p3 represent the three check codes.
  • x represents the position information of p1 in the strip
  • y represents the position information of p2 in the strip
  • z represents the position information of p3 in the strip; in other words, in the application scenario, it can be obtained based on the TP-RAID implementation relationship Target strip data.
  • the load balancing issue needs to be considered, such as using four algorithms of left-hand misalignment, left-hand alignment, right-hand misalignment and right-hand alignment to calculate the placement position.
  • the target strip data to be transferred after determining In the process of placing the target strip data to be transferred after the TP-RAID method is placed on the disk, the target strip data to be transferred after being placed on the disk using the TP-RAID method and the left-hand misalignment method can be determined.
  • subsequent processing After the TP-RAID method and the left-hand misalignment method are used, the target strip data to be transferred is transferred to RAID6.
  • Step S102 Determine the target location information of the preset type of reference check code in the target strip data.
  • the target location information of the preset type of reference check code in the target stripe data can be determined, so that subsequent data can be transferred based on the target.
  • the location information determines how RAID6 checksums are generated for the data blocks in the target stripe data.
  • the type of reference check code can be determined according to actual needs. For example, in the process of determining the target location information of a preset type of reference check code in the target strip data, the P in the target strip data can be determined. The target location information of the type of reference check code.
  • Step S103 If the target location information representation reference check code is located in the first, second, third or last digit of the target stripe data, calculate the RAID6 checksum of the data block in the target stripe data based on the RAID6 method. code.
  • the RAID6 check code of the data block in the target stripe data can be calculated based on the RAID6 method.
  • Step S104 If the target position information representative reference check code is located in any of the fourth to penultimate digits of the target strip data, determine a number in the target strip data corresponding to the value of the target position information. Target operation data, perform operations on the target operation data to obtain the RAID6 check code.
  • the target location information of the preset type of reference check code in the target strip data if the target location information represents the reference check code located in the fourth to penultimate digits of the target strip data, Any bit, then the number of target operation data corresponding to the value of the target location information can be determined in the target stripe data, and the target operation data can be calculated to obtain the RAID6 check code. It should be noted that since the value of the target location information is less than or equal to the total number of all data blocks, the target operation data read at this time is part or all of the data blocks, which can reduce the 10% delay caused by reading the data blocks.
  • Step S105 Drop the data block and RAID6 check code to disk.
  • the data block and the RAID6 check code can be placed on the disk.
  • the first calculation formula can be used to calculate the target calculation data to obtain the RAID6 check code.
  • the data blocks and the RAID6 check code can be placed on the disk in a left-handed misalignment manner.
  • the first operation formula includes:
  • P' and Q' represent the RAID6 check code
  • P, Q, and R represent the target operation data
  • K represents the total number of data blocks.
  • the second calculation formula can be used to calculate the target calculation data to obtain the RAID6 check code.
  • the data blocks and the RAID6 check code can be placed on the disk in a left-handed misalignment manner.
  • the second operation formula includes:
  • P′ and Q′ represent the RAID6 check code
  • P, Q and R represent the target operation data
  • the reference check code representing the target position information is located in any of the fourth to penultimate digits of the target strip data
  • the quantity and target position information are determined in the target strip data.
  • the three bits in the target strip data can be Check codes and data blocks corresponding to D(K+4-X) to DK are used as target operation data, where X represents the value of the reciprocal number of digits of the target position information in the target strip data.
  • the third calculation formula can be used to calculate the target calculation data to obtain the RAID6 check code.
  • the data blocks and the RAID6 check code can be placed on the disk in a left-handed misalignment manner.
  • the third operation formula includes:
  • P′ and Q′ represent the above-mentioned RAID6 check codes
  • P, Q, R, D(K+4-X) to DK represent the above-mentioned target operation data
  • D(K+4- The data blocks corresponding to X) to DK are DK
  • K represents the total number of the above data blocks.
  • the target location information represents the reference check code is located in the first, second, or third digit of the target stripe data
  • the corresponding data block and RAID6 check code can be placed on the disk based on the left-hand misalignment; if the target location information represents the reference check code is located at the last bit of the target stripe data, the corresponding data block can be placed based on load balancing requirements. and RAID6 check code for disk placement.
  • the TP-RAID method includes a RAID method that generates three check codes; determines the target stripe data in the target stripe data.
  • the target location information of the preset type of reference check code if the target location information indicates that the reference check code is located in the first, second, third or last digit of the target stripe data, the target is calculated based on the RAID6 method.
  • the RAID6 check code of the data block in the stripe data if the target location information representation reference check code is located in any of the fourth to penultimate bits of the target stripe data, then determine the same in the target stripe data.
  • the target operation data corresponding to the target location information is operated on the target operation data to obtain the RAID6 check code; the data block and the RAID6 check code are placed on the disk.
  • the way in which the target strip obtains the RAID6 check code can be distinguished according to the target location information of the reference check code in the target strip data, and the target location information indicates that the reference check code is located in the target strip data.
  • Table 2 The disk placement method for downgrading TP-RAID to RAID6 under left-hand misalignment
  • the load balancing algorithm is generally required to remain unchanged, that is, the RAID6 solution needs to be implemented in a left-handed misalignment manner.
  • disk during this process, the disk that is vacated by default is the rightmost disk.
  • all user data involved in the sequential migration is marked in gray in the figure. In other words, no matter what degradation algorithm is used, in order to maintain the same load balance and reduce the probability of errors, the data blocks in the gray part in Table 2 must be read and written to achieve migration.
  • Table 1 and Table 2 completely list the stripes affected by load balancing under the assumption of K data blocks. Therefore, it can be seen that under the premise of K data blocks, according to the left-handed misalignment from the starting position Among all possible stripe scenarios starting from calculation until returning to the starting position, the statistics of the number of moved data blocks involved in each scenario are shown in Table 3;
  • the check code block implemented by TP-RAID encoding in Table 1 is PQR
  • the check code block downgraded to RAID6 in Tables 2 and 3 is marked as P’Q’.
  • Various scenarios are numbered in Table 3, because the left-hand misalignment calculates the position of Q or the position of QR based on the position of P. Therefore, on the premise of K data disks, TP-RAID left-hand misalignment has a total of K+3
  • the left-hand misalignment of RAID6 is shown in Table 3. There are a total of K+2 stripe scenarios. When moving directly, there will definitely be a stripe that cannot be mapped.
  • TP-RAID has a total of K+3 scenarios. After downgrading to RAID6, it also uses the left-hand misalignment form, and there will be K+2 scenarios. Based on the left-handed misalignment of the position of P, when P is on the rightmost side of the strip, the number is 1, and then there are K+3 cases where it is shifted one bit to the left each time, as shown in Figure 4.
  • the target strip data to be transferred after being dropped to the disk using the TP-RAID method and the left-hand misalignment method is determined, and the P-type reference check code in the target strip data is determined.
  • Target location information if the target location information indicates that the reference check code is located at the target For the first, second, third or last digit of the stripe data, the RAID6 check code of the data block in the target stripe data is calculated based on the RAID6 method; if the target location information indicates that the reference check code is located in the target stripe Any bit from the fourth to the penultimate digit of the band data, determine the number of target operation data corresponding to the value of the target location information in the target stripe data, and perform operations on the target operation data to obtain the RAID6 check code ;Put the data block and RAID6 check code to disk. Assume that the division process of the target strip data is as shown in Figure 4.
  • strip 1 is recalculation group 1, that is, when the target position information representation reference check code is located at the last bit of the target strip data, the target strip will be
  • the data is marked as recalculation group 1; strips K+1, K+2, and K+3 are recalculation group 2, that is, the target position information represents the reference check code located in the first or second digit of the target strip data. or the third digit, mark the target strip as recalculation group 2; strips 2 to K are marked as moving group, that is, the target position information represents the reference check code located in the fourth to last bit of the target strip data. If any of the two bits is entered, mark the target stripe data as a moving group.
  • K data are directly taken from strips K+1, K+2, K+3, and according to the standard encoding method of RAID6, the parameters are entered into the encoding operation module to directly calculate the new P 'Q' can get the corresponding RAID6 check code; for the mobile group, you need to select the target calculation data according to the following calculation formula and calculate the corresponding RAID6 check code, where the calculation formula is:
  • this application when running the data dump method provided by this application, this application can divide every K+3 strip data in TP-RAID into a group, assuming there are n in total Groups, among which group 1 to group (n-1) all satisfy the requirement that the number of stripes is K+3, then the first n-1 comply with the above operations of this application, and the recalculation group 2 and the mobile group are operated separately until the nth groups. At this time, the number of stripes does not meet K+3.
  • the mobile groups that meet the conditions are calculated separately, and then the recalculation group 1 in the other groups is placed in order in accordance with the actual requirements of load balancing, and the completion is completed.
  • the relevant verification operations are enough, and the whole process can be shown in Figure 5.
  • FIG. 6 is a schematic structural diagram of a data dumping system provided by an embodiment of the present application.
  • the first determination module 101 is configured to determine the target stripe data to be transferred after being placed on the disk through the TP-RAID method.
  • the TP-RAID method includes a RAID method that generates three check codes;
  • the second determination module 102 is configured to determine the target location information of a preset type of reference check code in the target strip data
  • the first processing module 103 is configured to calculate the target stripe data based on the RAID6 method if the target location information representation reference check code is located in the first, second, third or last digit of the target stripe data.
  • RAID6 check code of data block
  • the second processing module 104 is configured to determine the quantity and target position in the target strip data if the target position information representative reference check code is located in any of the fourth to penultimate bits of the target strip data.
  • the value of the information corresponds to the target operation data, and the target operation data is calculated to obtain the RAID6 check code;
  • the first storage module 105 is configured to write data blocks and RAID6 check codes to disk.
  • the first determination module may include:
  • the first determination unit is configured to determine the target strip data to be transferred after being placed on the disk using the TP-RAID method and the left-hand misalignment method.
  • the second determination module may include:
  • the second determination unit is configured to determine the target location information of the P-type reference check code in the target strip data.
  • the second processing module may include:
  • the first processing unit is configured to use the three check codes in the target strip data as target operation data if the target position information representation reference check code is located in the penultimate digit of the target strip data.
  • the first processing unit may be configured as:
  • the target operation data is operated to obtain the RAID6 check code
  • the first operation formula includes:
  • P' and Q' represent the RAID6 check code
  • P, Q, and R represent the target operation data
  • K represents the total number of data blocks.
  • the first storage module may include:
  • the first storage unit is configured to write data blocks and RAID6 check codes in a left-hand misaligned manner.
  • the second processing module may include:
  • the second processing unit is configured to use the three check codes in the target strip data as the target operation data if the target location information representation reference check code is located in the third to last digit of the target strip data.
  • the second processing unit can be set to:
  • the target operation data is operated to obtain the RAID6 check code
  • the second operation formula includes:
  • P′ and Q′ represent the RAID6 check code
  • P, O and R represent the target operation data
  • the first storage module may include:
  • the second storage unit is configured to write data blocks and RAID6 check codes in a left-hand misaligned manner.
  • the second processing module may include:
  • the third processing unit is configured to convert the three check codes in the target strip data if the target position information represents the reference check code located in any of the fourth to last fourth bits of the target strip data. And the data blocks corresponding to D(K+4-X) to DK are used as target operation data, where X represents the value of the reciprocal number of digits of the target position information in the target strip data.
  • the third processing unit can be configured to: operate the target operation data through the third operation formula to obtain the RAID6 check code;
  • the third operation formula includes:
  • P′ and Q′ represent the above-mentioned RAID6 check codes
  • P, Q, R, D(K+4-X) to DK represent the above-mentioned target operation data
  • D(K+4- The data blocks corresponding to X) to DK are DK
  • K represents the total number of the above data blocks.
  • the first storage module may include:
  • the third storage unit is configured to write data blocks and RAID6 check codes in a left-hand misaligned manner.
  • the first storage module may include:
  • the fourth storage unit is configured to check the corresponding data block and RAID6 based on the left-hand misalignment if the target location information represents the reference check code located in the first, second, or third digit of the target stripe data.
  • the code is placed on the plate;
  • the fifth storage unit is configured to store the corresponding data block and RAID6 check code based on load balancing requirements if the target location information represents the reference check code located at the last bit of the target stripe data.
  • the present application also provides a data transfer device and a non-volatile readable storage medium, both of which have the corresponding effects of the data transfer method provided by the embodiments of the present application.
  • FIG. 7 is a schematic structural diagram of a data dump device provided by an embodiment of the present application.
  • a data dump device provided by an embodiment of the present application includes a memory 201 and a processor 202.
  • a computer program is stored in the memory 201.
  • the processor 202 executes the computer program, it implements the steps of the data dump method described in any of the above embodiments. .
  • another data dump device provided by the embodiment of the present application may also include: an input port 203 connected to the processor 202, configured to transmit externally input commands to the processor 202; and the processor 202
  • the connected display unit 204 is configured to display the processing results of the processor 202 to the outside world;
  • the communication module 205 connected to the processor 202 is configured to implement communication between the data dump device and the outside world.
  • the display unit 204 can be used for display, laser scanning, etc.; the communication methods used by the communication module 205 include but are not limited to mobile high-definition link technology (HML), universal serial bus (USB), high-definition multimedia interface (HDMI) , Wireless connection: wireless fidelity technology (WiFi), Bluetooth communication technology, low-power Bluetooth communication technology, communication technology based on IEEE802.11s.
  • HML mobile high-definition link technology
  • USB universal serial bus
  • HDMI high-definition multimedia interface
  • WiFi wireless fidelity technology
  • Bluetooth communication technology low-power Bluetooth communication technology
  • communication technology based on IEEE802.11s IEEE802.11s.
  • An embodiment of the present application provides a non-volatile readable storage medium.
  • the non-volatile readable storage medium stores a computer program.
  • the computer program is executed by a processor, the data transfer method described in any of the above embodiments is implemented. A step of.
  • non-volatile readable storage media involved in this application include random access memory (RAM), memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disks, removable disks, CD-ROM, or any other form of storage media known in the technical field.
  • RAM random access memory
  • ROM read-only memory
  • electrically programmable ROM electrically erasable programmable ROM
  • registers hard disks, removable disks, CD-ROM, or any other form of storage media known in the technical field.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

一种数据转存方法、系统、设备及非易失性可读存储介质,该方法包括:确定经TP-RAID方法落盘后的待转移的目标条带数据;确定目标条带数据中预设类型的基准校验码的目标位置信息;若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码;若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码;对数据块及RAID6校验码进行落盘;能够快速将TP-RAID存储数据按RAID6方式转存。

Description

一种数据转存方法、系统、设备及非易失性可读存储介质
相关申请的交叉引用
本申请要求于2022年09月06日提交中国专利局,申请号为202211081688.1,申请名称为“一种数据转存方法、系统、设备及计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及RAID技术领域,更特别地,涉及一种数据转存方法、系统、设备及非易失性可读存储介质。
背景技术
随着技术的发展,磁盘的寿命增长,组建的服务器存储的数据量更大,RAID(Redundant Arrays of Independent Disks,磁盘阵列)技术已经逐渐无法满足当前的存储需求,因此有了TP-RAID(Triple Parity-RAID,三重奇偶校验磁盘阵列)的需求,相比于RAID5,6,TP-RAID顾名思义就是能够同时支持三个错误的RAID算法。
虽然TP-RAID的核心是支持同时三个错误的RAID算法,但是考虑到产品实现需要向客户支持多种方案,各个方案之间需要可以互相快速迁移,比如TP-RAID方案需要迁移为RAID6方案,在此过程中,只能按照RAID6方案对TP-RAID方案中的数据进行运算并落盘,然而此种方式需要读取所有的数据并进行运算,运算量大且耗时长,影响数据转存效率。
综上所述,如何快速将TP-RAID存储数据按RAID6方式转存是目前本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种数据转存方法,其能在一定程度上解决如何快速将TP-RAID存储数据按RAID6方式转存的技术问题。本申请还提供了一种数据转存系统、设备及非易失性可读存储介质。
为了实现上述目的,本申请提供如下技术方案:
一种数据转存方法,包括:
确定经TP-RAID方法落盘后的待转移的目标条带数据,上述TP-RAID方法包括生成三个校验码的RAID方法;
确定上述目标条带数据中预设类型的基准校验码的目标位置信息;
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算上述目标条带数据中数据块的RAID6校验码;
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则在上述目标条带数据中确定数量与上述目标位置信息的数值相对应的目标运算数据,对上述目标运算数据进行运算得到上述RAID6校验码;
对上述数据块及上述RAID6校验码进行落盘。
可选的,上述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:
确定经上述TP-RAID方法及左旋不对齐方式落盘后的待转移的上述目标条带数据。
可选的,上述确定上述目标条带数据中预设类型的基准校验码的目标位置信息,包括:
确定上述目标条带数据中P类型的上述基准校验码的上述目标位置信息。
可选的,上述若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则在上述目标条带数据中确定数量与上述目标位置信息的数值相对应的目标运算数据,包括:
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的倒数第二位,则将上述目标条带数据中的三个校验码作为上述目标运算数据。
可选的,上述对上述目标运算数据进行运算得到上述RAID6校验码,包括:
通过第一运算公式,对上述目标运算数据进行运算得到上述RAID6校验码;
上述第一运算公式包括:
其中,P′、Q′表示上述RAID6校验码;P、Q、R表示上述目标运算数据;K表示上述数据块的总个数。
可选的,上述对上述数据块及上述RAID6校验码进行落盘,包括:
按照上述左旋不对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则在上述目标条带数据中确定数量与上述目标位置信息的数值相对应的目标运算数据,包括:
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的倒数第三位,则将上述目标条带数据中的三个校验码作为上述目标运算数据。
可选的,上述对上述目标运算数据进行运算得到上述RAID6校验码,包括:
通过第二运算公式,对上述目标运算数据进行运算得到上述RAID6校验码;
上述第二运算公式包括:
其中,P′、Q′表示上述RAID6校验码;P、Q、R表示上述目标运算数据,
可选的,上述对上述数据块及上述RAID6校验码进行落盘,包括:
按照上述左旋不对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则在上述目标条带数据中确定数量与上述目标位置信息的数值相对应的目标运算数据,包括:
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第四位中的任一位,则将上述目标条带数据中的三个校验码及D(K+4-X)至DK所对应的上述数据块作为上述目标运算数据,其中,X表示上述目标位置信息在上述目标条带数据中的倒数位数的值。
可选的,上述对上述目标运算数据进行运算得到上述RAID6校验码,包括:
通过第三运算公式,对上述目标运算数据进行运算得到上述RAID6校验码;
上述第三运算公式包括:
其中,P′、Q′表示上述RAID6校验码;P、Q、R、D(K+4-X)至DK表示上述目标运算数据;且X的值为4时,D(K+4-X)至DK所对应的数据块为DK,K表示上述数据块的总个数。
可选的,上述对上述数据块及上述RAID6校验码进行落盘,包括:
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则按照上述左旋不对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述对上述数据块及上述RAID6校验码进行落盘,包括:
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第一位或第二位或第三位,则基于上述左旋不对齐方式对对应的上述数据块及上述RAID6校验码进行落盘;
若上述目标位置信息表征上述基准校验码位于上述目标条带数据的最后一位,则基于负载均衡需求对对应的上述数据块及上述RAID6校验码进行落盘。
可选的,上述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经上述TP-RAID方法及左旋对齐方式落盘后的待转移的上述目标条带数据;
上述对上述数据块及上述RAID6校验码进行落盘,包括:按照上述左旋对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经上述TP-RAID方法及右旋不对齐方式落盘后的待转移的上述目标条带数据;
上述对上述数据块及上述RAID6校验码进行落盘,包括:按照上述右旋不对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经上述TP-RAID方法及右旋对齐方式落盘后的待转移的上述目标条带数据;
上述对上述数据块及上述RAID6校验码进行落盘,包括:按照上述右旋对齐方式对上述数据块及上述RAID6校验码进行落盘。
可选的,上述确定上述目标条带数据中预设类型的基准校验码的目标位置信息,包括:
确定上述目标条带数据中与上述TP-RAID方法采用的负载均衡方式对应的基准校验码的目标位置信息。
一种数据转存系统,包括:
第一确定模块,被设置为确定经TP-RAID方法落盘后的待转移的目标条带数据,上述TP-RAID方法包括生成三个校验码的RAID方法;
第二确定模块,被设置为确定上述目标条带数据中预设类型的基准校验码的目标位置信息;
第一处理模块,被设置为若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算上述目标条带数据中数据块的RAID6校验码;
第二处理模块,被设置为若上述目标位置信息表征上述基准校验码位于上述目标条带数据的第四位至倒数第二位中的任一位,则在上述目标条带数据中确定数量与上述目标位置信息的数值相对应的目标运算数据,对上述目标运算数据进行运算得到上述RAID6校验码;
第一存储模块,被设置为对上述数据块及上述RAID6校验码进行落盘。
一种数据转存设备,包括:
存储器,被设置为存储计算机程序;
处理器,被设置为执行上述计算机程序时实现如上任一上述数据转存方法的步骤。
一种非易失性可读存储介质,上述非易失性可读存储介质中存储有计算机程序,上述计算机程序被处理器执行时实现如上任一上述数据转存方法的步骤。
本申请提供的一种数据转存方法,确定经TP-RAID方法落盘后的待转移的目标条带数据,TP-RAID方法包 括生成三个校验码的RAID方法;确定目标条带数据中预设类型的基准校验码的目标位置信息;若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码;若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码;对数据块及RAID6校验码进行落盘。本申请中,可以按照目标条带数据中基准校验码的目标位置信息,对目标条带得到RAID6校验码的方式进行区分,且在目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位时,只需在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算即可得到RAID6校验码,无需对目标条带数据中的所有数据块进行读取、RAID6计算,能够提高RAID6校验码的生成效率,进而可以快速将TP-RAID存储数据按RAID6方式转存。本申请提供的一种数据转存系统、设备及非易失性可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下而将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下而描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种数据转存方法的第一流程图;
图2为三块磁盘的用户数据所组建的TP-RAID场景示意图;
图3为现有重新编码的实现示意图;
图4为本申请中条带的处理示意图;
图5为本申请实施例提供的数据转存方法的示意图;
图6为本申请实施例提供的一种数据转存系统的结构示意图;
图7为本申请实施例提供的一种数据转存设备的结构示意图;
图8为本申请实施例提供的一种数据转存设备的另一结构示意图。
具体实施方式
下而将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
伴随着通讯技术和网络科技的迅速发展,数字化信息呈指数爆炸式增长,数据存储技术也因此迎来了巨大的挑战。存储系统中数据的可靠性问题以及存储系统的能耗问题越来越被人们所关注。现如今而对如此庞大的数据规模,存储系统中数据的可靠性和存储系统中包含的组件数量成反比关系,即存储系统组件数越多,那么存储系统中数据的可靠性就越低。根据相关调查显示,在一个由600个磁盘构成的互联网数据中心中,每月大约会有30个磁盘出现损坏的情况,在大规模存储系统中,磁盘故障造成的数据可靠性下降是相当严重的问题,对此人们展开了相关容错技术的研究。
在1988年,加州大学伯克利分校的D.A.Patterson等教授提出的RAID结构成为了提升存储空间的一个关键技术,RAID(Redundant Arrays of Independent Disks,磁盘阵列)即具有冗余能力的磁盘阵列,磁盘阵列是通过将多个独立磁盘组合一起,从而得到一个容量巨大的磁盘组。采用RAID存储技术,可以大大提高存储容量,提高系统输入输出的请求处理能力并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。RAID的设计思想被提出之后,很快就被业界所接纳,RAID技术作为高性能、高可靠的存储技术,目前已经在人们的生产和生活中得到了极其广泛的应用。RAID主要利用数据条带、数据校验和镜像技术来获得较强的性能、更高的可靠性、较好的容错能力和较强的扩展性。根据不同的数据应用需求,可以运用或者组合运用这三种技术的策略和架构,所以按照不同的策略和架构,RAID可以被分为不同的等级:RAID0,1,5,6,10。
且随着技术的发展,磁盘的寿命增长,组建的服务器存储的数据量更大,RAID技术已经逐渐无法满足当前的存储需求,因此有了TP-RAID的需求,相比于RAID5,6,TP-RAID顾名思义就是能够同时支持三个错误的RAID算法。虽然TP-RAID的核心是支持同时三个错误的RAID算法,但是考虑到产品实现需要向客户支持多种方案,各个方案之间需要可以互相快速迁移,比如TP-RAID方案需要迁移为RAID6方案,在此过程中,只能按照RAID6方案对TP-RAID方案中的数据进行运算并落盘,然而此种方式需要读取所有的数据并进行运算,运算量大且耗时长,影响数据转存效率。而本申请提供的数据转存方法可以快速将TP-RAID存储数据按RAID6方式转存。
请参阅图1,图1为本申请实施例提供的一种数据转存方法的第一流程图。
本申请实施例提供的一种数据转存方法,可以包括以下步骤:
步骤S101:确定经TP-RAID方法落盘后的待转移的目标条带数据,TP-RAID方法包括生成三个校验码的RAID方法。
实际应用中,可以先确定经TP-RAID方法落盘后的待转移的目标条带数据,目标条带数据中数据块的数量及类型等可以根据实际需要确定,本申请在此不做限定。
需要说明的是,本申请中的TP-RAID方法包括生成三个校验码的RAID方法,传统的三个校验码的生成公式可以如下:
其中,a表示TP-RAID编码时所需的参数;d表示数据块;p1、p2、p3表示三个校验码。
考虑到TP-RAID与RAID6之间的切换,上述生成公式的前两行需满足RAID6特性,因此基于RS(Reed-Solomon Code,里德所罗门码)同等扩展性第三行也需要使用相类似的RS构建方法,基于上述要求,可得到的TP-RAID实现关系为:
其中,x表示p1在条带中的位置信息;y表示p2在条带中的位置信息;z表示p3在条带中的位置信息;换言之,应用场景中,可以基于该TP-RAID实现关系得到目标条带数据。
可选应用场景中,实际的落盘时,需要考虑负载均衡问题,比如用左旋不对齐,左旋对齐,右旋不对齐和右旋对齐四种算法进行落盘位置计算,本申请中,在确定经TP-RAID方法落盘后的待转移的目标条带数据的过程中,可以确定经TP-RAID方法及左旋不对齐方式落盘后的待转移的目标条带数据,相应的,后续对经TP-RAID方法及左旋不对齐方式落盘后的待转移的目标条带数据进行RAID6转存。为了便于理解,假设三块磁盘的用户数据所组建的TP-RAID场景如图2所示,其以左旋不对齐方式落盘,且p1p2p3,p4p5p6,p7p8p9分别为条带123运算得到的校验块,此时,受到负载均衡的左旋不对齐的影响,p1p2p3对应的如TP-RAID实现关系中的x、y、z的选择则是4、5、6,相应的p4、p5、p6对应的x、y、z的选择为3、4、5。
步骤S102:确定目标条带数据中预设类型的基准校验码的目标位置信息。
实际应用中,在确定经TP-RAID方法落盘后的待转移的目标条带数据之后,便可以确定目标条带数据中预设类型的基准校验码的目标位置信息,以便后续基于该目标位置信息确定生成目标条带数据中的数据块的RAID6校验码的方式。
可选应用场景中,基准校验码的类型可以根据实际需要确定,比如在确定目标条带数据中预设类型的基准校验码的目标位置信息的过程中,可以确定目标条带数据中P类型的基准校验码的目标位置信息。
步骤S103:若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码。
实际应用中,在确定目标条带数据中预设类型的基准校验码的目标位置信息之后,若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则可以基于RAID6方法计算目标条带数据中数据块的RAID6校验码。
步骤S104:若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码。
实际应用中,在确定目标条带数据中预设类型的基准校验码的目标位置信息之后,若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则可以在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码。需要说明的是,由于目标位置信息的数值小于等于所有数据块的总数量值,所以此时读取的目标运算数据为部分或全部的数据块,可以降低读取数据块带来的10延迟。
步骤S105:对数据块及RAID6校验码进行落盘。
实际应用中,在得到数据块的RAID6校验码之后,便可以对数据块及RAID6校验码进行落盘。
实际应用中,若在目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据的过程中,若目标位置信息表征基准校验码位于目标条带数据的倒数第二位,则可以将目标条带数据中的三个校验码作为目标运算数据。相应的,在对目标运算数据进行运算得到RAID6校验码的过程中,可以通过第一运算公式,对目标运算数据进行运算得到RAID6校验码。相应的,在对数据块及RAID6校验码进行落盘的过程中,可以按照左旋不对齐方式对数据块及RAID6校验码进行落盘。其中,第一运算公式包括:
其中,P′、Q′表示RAID6校验码;P、Q、R表示目标运算数据;K表示数据块的总个数。
可选应用场景中,在若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据的过程中,若目标位置信息表 征基准校验码位于目标条带数据的倒数第三位,则可以将目标条带数据中的三个校验码作为目标运算数据。相应的,在对目标运算数据进行运算得到RAID6校验码的过程中,可以通过第二运算公式,对目标运算数据进行运算得到RAID6校验码。相应的,在对数据块及RAID6校验码进行落盘的过程中,可以按照左旋不对齐方式对数据块及RAID6校验码进行落盘。其中,第二运算公式包括:
其中,P′、Q′表示RAID6校验码;P、Q、R表示目标运算数据。
可选应用场景中,在若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据的过程中,若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第四位中的任一位,则可以将目标条带数据中的三个校验码及D(K+4-X)至DK所对应的数据块作为目标运算数据,其中,X表示目标位置信息在目标条带数据中的倒数位数的值。相应的,在对目标运算数据进行运算得到RAID6校验码的过程中,可以通过第三运算公式,对目标运算数据进行运算得到RAID6校验码。相应的,在对数据块及RAID6校验码进行落盘的过程中,可以按照左旋不对齐方式对数据块及RAID6校验码进行落盘。其中,第三运算公式包括:
其中,P′、Q′表示上述RAID6校验码;P、Q、R、D(K+4-X)至DK表示上述目标运算数据;且X的值为4时,D(K+4-X)至DK所对应的数据块为DK,K表示上述数据块的总个数。
可选应用场景中,在对数据块及RAID6校验码进行落盘的过程中,若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位,则可以基于左旋不对齐方式对对应的数据块及RAID6校验码进行落盘;若目标位置信息表征基准校验码位于目标条带数据的最后一位,则可以基于负载均衡需求对对应的数据块及RAID6校验码进行落盘。
需要说明的是,在将TP-RAID降至RAID6的过程中,现有方式是通过数据迁移,将一块磁盘空出做其他用处,且实现起来大多以直接重新编码实现,重新编码的实现如图3所示,首先抛弃所有的校验信息,然后进行数据迁移,再重新读取所有的数据进行RAID6编码,这样的运算操作需要对所有的数据进行两次的读写,速度很慢,损耗极大;且无论如何迁移均需要对部分数据块进行移位,当条带数据量足够大时,需要移位的数据块平均为所有数据块的一半,会严重影响数据转存效率。而本申请无需对目标条带数据中的所有数据块进行读取、RAID6计算,能够提高RAID6校验码的生成效率,进而可以快速将TP-RAID存储数据按RAID6方式转存。
本申请提供的一种数据转存方法,确定经TP-RAID方法落盘后的待转移的目标条带数据,TP-RAID方法包括生成三个校验码的RAID方法;确定目标条带数据中预设类型的基准校验码的目标位置信息;若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码;若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定与目标位置信息对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码;对数据块及RAID6校验码进行落盘。本申请中,可以按照目标条带数据中基准校验码的目标位置信息,对目标条带得到RAID6校验码的方式进行区分,且在目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位时,只需在目标条带数据中确定与目标位置信息对应的目标运算数据,对目标运算数据进行运算即可得到RAID6校验码,无需对目标条带数据中的所有数据块进行读取、RAID6计算,能够提高RAID6校验码的生成效率,进而可以快速将TP-RAID存储数据按RAID6方式转存。
为了便于理解本申请提供的数据转存方案,现对本申请方案与现有技术进行对比分析,过程如下:
假设总共有K个数据块的条带组件的TP-RAID落盘方式如表1所示,当需要降级为RAID6时,固定空出最右边的磁盘,则表1示例下降级后所组成的RAID6如表2所示;
表1左旋不对齐下TP-RAID落盘方式
表2左旋不对齐下TP-RAID降为RAID6的落盘方式
其中,在同一个系统架构下,为了固件的编解码参数减少出错几率,以及数据盘数据不出错,一般要求负载均衡算法保持不变,也即也需以左旋不对齐方式来对RAID6方案进行落盘,在此过程中,默认空出的磁盘为最右侧磁盘,则为了满足左旋不对齐的负载均衡下,顺序迁移时所有涉及移动的用户数据全部在图中用灰色标出。换言之,不管使用怎样的降级算法,为了保持同样的负载均衡,降低错误几率,表2中的灰色部分的数据块都要完成读取和写入,从而达成迁移。表1和表2在假设K个数据块的前提下,将受到负载均衡影响的条带情况进行了完全的罗列,因此可知在K个数据块下的前提下,按照左旋不对齐从起始位开始计算直至回到起始位置的所有可能条带场景中,每种场景涉及移动的数据块数量统计如表3所示;
表3左旋不对齐下TP-RAID降为RAID6的所有场景下数据块迁移量
需要说明的是,表1中TP-RAID的编码实现的校验码块是PQR,表2、表3中降级为RAID6的校验码块标注为P’Q’。表3中对各种场景进行了标号,因为左旋不对齐基于P的位置计算Q的位置或QR的位置,因此,在K个数据盘的前提下,TP-RAID左旋不对齐一共有K+3种条带场景,RAID6的左旋不对齐如表3所示,一共有K+2种条带场景,直接映射的移动一定会有一个条带轮空无法映射。基于上述描述可知,TP-RAID共有K+3个场景,降为RAID6后,同样使用的是左旋不对齐的形式,会有K+2个场景。基于左旋不对齐P所在的位置,当P在条带最右侧时,编号为1,随后K+3种情况为其每次左移一位的情况,如图4所示。
相应的,本申请提供的数据转存方法中,确定经TP-RAID方法及左旋不对齐方式落盘后的待转移的目标条带数据,确定目标条带数据中P类型的基准校验码的目标位置信息,若目标位置信息表征基准校验码位于目标 条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码;若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码;对数据块及RAID6校验码进行落盘。假设目标条带数据的划分过程如图4所示,其中,条带1为重算组1,也即目标位置信息表征基准校验码位于目标条带数据最后一位时,将该目标条带数据标记为重算组1;条带K+1、K+2、K+3为重算组2,也即目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位时,将该目标条带标记为重算组2;条带2~K标记为移动组,也即目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位时,将该目标条带数据标记为移动组。
对于重算组2,在本申请中,在条带K+1,K+2,K+3中直接取K个数据,按照RAID6的标准编码方式,给参数进入编码运算模块直接计算新的P’Q’即可得到相应的RAID6校验码;对于移动组,需按照下述运算公式选取目标运算数据并计算得到相应的RAID6校验码,其中,运算公式为:




由上式可知,在条带场景2下,只需要读取PQR3个数据块即可运算得到RAID校验码,因此减少了K-3个数据块的读取需求;在场景3下,同理减少了K-3个数据块的读取需求;在场景4下,减少了K-2个数据块的读取需求;依次递增,到场景K下读取了K个数据块,和传统方法一样。而其中所有涉及需要读取的数据块,全是迁移工作必须读取的数据块,因此减少的数据块读取量为实际减少的数据量,能够平均提升一半以上的转换效率。
由以上分析过程可知,在可选应用场景下,运行本申请提供的数据转存方法时,本申请可以将TP-RAID中每K+3个条带数据划分为一个组,假设总共有n个组,其中组1到组(n-1)都满足条带数各自为K+3,则前n-1个符合本申请上述操作,对重算组2和移动组分别进行运算,直到第n个组,此时条带数不满足K+3,对其满足条件的移动组分别进行运算,然后将上而其他组里的重算组1依次按照负载均衡的实际要求依次落盘,并完成相关的校验运算即可,整个过程可以如图5所示。
请参阅图6,图6为本申请实施例提供的一种数据转存系统的结构示意图。
本申请实施例提供的一种数据转存系统,可以包括:
第一确定模块101,被设置为确定经TP-RAID方法落盘后的待转移的目标条带数据,TP-RAID方法包括生成三个校验码的RAID方法;
第二确定模块102,被设置为确定目标条带数据中预设类型的基准校验码的目标位置信息;
第一处理模块103,被设置为若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算目标条带数据中数据块的RAID6校验码;
第二处理模块104,被设置为若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第二位中的任一位,则在目标条带数据中确定数量与目标位置信息的数值相对应的目标运算数据,对目标运算数据进行运算得到RAID6校验码;
第一存储模块105,被设置为对数据块及RAID6校验码进行落盘。
本申请实施例提供的一种数据转存系统,第一确定模块可以包括:
第一确定单元,被设置为确定经TP-RAID方法及左旋不对齐方式落盘后的待转移的目标条带数据。
本申请实施例提供的一种数据转存系统,第二确定模块可以包括:
第二确定单元,被设置为确定目标条带数据中P类型的基准校验码的目标位置信息。
本申请实施例提供的一种数据转存系统,第二处理模块可以包括:
第一处理单元,被设置为若目标位置信息表征基准校验码位于目标条带数据的倒数第二位,则将目标条带数据中的三个校验码作为目标运算数据。
本申请实施例提供的一种数据转存系统,第一处理单元可以被设置为:
通过第一运算公式,对目标运算数据进行运算得到RAID6校验码;
第一运算公式包括:
其中,P′、Q′表示RAID6校验码;P、Q、R表示目标运算数据;K表示数据块的总个数。
本申请实施例提供的一种数据转存系统,第一存储模块可以包括:
第一存储单元,被设置为按照左旋不对齐方式对数据块及RAID6校验码进行落盘。
本申请实施例提供的一种数据转存系统,第二处理模块可以包括:
第二处理单元,被设置为若目标位置信息表征基准校验码位于目标条带数据的倒数第三位,则将目标条带数据中的三个校验码作为目标运算数据。
本申请实施例提供的一种数据转存系统,第二处理单元可以被设置为:
通过第二运算公式,对目标运算数据进行运算得到RAID6校验码;
第二运算公式包括:
其中,P′、Q′表示RAID6校验码;P、O、R表示目标运算数据。
本申请实施例提供的一种数据转存系统,第一存储模块可以包括:
第二存储单元,被设置为按照左旋不对齐方式对数据块及RAID6校验码进行落盘。
本申请实施例提供的一种数据转存系统,第二处理模块可以包括:
第三处理单元,被设置为若目标位置信息表征基准校验码位于目标条带数据的第四位至倒数第四位中的任一位,则将目标条带数据中的三个校验码及D(K+4-X)至DK所对应的数据块作为目标运算数据,其中,X表示目标位置信息在目标条带数据中的倒数位数的值。
本申请实施例提供的一种数据转存系统,第三处理单元可以被设置为:通过第三运算公式,对目标运算数据进行运算得到RAID6校验码;
第三运算公式包括:
其中,P′、Q′表示上述RAID6校验码;P、Q、R、D(K+4-X)至DK表示上述目标运算数据;且X的值为4时,D(K+4-X)至DK所对应的数据块为DK,K表示上述数据块的总个数。
本申请实施例提供的一种数据转存系统,第一存储模块可以包括:
第三存储单元,被设置为按照左旋不对齐方式对数据块及RAID6校验码进行落盘。
本申请实施例提供的一种数据转存系统,第一存储模块可以包括:
第四存储单元,被设置为若目标位置信息表征基准校验码位于目标条带数据的第一位或第二位或第三位,则基于左旋不对齐方式对对应的数据块及RAID6校验码进行落盘;
第五存储单元,被设置为若目标位置信息表征基准校验码位于目标条带数据的最后一位,则基于负载均衡需求对对应的数据块及RAID6校验码进行落盘。
本申请还提供了一种数据转存设备及非易失性可读存储介质,其均具有本申请实施例提供的一种数据转存方法具有的对应效果。请参阅图7,图7为本申请实施例提供的一种数据转存设备的结构示意图。
本申请实施例提供的一种数据转存设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如上任一实施例所描述数据转存方法的步骤。
请参阅图8,本申请实施例提供的另一种数据转存设备中还可以包括:与处理器202连接的输入端口203,被设置为传输外界输入的命令至处理器202;与处理器202连接的显示单元204,被设置为显示处理器202的处理结果至外界;与处理器202连接的通信模块205,被设置为实现数据转存设备与外界的通信。显示单元204可以为显示而板、激光扫描使显示器等;通信模块205所采用的通信方式包括但不局限于移动高清链接技术(HML)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线连接:无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术。
本申请实施例提供的一种非易失性可读存储介质,非易失性可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如上任一实施例所描述数据转存方法的步骤。
本申请所涉及的非易失性可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本申请实施例提供的数据转存系统、设备及非易失性可读存储介质中相关部分的说明请参见本申请实施例提供的数据转存方法中对应部分的详细说明,在此不再赘述。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (20)

  1. 一种数据转存方法,其特征在于,包括:
    确定经TP-RAID方法落盘后的待转移的目标条带数据,所述TP-RAID方法包括生成三个校验码的RAID方法;
    确定所述目标条带数据中预设类型的基准校验码的目标位置信息;
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算所述目标条带数据中数据块的RAID6校验码;
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则在所述目标条带数据中确定数量与所述目标位置信息的数值相对应的目标运算数据,对所述目标运算数据进行运算得到所述RAID6校验码;
    对所述数据块及所述RAID6校验码进行落盘。
  2. 根据权利要求1所述的方法,其特征在于,所述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:
    确定经所述TP-RAID方法及左旋不对齐方式落盘后的待转移的所述目标条带数据。
  3. 根据权利要求2所述的方法,其特征在于,所述确定所述目标条带数据中预设类型的基准校验码的目标位置信息,包括:
    确定所述目标条带数据中P类型的所述基准校验码的所述目标位置信息。
  4. 根据权利要求3所述的方法,其特征在于,所述若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则在所述目标条带数据中确定数量与所述目标位置信息的数值相对应的目标运算数据,包括:
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的倒数第二位,则将所述目标条带数据中的三个校验码作为所述目标运算数据。
  5. 根据权利要求4所述的方法,其特征在于,所述对所述目标运算数据进行运算得到所述RAID6校验码,包括:
    通过第一运算公式,对所述目标运算数据进行运算得到所述RAID6校验码;
    所述第一运算公式包括:
    其中,P′、Q′表示所述RAID6校验码;P、Q、R表示所述目标运算数据;K表示所述数据块的总个数。
  6. 根据权利要求5所述的方法,其特征在于,所述对所述数据块及所述RAID6校验码进行落盘,包括:
    按照所述左旋不对齐方式对所述数据块及所述RAID6校验码进行落盘。
  7. 根据权利要求3所述的方法,其特征在于,所述若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则在所述目标条带数据中确定数量与所述目标位置信息的数值相对应的目标运算数据,包括:
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的倒数第三位,则将所述目标条带数据中的三个校验码作为所述目标运算数据。
  8. 根据权利要求7所述的方法,其特征在于,所述对所述目标运算数据进行运算得到所述RAID6校验码,包括:
    通过第二运算公式,对所述目标运算数据进行运算得到所述RAID6校验码;
    所述第二运算公式包括:
    其中,P′、Q′表示所述RAID6校验码;P、Q、R表示所述目标运算数据。
  9. 根据权利要求8所述的方法,其特征在于,所述对所述数据块及所述RAID6校验码进行落盘,包括:
    按照所述左旋不对齐方式对所述数据块及所述RAID6校验码进行落盘。
  10. 根据权利要求3所述的方法,其特征在于,所述若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则在所述目标条带数据中确定数量与所述目标位置信息的数值相对应的目标运算数据,包括:
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第四位中的任一位,则将所述目标条带数据中的三个校验码及D(K+4-X)至DK所对应的所述数据块作为所述目标运算数据,其中,X表示所述目标位置信息在所述目标条带数据中的倒数位数的值。
  11. 根据权利要求10所述的方法,其特征在于,所述对所述目标运算数据进行运算得到所述RAID6校验码,包括:
    通过第三运算公式,对所述目标运算数据进行运算得到所述RAID6校验码;
    所述第三运算公式包括:
    其中,P′、Q′表示所述RAID6校验码;P、Q、R、D(K+4-X)至DK表示所述目标运算数据;且X的值为4时,D(K+4-X)至DK所对应的数据块为DK,K表示所述数据块的总个数。
  12. 根据权利要求11所述的方法,其特征在于,所述对所述数据块及所述RAID6校验码进行落盘,包括:
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则按照所述左旋不对齐方式对所述数据块及所述RAID6校验码进行落盘。
  13. 根据权利要求2所述的方法,其特征在于,所述对所述数据块及所述RAID6校验码进行落盘,包括:
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第一位或第二位或第三位,则基于所述左旋不对齐方式对对应的所述数据块及所述RAID6校验码进行落盘;
    若所述目标位置信息表征所述基准校验码位于所述目标条带数据的最后一位,则基于负载均衡需求对对应的所述数据块及所述RAID6校验码进行落盘。
  14. 根据权利要求1所述的方法,其特征在于,
    所述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经所述TP-RAID方法及左旋对齐方式落盘后的待转移的所述目标条带数据;
    所述对所述数据块及所述RAID6校验码进行落盘,包括:按照所述左旋对齐方式对所述数据块及所述RAID6校验码进行落盘。
  15. 根据权利要求1所述的方法,其特征在于,
    所述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经所述TP-RAID方法及右旋不对齐方式落盘后的待转移的所述目标条带数据;
    所述对所述数据块及所述RAID6校验码进行落盘,包括:按照所述右旋不对齐方式对所述数据块及所述RAID6校验码进行落盘。
  16. 根据权利要求1所述的方法,其特征在于,
    所述确定经TP-RAID方法落盘后的待转移的目标条带数据,包括:确定经所述TP-RAID方法及右旋对齐方式落盘后的待转移的所述目标条带数据;
    所述对所述数据块及所述RAID6校验码进行落盘,包括:按照所述右旋对齐方式对所述数据块及所述RAID6校验码进行落盘。
  17. 根据权利要求1所述的方法,其特征在于,所述确定所述目标条带数据中预设类型的基准校验码的目标位置信息,包括:
    确定所述目标条带数据中与所述TP-RAID方法采用的负载均衡方式对应的基准校验码的目标位置信息、。
  18. 一种数据转存系统,其特征在于,包括:
    第一确定模块,被设置为确定经TP-RAID方法落盘后的待转移的目标条带数据,所述TP-RAID方法包括生成三个校验码的RAID方法;
    第二确定模块,被设置为确定所述目标条带数据中预设类型的基准校验码的目标位置信息;
    第一处理模块,被设置为若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第一位或第二位或第三位或最后一位,则基于RAID6方法计算所述目标条带数据中数据块的RAID6校验码;
    第二处理模块,被设置为若所述目标位置信息表征所述基准校验码位于所述目标条带数据的第四位至倒数第二位中的任一位,则在所述目标条带数据中确定数量与所述目标位置信息的数值相对应的目标运算数据,对所述目标运算数据进行运算得到所述RAID6校验码;
    第一存储模块,被设置为对所述数据块及所述RAID6校验码进行落盘。
  19. 一种数据转存设备,其特征在于,包括:
    存储器,被设置为存储计算机程序;
    处理器,被设置为执行所述计算机程序时实现如权利要求1至17任一项所述数据转存方法的步骤。
  20. 一种非易失性可读存储介质,其特征在于,所述非易失性可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至17任一项所述数据转存方法的步骤。
PCT/CN2023/079095 2022-09-06 2023-03-01 一种数据转存方法、系统、设备及非易失性可读存储介质 WO2024051114A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211081688.1A CN115167787B (zh) 2022-09-06 2022-09-06 一种数据转存方法、系统、设备及计算机可读存储介质
CN202211081688.1 2022-09-06

Publications (1)

Publication Number Publication Date
WO2024051114A1 true WO2024051114A1 (zh) 2024-03-14

Family

ID=83481031

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/079095 WO2024051114A1 (zh) 2022-09-06 2023-03-01 一种数据转存方法、系统、设备及非易失性可读存储介质

Country Status (2)

Country Link
CN (1) CN115167787B (zh)
WO (1) WO2024051114A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115167787B (zh) * 2022-09-06 2023-01-24 苏州浪潮智能科技有限公司 一种数据转存方法、系统、设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114415983A (zh) * 2022-03-30 2022-04-29 苏州浪潮智能科技有限公司 一种raid编解码方法、装置、设备及可读存储介质
CN114546272A (zh) * 2022-02-18 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 快速通用的raid降级为raid5的方法、系统、设备和存储介质
CN114610244A (zh) * 2022-03-25 2022-06-10 山东云海国创云计算装备产业创新中心有限公司 一种独立冗余磁盘阵列降级方法、系统及设备
CN114895842A (zh) * 2022-03-29 2022-08-12 山东云海国创云计算装备产业创新中心有限公司 一种tp-raid编解码方法、系统、设备及存储介质
CN115167787A (zh) * 2022-09-06 2022-10-11 苏州浪潮智能科技有限公司 一种数据转存方法、系统、设备及计算机可读存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8145941B2 (en) * 2006-10-31 2012-03-27 Hewlett-Packard Development Company, L.P. Detection and correction of block-level data corruption in fault-tolerant data-storage systems
US8327250B1 (en) * 2009-04-21 2012-12-04 Network Appliance, Inc. Data integrity and parity consistency verification
JP4843695B2 (ja) * 2009-06-26 2011-12-21 株式会社東芝 ディスクアレイ制御装置及びディスクアレイ装置
CN102081559B (zh) * 2011-01-11 2013-06-05 华为数字技术(成都)有限公司 一种独立磁盘冗余阵列的数据恢复方法和装置
US10481979B2 (en) * 2017-09-28 2019-11-19 Intel Corporation Storage system, computing system, and methods thereof
CN109725831B (zh) * 2017-10-27 2022-06-10 伊姆西Ip控股有限责任公司 管理存储系统的方法、系统和计算机可读介质
CN111857552A (zh) * 2019-04-30 2020-10-30 伊姆西Ip控股有限责任公司 存储管理方法、电子设备和计算机程序产品
CN113297000B (zh) * 2021-05-20 2022-12-23 山东云海国创云计算装备产业创新中心有限公司 一种raid编码电路及编码方法
CN114442950B (zh) * 2022-01-21 2024-01-23 山东云海国创云计算装备产业创新中心有限公司 一种数据恢复方法、系统、装置及计算机可读存储介质
CN114415982B (zh) * 2022-03-30 2022-06-07 苏州浪潮智能科技有限公司 一种数据存储方法、装置、设备及可读存储介质
CN114756402A (zh) * 2022-04-15 2022-07-15 山东云海国创云计算装备产业创新中心有限公司 Raid组更新数据时保障数据安全的方法、系统、设备及介质
CN114756175A (zh) * 2022-04-18 2022-07-15 山东云海国创云计算装备产业创新中心有限公司 一种用于磁盘阵列的解码方法、系统、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546272A (zh) * 2022-02-18 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 快速通用的raid降级为raid5的方法、系统、设备和存储介质
CN114610244A (zh) * 2022-03-25 2022-06-10 山东云海国创云计算装备产业创新中心有限公司 一种独立冗余磁盘阵列降级方法、系统及设备
CN114895842A (zh) * 2022-03-29 2022-08-12 山东云海国创云计算装备产业创新中心有限公司 一种tp-raid编解码方法、系统、设备及存储介质
CN114415983A (zh) * 2022-03-30 2022-04-29 苏州浪潮智能科技有限公司 一种raid编解码方法、装置、设备及可读存储介质
CN115167787A (zh) * 2022-09-06 2022-10-11 苏州浪潮智能科技有限公司 一种数据转存方法、系统、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN115167787A (zh) 2022-10-11
CN115167787B (zh) 2023-01-24

Similar Documents

Publication Publication Date Title
US10416906B2 (en) Rebalancing efficiency with optimal logical insertion locations
US9063910B1 (en) Data recovery after triple disk failure
US8677063B2 (en) Parity declustered storage device array with partition groups
CN115080303B (zh) Raid6磁盘阵列的编码方法、解码方法、装置及介质
RU2747089C2 (ru) Устройство и соответствующая методология для кодирования и декодирования данных для кода затирания
US11340986B1 (en) Host-assisted storage device error correction
WO2024051114A1 (zh) 一种数据转存方法、系统、设备及非易失性可读存储介质
WO2010133080A1 (zh) 基于(d,k)摩尔图的网络存储结构的数据存储方法
WO2024001112A1 (zh) 一种存储服务器的数据迁移方法、系统、设备及非易失性可读存储介质
US11074124B2 (en) Method and system for enhancing throughput of big data analysis in a NAND-based read source storage
WO2024001126A1 (zh) 一种纠删码融合方法、系统、电子设备及非易失性可读存储介质
CN103176865B (zh) 一种纠删码存储中负载感知的读优化方法
JP2021096837A (ja) 信頼性の向上したssd
WO2023184911A1 (zh) 一种数据存储方法、装置、设备及非易失性可读存储介质
CN114546272A (zh) 快速通用的raid降级为raid5的方法、系统、设备和存储介质
CN114610244A (zh) 一种独立冗余磁盘阵列降级方法、系统及设备
CN114115729A (zh) 一种raid下的高效数据迁移方法
CN116501537B (zh) 磁盘阵列切换方法、系统、电子设备及存储介质
WO2023184843A1 (zh) 一种raid编解码方法、装置、设备及可读存储介质
CN116450048A (zh) Raid6磁盘阵列降级为raid5磁盘阵列的方法
CN114756175A (zh) 一种用于磁盘阵列的解码方法、系统、设备及介质
US20180075047A1 (en) Accessing serially stored data in a dispersed storage network
US11239864B2 (en) Techniques for improved erasure coding in distributed storage systems
CN102819406A (zh) 一种前端数据存储方法及装置
US20190079862A1 (en) Logically expanding existing memories in a dispersed storage network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23861822

Country of ref document: EP

Kind code of ref document: A1