Improved data storage method for SLR-DP coding multi-disk repair
By optimizing the distribution and recovery mechanism of redundant data through the SLR-DP encoding method, the problems of slow data recovery speed and high redundant computational overhead in RDP encoding in distributed storage systems are solved, achieving fast data recovery and efficient fault tolerance.
Patent Information
- Application Number
- CN202511594003.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-03
- Publication Date
- 2026-02-03
AI Technical Summary
Existing RDP encoding in distributed storage systems suffers from problems such as slow data recovery speed, high overhead of redundant computation and storage, limited recovery capability, and performance impact from storage node failures. In particular, in large-scale distributed storage systems, it is impossible to fully recover data when three disks fail.
The SLR-DP encoding method is adopted to divide the disk into local redundancy and global redundancy groups, and generate redundant data blocks through XOR operation. This optimizes the distribution and recovery mechanism of redundant data, reduces the amount of computation for redundant data recovery, and improves the data recovery speed.
In the event of single-disk or dual-disk failure, data recovery is faster, reducing the computational load for redundant data recovery, improving system response speed, and ensuring data recovery capability in the event of a three-disk failure.
Smart Images

Figure CN121455731A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of data storage, and particularly relates to an improved SLR-DP encoded multi-disk repair data storage method. BACKGROUND
[0002] RDP encoding (Row Diagonal Parity) is a redundancy encoding technique commonly used in distributed storage systems, aiming to improve the fault tolerance of data and the reliability of storage systems. Distributed storage systems (such as Hadoop Distributed File System HDFS or other similar systems) need to distribute a large amount of data across different nodes and be able to recover data when some nodes fail.
[0003] In a distributed storage system, RDP encoding generally follows the following steps to achieve reliable storage and recovery of data: (1) Data chunking and distribution: The data to be stored is divided into multiple data blocks, and these data blocks are distributed to different storage nodes. Each node stores a part of the data blocks.
[0004] (2) Horizontal redundancy and diagonal redundancy: Redundancy encoding is performed in the row and diagonal directions of the data. Specifically: Horizontal redundancy: Calculate a redundancy data block for each row of data blocks, which can be used to recover the lost data of the row. Diagonal redundancy: Calculate redundancy data blocks for the diagonal direction of the data blocks, which are used to recover the lost data in the diagonal direction.
[0005] (3) Redundancy data storage: Store the generated redundancy data (horizontal redundancy and diagonal redundancy) in different storage nodes. The distribution of redundancy data needs to ensure that data can be recovered through redundancy data when some nodes fail.
[0006] (4) Data access and recovery: When accessing data, the system reads the corresponding storage nodes. If a data block is lost or damaged, the system will use the redundancy data (horizontal redundancy and diagonal redundancy) to recover the lost data block. Recovery process: If a node fails, the lost data can be recovered through the corresponding row redundancy and diagonal redundancy data. The recovery process relies on the integrity and recovery ability of the redundancy data.
[0007] (5) Data verification and consistency: The system will regularly perform data consistency checks to ensure that the redundancy data is valid and can correctly recover data when nodes fail. The verification process involves verifying the redundancy information to ensure its accuracy in data recovery.
[0008] Although RDP encoding has strong data recovery capability in distributed storage systems, there are still some technical problems and corresponding reasons in practical applications: (1) Data recovery speed and real-time problem: When node failure or data loss occurs, the recovery speed may not be fast enough, especially when the recovery operation involves multiple nodes. The specific reason is that the recovery process may need to read the redundant data of multiple storage nodes, especially in large-scale distributed storage systems, the cross-node data recovery may be affected by network delay and bandwidth limitation.
[0009] (2) Redundancy calculation and storage overhead problem: The calculation and storage of redundant information require additional computing resources and storage space, especially when dealing with large-scale data, this overhead may significantly affect the efficiency of the system. The specific reason is that RDP encoding needs to calculate redundant data blocks for each row and diagonal, which increases the computing burden and storage demand of the storage system.
[0010] (3) Recovery capability limitation: Although RDP encoding can effectively recover lost data blocks, when the amount of lost data exceeds the capacity of redundant information, the recovery capability will be limited. The redundancy information of RDP encoding is fixed, if a node failure causes the number of lost data blocks to exceed the redundancy capacity, the lost data cannot be completely recovered. Especially for three disk failure problem, this method cannot recover most three disk failure problems.
[0011] And further, the impact of storage node failure on performance: When the storage node fails, the system needs to rely on redundant data for recovery. During the recovery process, if the redundant information is incomplete or the recovery time is too long, it may affect the system performance. The recovery process may involve a large amount of calculation and data transmission, especially in the case of widely distributed storage nodes or high network delay, the recovery operation will introduce significant performance overhead. SUMMARY
[0012] The purpose of the present application is to overcome the shortcomings of the prior art and provide an improved SLR-DP encoding multi-disk repair data storage method.
[0013] The purpose of the present application is achieved by the following technical solutions: In a first aspect of the present application, an improved SLR-DP encoding multi-disk repair data storage method is provided, comprising the following steps: S1: According to the size of the original data and the size of the disk, determine the number of disks p+1 used for storage, where p is a prime number greater than or equal to 5; each disk is divided into a plurality of rows; S2: take p-1 disks as a local redundancy disk group, and take the other 2 disks as a global redundancy disk group; and divide the local redundancy disk group into a left local redundancy disk group and a right local redundancy disk group, and set one local redundancy disk in the left local redundancy disk group and the right local redundancy disk group respectively, and the rest of the disks are ordinary redundancy disks; S3: divide the original data into data blocks according to a specified size; S4: perform the following sub-steps on the local redundancy disk group: S41: place the first (p-1) / 2 data blocks in the 0th row of the left local redundancy disk group in sequence; S42: perform XOR operation on the data in the 0th row of the left local redundancy disk group, and store the result in the 0th row of the local redundancy disk in the right local redundancy disk group; S43: perform the following redundancy XOR operation in a loop until all the data blocks are placed in the local redundancy disk group, and n is initially taken as 0: place the subsequent (p-1) / 2-1 data blocks in the nth row of the ordinary redundancy disk in the right local redundancy disk group in sequence; perform XOR operation on the data in the nth row of the right local redundancy disk group, and store the result in the n+1th row of the local redundancy disk in the left local redundancy disk group; place the subsequent (p-1) / 2-1 data blocks in the n+1th row of the ordinary redundancy disk in the left local redundancy disk group in sequence; perform XOR operation on the data in the n+1th row of the left local redundancy disk group, and store the result in the n+1th row of the local redundancy disk in the right local redundancy disk group; S5: perform the following sub-steps on the global redundancy disk group: take the encoded data in the local redundancy disk group as the original data block of SLR-DP encoding, and complete the encoding of the horizontal redundancy block and the diagonal redundancy block according to the encoding mode of SLR-DP and place them in the two disks in the global redundancy disk group respectively.
[0014] Further, in step S2, the local redundancy disk group is the first p-1 disks, and the global redundancy disk group is the last 2 disks. The local redundancy disk of the left local redundancy disk group is the disk closest to the right local redundancy disk group in sequence in the left local redundancy disk group, and the local redundancy disk of the right local redundancy disk group is the disk closest to the left local redundancy disk group in sequence in the right local redundancy disk group.
[0015] Further, in step S3, the specified size is 64MB or 128MB.
[0016] The present application has the following advantages: In an exemplary embodiment of the present application, the amount of calculation for redundant data recovery is reduced by a local recovery mechanism, so that when a fault occurs, the lost data block can be quickly identified and recovered, greatly shortening the data recovery time and improving the response speed of the system, especially in the case of single disk and double disk faults, the recovery speed is faster than the traditional scheme. BRIEF DESCRIPTION OF DRAWINGS
[0017] Figure 1 A flow chart of an improved SLR-DP encoding multi-disk repair data storage method provided in an exemplary embodiment of the present application; Figure 2 A data block diagram provided in an exemplary embodiment of the present application; Figure 3 A local redundancy encoding diagram provided in an exemplary embodiment of the present application; Figure 4 A global redundancy encoding diagram provided in an exemplary embodiment of the present application; Figure 5 A repair diagram of left local redundancy fault in single disk loss provided in an exemplary embodiment of the present application; Figure 6 A repair diagram of right local redundancy fault in single disk loss provided in an exemplary embodiment of the present application; Figure 7 A recovery process diagram when double disk fault occurs at the left data disk in double disk loss provided in an exemplary embodiment of the present application; Figure 8 A recovery process diagram when double disk fault occurs at the left and right data disks respectively in double disk loss provided in an exemplary embodiment of the present application; Figure 9 A recovery process diagram when double disk fault occurs at one right redundancy disk and one right data disk in double disk loss provided in an exemplary embodiment of the present application; Figure 10 An average block number diagram read in a single disk provided in an exemplary embodiment of the present application; Figure 11 An average block number diagram read in a double disk provided in an exemplary embodiment of the present application. DETAILED DESCRIPTION
[0018] The technical solutions of the present application will be described clearly and completely below in conjunction with the drawings. Obviously, the described embodiments are part of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of protection of the present application.
[0019] In the description of the present application, it should be noted that the directions or positional relationships belonging to "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer" and the like are described based on the directions or positional relationships described in the drawings, only for the convenience of describing the present application and simplifying the description, and are not intended to indicate or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation on the present application. In addition, "first", "second" are only for the purpose of description and cannot be understood as indicating or implying relative importance.
[0020] In the description of the present application, it should be noted that, unless otherwise explicitly specified and limited, "mounting", "connection", "connection" should be understood in a broad sense, for example, it can be fixedly connected, or it can be detachably connected, or integrally connected; it can be mechanically connected, or it can be electrically connected; it can be directly connected, or it can be indirectly connected through an intermediate medium; it can be the communication inside two elements. For those skilled in the art, the specific meaning of the above terms in the present application can be understood according to the specific circumstances.
[0021] In addition, the technical features involved in the different embodiments of the application described below can be combined with each other as long as they do not conflict with each other.
[0022] Reference Figure 1 , Figure 1 A flow chart of an improved SLR-DP encoding multi-disk repair data storage method provided in an exemplary embodiment of the present application is shown. Data starts from encoding when it needs to be stored, goes through data blocking, data block placement, redundancy encoding, and finally ensures the reliability and fault recovery capability of data in the storage process. Specifically, the method comprises the following steps: S1: According to the size of the original data and the size of the disk, the number p+1 of disks used for storage is determined, wherein p is a prime number greater than or equal to 5; each disk is divided into a plurality of rows; In a specific exemplary embodiment, a total of 1152MB of data needs to be stored, according to the description of the present method, when p=5, a total of 9 data blocks can be stored, so the original data is divided into 9 data blocks of 128MB. As Figure 2 The 1152MB of data is divided into 9 data blocks of 128MB as shown. The data is stored separately for convenience of presentation as regular placement, and the actual situation can be presented according to dynamic placement, which does not affect its performance. According to the description of the present method, when p=5, a total of 9 data blocks can be stored.
[0023] This step determines the storage structure and the distribution mode of the data blocks, providing a basis for the subsequent data block placement and recovery process.
[0024] S2: p-1 disks are used as local redundant disk group, and the other 2 disks are used as global redundant disk group; and the local redundant disk group is divided into left local redundant disk group and right local redundant disk group, and one local redundant disk is set in the left local redundant disk group and the right local redundant disk group respectively, and the rest of the disks are ordinary redundant disks.
[0025] In a specific exemplary embodiment, the storage system uses 6 disks (DISK0~DISK5), and p=5. The first 4 disks (e.g. DISK0~DISK3) are used as local redundant disk group, and are divided into left local redundant disk group (DISK0 and DISK1) and right local redundant disk group (DISK2 and DISK3). Figure 3 The last 2 disks (e.g. DISK4 and DISK5) are used as right local redundant disk group. Meanwhile, for the left local redundant disk group (DISK0 and DISK1) and the right local redundant disk group (DISK2 and DISK3), one local redundant disk (DISK1 and DISK2) is set in the left local redundant disk group and the right local redundant disk group respectively, and the rest of the disks are ordinary redundant disks (DISK0 and DISK3). Figure 4
[0026] It should be noted that the exemplary embodiment adopts the preferred way: the local redundant disk group is the first p-1 disks, the global redundant disk group is the last 2 disks; the local redundant disk of the left local redundant disk group is the disk closest to the right local redundant disk group in the left local redundant disk group in order, and the local redundant disk of the right local redundant disk group is the disk closest to the left local redundant disk group in the right local redundant disk group in order. That is, the setting is performed after the disks are arranged in order, or the setting can be performed without following this way.
[0027] The determination of the distribution relationship of the disks provides a basis for the storage and encoding process of the subsequent data blocks. The left and right local disks are used to alternately store data blocks and calculate redundancy.
[0028] S3: the original data is divided into data blocks in a specified size (the specified size is 64MB or 128MB), as shown in FIG. 3. Figure 2
[0029] The data block provides a basis for the subsequent redundancy encoding and storage. In the encoding step, the data blocks will be used to generate redundancy information.
[0030] S4: the following sub-steps are performed on the local redundant disk group: S41: the first (p-1) / 2 number of data blocks are sequentially placed in the 0th row of the left local redundant disk group; S42: XOR operation is performed on the data in the 0th row of the left partial redundancy disk group, and the result is stored in the 0th row of the partial redundancy disk in the right partial redundancy disk group; S43: the following redundancy XOR operation is performed in a loop until all data blocks are placed in the partial redundancy disk group, and n is initially taken as 0: the subsequent (p-1) / 2-1 data blocks are sequentially placed in the nth row of the ordinary redundancy disk in the right partial redundancy disk group; XOR operation is performed on the data in the nth row of the right partial redundancy disk group, and the result is stored in the n+1th row of the partial redundancy disk in the left partial redundancy disk group; the subsequent (p-1) / 2-1 data blocks are sequentially placed in the n+1th row of the ordinary redundancy disk in the left partial redundancy disk group; XOR operation is performed on the data in the n+1th row of the left partial redundancy disk group, and the result is stored in the n+1th row of the partial redundancy disk in the right partial redundancy disk group.
[0031] And in the specific exemplary embodiment of the partial redundancy encoding as shown in Figure 3 The first step, place data blocks in d 0,0 , d 0,1 , and place the XOR result in p 0,2 . The second step, place data blocks in d 0,3 , and place the XOR result of p 0,2 , d 0,3 in p 1,1 . The third step, place data blocks in d 1,0 , and place the result of the XOR of d 1,0 , p 1,1 in p 1,2 . According to formulas (1), (2), alternately perform data placement and encoding until the data blocks are placed.
[0032] (1) (2) This step involves data block storage and redundancy calculation at the same time, and data block placement and encoding are alternately performed. The calculation of the redundancy data block directly affects the subsequent fault recovery capability.
[0033] S5: the following sub-steps are performed on the global redundancy disk group: The encoded data in the partial redundancy disk group is taken as the original data block of the SLR-DP encoding, and the encoding of the horizontal redundancy block and the encoding of the diagonal redundancy block are completed according to the encoding mode of the SLR-DP and are placed in two disks in the global redundancy disk group, respectively.
[0034] And in the specific exemplary embodiment of the partial redundancy encoding as shown in Figure 4In the specific exemplary embodiment of the global redundancy coding shown, when the first 4 disks have been encoded according to the local redundancy coding, the remaining 5th and 6th disks are respectively placed with the horizontal parity data and the diagonal parity data of the SLR-DP coding. The formulas shown are as shown in formulas (3) and (4): (3) (4) This step involves the calculation of horizontal redundancy and diagonal redundancy blocks. The calculation of the redundancy blocks directly affects the subsequent fault recovery capability.
[0035] It should be noted that the core principle of the technical solution is to use redundancy coding in the storage process to improve the system fault tolerance, and to quickly recover through local recovery when a fault occurs. The redundancy data is generated by interleaving local redundancy coding, horizontal redundancy coding and diagonal redundancy coding, to ensure that the lost data can be quickly recovered in the case of single disk failure and double disk failure, while ensuring the recovery capability in the case of triple disk failure. The interleaving placement coding method effectively increases the distribution of redundancy data, ensuring that the lost data block can be quickly recovered through local redundancy when a fault occurs.
[0036] Since the invention reduces the amount of redundancy data recovery calculation through the local recovery mechanism, it can quickly identify and recover the lost data block when a fault occurs, greatly shortening the data recovery time and improving the system response speed, especially in the case of single disk and double disk failure, the recovery speed is faster than the traditional scheme.
[0037] The following specific embodiments explain the recovery of single disk loss and double disk loss: (1) Single disk loss, in this exemplary embodiment, as shown in Figure 5 , p=7, p-1=6 disks as a local redundancy disk group (DISK0~DISK5), and the other 2 disks as a global redundancy disk group (DISK6 and DISK7). At the same time, the local redundancy disk group is divided into a left local redundancy disk group (DISK0~DISK2) and a right local redundancy disk group (DISK3~DISK5), and a local redundancy disk is set in the left local redundancy disk group and the right local redundancy disk group (DISK2 and DISK3, respectively), and the remaining disks are ordinary redundancy disks (DISK0, DISK1, DISK4, DISK5).
[0038] The lost column is located in the local redundancy disk group, i.e. , k is the disk number.
[0039] (1-1) , single disk failure occurs in the left local redundancy area (including DISK0~DISK3). Since the left local redundancy is a horizontal parity before All data blocks of the column, so when the left partial redundant disk group has a single disk failure, the left partial redundant disk group can directly use horizontal XOR to recover the failed disk. The single disk failure repair overhead is . The repair formula is as follows: (5) In the present exemplary embodiment, when p = 7, k = 1, the repair schematic diagram of single disk failure is shown in 5, wherein DISK1 is the failed disk, and the data blocks participating in the repair are 18, which are all data blocks in disk0, disk2 and disk3.
[0040] (1-2) Single disk failure occurs in the right partial redundant area (including DISK4~DISK6), that is, . At this time, k includes the data columns of the right partial redundant disk group and the global horizontal check column, and the repair process is to use the surviving right partial redundant check column (i.e. This part of the disk area) and the global redundant check column to recover the failed disk by conclusion (the global horizontal check column of the IRDP code can be obtained by XOR from the first disk to the first disk.) The single disk failure repair overhead is . The repair formula is as follows: (8) When p = 7, k = 5, the repair schematic diagram of single disk failure is shown in 6, wherein DISK5 is the failed disk. Only the data of DISK4 and DISK6 two disks is needed to recover the failed disk. The data blocks participating in the repair are 12, which are all data blocks in disk4 and disk6.
[0041] (1-3) Single disk failure occurs in the diagonal check column (DISK7), that is, . Because the diagonal check column in the SLR_DP two-dimensional array code model is the same as that of the RDP code, there is no associated data block. Therefore, the repair method of the diagonal check disk failure of the SLR_DP code and the RDP code is the same. The single disk failure overhead is .
[0042] (2) Double disk loss, which is the same as Figure 3 and Figure 4 . As Figures 7 to 9As shown, the storage system uses 6 disks (DISK0~DISK5), where p=5. Among them, the first 4 disks (DISK0~DISK3) are used as local redundant disk groups, and are divided into a left local redundant disk group (DISK0 and DISK1) and a right local redundant disk group (DISK2 and DISK3). The last 2 disks (DISK4 and DISK5) are used as a right local redundant disk group. At the same time, for the left local redundant disk group (DISK0 and DISK1) and the right local redundant disk group (DISK2 and DISK3), one local redundant disk (DISK1 and DISK2) is set in the left local redundant disk group and the right local redundant disk group, respectively, and the remaining disks are ordinary redundant disks (DISK0 and DISK3).
[0043] u and v are the numbers of the lost disks.
[0044] (2-1) When double disk failures occur in the left data disks (DISK0, DISK1) or the right data disks (DISK2, DISK3) at the same time, i.e. or and double disk failures occur in the two local redundant disks (DISK1, DISK2) at the same time, i.e. or one of the failed disks is in the diagonal redundant column (DISK5), i.e. In this case, the check chain needs to be searched in reverse until the check set that can be directly recovered is searched, and the other failed data block in the same row is recovered through the local redundant disk. The recovery process is shown in Figure 7 .
[0045] (2-2) When the failed disks have one in the left data disks (DISK0, DISK1) and the other in the local redundant disk (DISK1, DISK2) or the right data disk (DISK2, DISK3). That is, and This case needs to use the check set of the two local redundant disks to recover the failed disks, and when the failed disks are DISK0 and DISK3, the specific recovery process is shown in Figure 8 .
[0046] (2-3) When the failed disks have one in the right data disk (DISK2, DISK3) and the other in the local redundant disk (DISK1, DISK2) or the horizontal redundant disk (DISK4). That is, or Only the right local redundancy and horizontal redundancy need to be used. Because the right local redundancy and horizontal redundancy have overlapping parts, the repair overhead is minimized to When the failed disks are disk2 and disk3, the repair process is as shown in Figure 9as shown.
[0047] It should be noted that: (1) For the above single disk and double disk fault conditions, since the application reduces the calculation amount of redundant data recovery through local recovery mechanism, it can quickly identify and recover the lost data block when the fault occurs, greatly shortens the data recovery time, improves the response speed of the system, especially in single disk and double disk fault conditions, the recovery speed is faster than the traditional scheme. Specifically: (1.1) Single disk fault repair overhead IRDP (the abbreviation of the way of the application) adopts local redundancy to repair the faulty disk when a single disk fails. Due to the special structure of IRDP local redundancy, it improves the repair mode of RDP, LRRDP and RRDP single disk repair, which concentrates the data amount on a single local horizontal check. Using smaller local redundancy check set, the efficiency of single disk repair is improved. As shown in Figure 10 , the read overhead of IRDP is reduced by 13.66%~54.17% compared with RDP, LRRDP and RRDP single disk repair. When the prime number is less than 9, the single disk repair overhead is equal to DRDP. However, as the prime number increases, the single disk repair overhead is gradually smaller than DRDP. The single disk repair efficiency is better than DRDP.
[0048] (1.2) Double disk fault repair overhead When double disk fault occurs, RDP code needs to read all other disk data to recover two faulty disks. LRRDP increases a redundant disk to improve single disk fault repair efficiency and can recover three disk faults, but still needs to read all non-faulty disks to recover double disk faults. Therefore, LRRDP does not improve the repair efficiency compared with RDP in double disk fault. DRDP double disk fault, first recover the global horizontal check set, and then repair the double disk fault through the mixed repair of local horizontal check set and diagonal check set, which greatly reduces the double disk fault read overhead. As shown in Figure 11 , the average double disk fault read overhead of IRDP of the application is reduced by 1.63%~46.98% compared with RDP, LRRDP and DRDP. When the parameter p is larger, the overlap of left and right local check sets and diagonal check sets in IRDP double disk repair is higher, and the double disk repair overhead of IRDP is smaller.
[0049] (2) The application adopts an enhanced redundancy encoding scheme, so that even in the case of three disk faults, the system can still handle 75% of the three disk faults. Ensure the integrity and availability of data. Specifically: Three columns of the corresponding matrix of triple disk failure are lost. When three columns of data are lost, as long as one column is restored preferentially, the triple disk failure problem can be reduced to a two-disk failure problem. When the triple disk failure occurs in the same side of the local parity set, any column cannot be restored by the diagonal parity set or the local parity set. When two disks of the triple disk failure occur in the same side and the other disk is in the diagonal parity disk, because the diagonal parity disk cannot be used to restore the two disks, the triple disk failure problem cannot be converted to a two-disk failure problem. When the triple disk failure occurs in the non-same side, one failed disk can be restored by the local parity, and the triple disk failure problem can be converted to a two-disk failure problem.
[0050] Let the lost disk number be wherein When or or or or , the triple disk failure cannot be restored, and the probability is , and the repair probability is .
[0051] Obviously, the above embodiments are merely examples for clear illustration, and are not intended to limit the embodiments. For those skilled in the art, other different forms of changes or variations can be made on the basis of the above description. All the embodiments do not need to be exhausted, and the obvious changes or variations derived therefrom are still within the protection scope of the present application.
Claims
1. An improved data storage method for multi-disk repair using SLR-DP encoding, characterized in that: Includes the following steps: S1: Based on the original data size and disk size, determine the number of disks p+1 used for storage, where p is a prime number greater than or equal to 5; each disk is divided into several rows; S2: Set p-1 disks as a local redundant disk group and the other 2 disks as a global redundant disk group; further divide the local redundant disk group into a left local redundant disk group and a right local redundant disk group, set one local redundant disk in the left local redundant disk group and the right local redundant disk group respectively, and set the remaining disks as ordinary redundant disks. S3: Divide the original data into several sequentially arranged data blocks according to the specified size; S4: Perform the following sub-steps on the partially redundant disk group: S41: Place the first (p-1) / 2 data blocks sequentially in row 0 of the left-hand local redundant disk group; S42: Perform an XOR operation on the data in row 0 of the left local redundant disk group, and store the result in row 0 of the local redundant disk in the right local redundant disk group. S43: Repeatedly execute the following redundant XOR operation until all data blocks are placed in the local redundant disk group, with n initially set to 0: Place the subsequent (p-1) / 2-1 data blocks sequentially into the nth row of the ordinary redundant disk in the right local redundant disk group; perform an XOR operation on the data in the nth row of the right local redundant disk group, and store the result in the (n+1)th row of the local redundant disk in the left local redundant disk group; place the subsequent (p-1) / 2-1 data blocks sequentially into the (n+1)th row of the ordinary redundant disk in the left local redundant disk group; perform an XOR operation on the data in the (n+1)th row of the left local redundant disk group, and store the result in the (n+1)th row of the local redundant disk in the right local redundant disk group; S5: Perform the following sub-steps on the globally redundant disk group: The encoded data in the locally redundant disk group is used as the original data block for SLR-DP encoding. The horizontal redundant block and the diagonal redundant block are encoded according to the SLR-DP encoding method and placed on two disks in the globally redundant disk group respectively.
2. The improved SLR-DP encoded multi-disk repair data storage method according to claim 1, characterized in that: In step S2, the local redundant disk group consists of the first p-1 disks, and the global redundant disk group consists of the last 2 disks. The locally redundant disk in the left-side locally redundant disk group is the disk in the left-side locally redundant disk group that is closest to the right-side locally redundant disk group in sequence, and the locally redundant disk in the right-side locally redundant disk group is the disk in the right-side locally redundant disk group that is closest to the left-side locally redundant disk group in sequence.
3. The improved SLR-DP encoded multi-disk repair data storage method according to claim 1, characterized in that: In step S3, the size is specified as 64MB or 128MB.
