Data processing method and device, computer equipment and readable storage medium

CN119292518APending Publication Date: 2025-01-10DAWNING INFORMATION IND (BEIJING) CO LTD +2
0 Cites 0 Cited by

Patent Information

Application Number
CN202411273045.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-11
Publication Date
2025-01-10

AI Technical Summary

Technical Problem

The existing data processing method writes memory data to a small-ratio stripe through pass-through/pass-through when the controller fails to power down, resulting in a reduction in the available disk capacity.

Method used

In the target storage system, determine whether the number of existing stripes exceeds the threshold. If it does, migrate the data to the second type of stripe with a larger number of data columns. Write the data to the first and second type of stripes respectively through pass-through/pass-through methods. After the number of first type stripes used exceeds the threshold, migrate the data to the second type of stripe.

Benefits of technology

While ensuring flexibility in data writing, it expands the available capacity of the target storage system and improves the reliability and efficiency of data migration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119292518A_ABST
    Figure CN119292518A_ABST
Patent Text Reader

Abstract

The invention relates to a data processing method and device, computer equipment and a readable storage medium. The method comprises the steps that after data is written into a target storage system, whether the number of existing stripes of at least two to-be-processed stripes in the target storage system is larger than a number threshold value or not is judged, each to-be-processed stripe is a first-class stripe where the data is written in the target storage system, and if yes, the to-be-processed stripe is written into the target storage system according to data writing information of each to-be-processed stripe; migrating the write-in data corresponding to each to-be-processed strip to a second type of strip in the target storage system; wherein the number of data columns of the first type of stripes is smaller than the number of data columns of the second type of stripes. By adopting the method, the available capacity of the storage system can be expanded.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a data processing method, apparatus, computer device and readable storage medium. Background Art

[0002] In business data-related scenarios, the controller will pre-store some data in the memory and then write it from the memory to the disk. Therefore, in the event of an abnormal power failure of the controller, in order to ensure the security of data transmission in the above process, the existing data processing method is to use a write-through / through write method to write the memory data to a pre-set small-ratio stripe on the disk to avoid memory data loss.

[0003] However, since the proportion of parity columns (which do not store write data) in small-ratio stripes is high, the existing data processing method will reduce the available capacity of the disk. Summary of the invention

[0004] Based on this, it is necessary to provide a data processing method, device, computer equipment and readable storage medium that can expand the available capacity of the storage system in response to the above technical problems.

[0005] In a first aspect, the present application provides a data processing method, comprising:

[0006] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0007] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0008] In an embodiment of the present application, data is written into the first type of stripes and the second type of stripes respectively by means of write-through / through writing, and after the number of used first type of stripes exceeds a preset number threshold, the data in the first type of stripes is migrated to the second type of stripes, thereby expanding the available capacity of the target storage system while ensuring the flexibility of data writing.

[0009] In one embodiment, according to the data writing information of each stripe to be processed, migrating the written data corresponding to each stripe to be processed to the second type of stripe in the target storage system includes:

[0010] According to the data writing information of each stripe to be processed, the number of new stripes of the second type of stripes required for data migration is determined; in the target storage system, the number of new stripes of the second type of stripes is created; and the write data corresponding to each stripe to be processed is migrated to the created second type of stripes.

[0011] In the embodiment of the present application, by creating a corresponding number of second-type stripes according to the data writing information of each stripe to be processed, the write data of the stripe to be processed can be completely migrated to the second-type stripe, thereby improving the reliability of data migration.

[0012] In one embodiment, determining the number of newly added stripes of the second type of stripes required for data migration according to the data writing information of each stripe to be processed includes:

[0013] The number of data blocks to be migrated is determined based on the data writing information of each stripe to be processed; the number of newly added stripes of the second type of stripes required for data migration is determined based on the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

[0014] In an embodiment of the present application, by determining the number of new stripes of the second type of stripes required for data migration based on the number of data blocks of the stripes to be processed and the number of standard data columns of the second type of stripes, the accuracy of the number of new stripes can be ensured, thereby ensuring the reliability of data migration.

[0015] In one embodiment, migrating the write data corresponding to each to-be-processed stripe to the created second type of stripe includes:

[0016] According to the multiple relationship between the number of standard data columns of the second type of stripes and the number of standard data columns of the first type of stripes, determine the target number of stripes that each second type of stripe can fully accommodate the first type of stripes; according to the target number of stripes and the number of newly added stripes, divide each stripe to be processed into an inherited stripe and a copied stripe; migrate the write data of the inherited stripe and the write data of the copied stripe to the created second type of stripe respectively.

[0017] In an embodiment of the present application, by dividing each stripe to be processed into an inherited stripe and a copied stripe according to the number of target stripes and the number of newly added stripes, and then migrating the write data of the inherited stripe and the write data of the copied stripe respectively, the flexibility of data migration can be effectively improved.

[0018] In one embodiment, each stripe to be processed is divided into an inherited stripe and a copied stripe according to the number of target stripes and the number of newly added stripes, including:

[0019] The product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0020] In the embodiment of the present application, by directly taking the product of the target stripe number and the newly added stripe number as the inherited stripe number, the efficiency of determining the stripe number can be improved, thereby improving the efficiency of stripe division.

[0021] In one embodiment, respectively migrating the written data of the inherited stripe and the written data of the copied stripe to the created second type of stripe includes:

[0022] Assign a target stripe number of inheritance stripes to each created second-type stripe; modify the original data mapping address corresponding to each inheritance stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the write data of the inheritance stripe to the created second-type stripe; and split and migrate the data blocks in the copy stripe according to the number of data columns of free data columns in the created second-type stripe, so as to migrate the write data of the copy stripe to the created second-type stripe.

[0023] In the embodiment of the present application, by adopting different migration methods to migrate the inherited stripe and the copied stripe to the newly created second-type stripe, the efficiency and reliability of data migration can be guaranteed.

[0024] In one embodiment, writing data to a target storage system includes:

[0025] The data to be written is written into the first type stripe and / or the second type stripe according to the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe in the target storage system and the amount of data to be written.

[0026] In the embodiment of the present application, by dividing the data to be written based on the standard number of data columns of each type of stripe, and writing the divided data into the first type of stripe and the second type of stripe respectively, the rationality of data writing can be guaranteed.

[0027] In a second aspect, the present application further provides a data processing device, comprising:

[0028] A judgment module, used for judging whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold after writing data to the target storage system; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0029] The data migration module is used to migrate the write data corresponding to each stripe to be processed to the second type of stripe in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripe is less than the number of data columns of the second type of stripe.

[0030] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0031] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0032] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0033] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:

[0034] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0035] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0036] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:

[0037] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0038] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0039] The above-mentioned data processing method, device, computer equipment and readable storage medium, after writing data to the target storage system, determine whether the number of existing stripes of the first-class stripes in which data has been written in the target storage system is greater than the quantity threshold; if so, then, according to the data writing information of each first-class stripe, migrate the written data corresponding to each first-class stripe to the second-class stripe in the target storage system whose number of data columns is greater than the first-class stripe. Compared with the related art that only uses the first-class stripe to store data, the above-mentioned method writes data to the first-class stripe and the second-class stripe respectively by means of write-through / through writing, and actively migrates the data in the first-class stripe to the second-class stripe after the number of used first-class stripes is greater than the preset quantity threshold, which can expand the available capacity of the target storage system on the basis of ensuring the flexibility of data writing. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0041] Figure 1 is a flow chart of a data processing method in one embodiment;

[0042] Figure 2 is a schematic diagram of a data migration process in one embodiment;

[0043] Figure 3 A schematic diagram of a data migration process in one embodiment;

[0044] Figure 4A is a flowchart of data migration in another embodiment;

[0045] Figure 4B is a schematic diagram of a data migration process in another embodiment;

[0046] Figure 5 is a flow chart of a data processing method in another embodiment;

[0047] Figure 6 is a structural block diagram of a data processing device in one embodiment;

[0048] Figure 7 Another is a structural block diagram of a data processing device in an embodiment;

[0049] Figure 8 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0050] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0051] In business data-related scenarios, the controller will pre-store some data in the memory and then write it from the memory to the disk. Therefore, in the event of an abnormal power failure of the controller, in order to ensure the security of data transmission in the above process, the existing data processing method is to use the write-through mode / through write method to write the memory data to a small-ratio stripe pre-set in the disk to avoid memory data loss.

[0052] However, since the proportion of parity columns (which do not store write data) in small-ratio stripes is high, the existing data processing method will reduce the available capacity of the disk.

[0053] Based on this, in this embodiment, based on the RAID (Redundant Array of Independent Disk) 2.0 technology of the solid state disk (SSD), the physical space of each hard disk can be cut into data blocks of a fixed size, and stripes of different sizes can be formed in units of logical blocks, so that multiple hard disks in the storage system can participate in the reading and writing of data at the same time, and the written data can be evenly distributed on each hard disk.

[0054] Furthermore, in an exemplary embodiment, a data processing method is provided, and the method is applied to a data processing device as an example for explanation. Figure 1 As shown, the specific steps include:

[0055] S101, after writing data to a target storage system, determining whether the number of existing stripes of at least two to-be-processed stripes in the target storage system is greater than a quantity threshold.

[0056] Among them, the target storage system refers to the storage system with data writing requirements; the number of existing stripes refers to the number of stripes to be processed at the current moment; the number threshold refers to the value used to determine whether the number of stripes to be processed is too large, for example, the number threshold can be set to 500.

[0057] Each stripe to be processed is a first-class stripe to which data has been written in the target storage system. Furthermore, the first-class stripe is used to characterize a small-ratio stripe, that is, a logical stripe in which the proportion of the check column to the stripe capacity is relatively large. For example, the first-class stripe can be a logical stripe with 4 data columns and 2 check columns.

[0058] It is understandable that when storing write data, since one stripe can only store one write data, in order to avoid the problem of too many idle data columns caused by too long data columns in the second-type stripe, the second-type stripe and the first-type stripe can be used to store the write data at the same time. However, since the proportion of check columns in small-ratio stripes is relatively large, when there are more first-type stripes in the target storage system, the utilization rate of disk space will also be reduced.

[0059] Based on this, after detecting a data write request for the target storage system, data storage balance can be taken as the goal, and data can be written to the first and second types of stripes in the target storage system at the same time according to the amount of data to be written; then, after writing the data using the write-through / through-write method, in order to avoid the usage limit of the first type of stripes (the preset number threshold) being reached, the existing number of stripes of the stripes to be processed at the current moment can be directly obtained.

[0060] Further, determine whether the number of existing stripes is greater than the quantity threshold. If so, it proves that the use of the first type of stripes in the target storage system has reached the preset quantity limit. At this time, the stripes to be processed can be expanded and balanced by executing the following step S102; if not, it proves that the first type of stripes used in the target storage system has not reached the preset quantity limit. At this time, the stripes to be processed in the target storage system may not be processed.

[0061] S102: If yes, then according to the data writing information of each stripe to be processed, migrate the written data corresponding to each stripe to be processed to the second type of stripe in the target storage system.

[0062] The data writing information refers to the information related to data writing corresponding to the stripe to be processed, such as the data volume and the data writing time, etc. The number of data columns of the first type of stripe is less than the number of data columns of the second type of stripe. Furthermore, the first type of stripe is used to characterize a large ratio stripe, that is, a logical stripe in which the proportion of the check column to the stripe capacity is small. For example, the first type of stripe can be a logical stripe with 22 data columns and 2 check columns.

[0063] Optionally, when the number of small-ratio stripes used in the target storage system reaches a threshold, multiple second-type stripes can be applied for in real time in the target storage system, based on the premise that the hard disk capacity of each hard disk in the target storage system is balanced, to facilitate data migration for each stripe to be processed and the subsequent writing of data.

[0064] Subsequently, the written data corresponding to each stripe to be processed may be migrated from the first type of stripe to the second type of stripe according to the data writing information of each stripe to be processed. Exemplarily, the data writing time of each stripe to be processed may be determined based on the data writing information of each stripe to be processed; subsequently, according to the data writing time of each stripe to be processed, a target stripe whose writing time exceeds a time threshold is selected from each stripe to be processed, and according to the data writing information of the target stripe, the written data corresponding to each target stripe is migrated from the first type of stripe to the second type of stripe.

[0065] In the above data processing method, after writing data to the target storage system, it is determined whether the number of existing first-class stripes in the target storage system where data has been written is greater than a quantity threshold; if so, the written data corresponding to each first-class stripe is migrated to a second-class stripe in the target storage system where the number of data columns is greater than that of the first-class stripe according to the data writing information of each first-class stripe. Compared with the related art in which only the first-class stripe is used to store data, the above method writes data to the first-class stripe and the second-class stripe respectively by a write-through / through-write method, and after the number of used first-class stripes is greater than a preset quantity threshold, the data in the first-class stripe is migrated to the second-class stripe, which can expand the available capacity of the target storage system on the basis of ensuring the flexibility of data writing.

[0066] In order to migrate the written data corresponding to the stripe to be processed to the second type of stripe, it is necessary to create a second type of stripe with no written data in the target storage system. Furthermore, to avoid applying for too many second type of stripes, based on the above embodiment, in this embodiment, an optional method of data migration is provided, which specifically includes the following content.

[0067] According to the data writing information of each stripe to be processed, the number of new stripes of the second type of stripes required for data migration is determined; in the target storage system, the number of new stripes of the second type of stripes is created; and the write data corresponding to each stripe to be processed is migrated to the created second type of stripes.

[0068] The number of newly added stripes refers to the number of second-type stripes required for data migration.

[0069] Optionally, for each stripe to be processed, the amount of data written in the stripe to be processed can be determined based on the data writing information of the stripe to be processed; then, based on the amount of data written in each stripe to be processed, the number of new stripes of the second type of stripes required for the data migration process can be determined.

[0070] Furthermore, based on the capacity usage of each hard disk in the target storage system (for example, the remaining space on the hard disk) and on the premise of balanced memory usage, a second-type stripe with an additional number of stripes can be constructed based on each hard disk in the target storage system, and the write data corresponding to each stripe to be processed can be migrated to the created second-type stripe in sequence.

[0071] For each second-type stripe of migrated data, the verification data corresponding to the second-type stripe can be determined based on the written data based on a preset verification method, and the verification data is stored in the verification column of the second-type stripe. At this time, the data migration process is completed.

[0072] It is understandable that in order to improve the space and capacity utilization rate of the target storage system, after completing the data migration, the first type of stripes after the data migration process needs to be released to expand the memory space of the target storage system.

[0073] For example, refer to Figure 2 Before data migration, there are first-type stripes with 4 data columns and 2 check columns, and second-type stripes with 10 data columns and 2 check columns in the target storage system A. After the first-type stripes in the target storage system A are migrated, more additional space will be released, thereby increasing the available capacity in the target storage system A.

[0074] In the embodiment of the present application, by creating a corresponding number of second-type stripes according to the data writing information of each stripe to be processed, the write data of the stripe to be processed can be completely migrated to the second-type stripe, thereby improving the reliability of data migration.

[0075] In order to further ensure the accuracy of the number of newly added stripes, based on the above embodiment, in this embodiment, an optional method for determining the number of newly added stripes is provided, specifically, determining the number of data blocks to be migrated according to the data write information of each stripe to be processed; determining the number of new stripes of the second type of stripes required for data migration according to the number of data blocks and the number of standard data columns of the second type of stripes.

[0076] The number of standard data columns refers to the number of data columns contained in a stripe, which is generally determined by the number of hard disks in the storage system. For example, when there are 12 hard disks in the storage system, the sum of the number of standard data columns and the number of check columns in the second type of stripe in the storage system is less than or equal to 12, that is, the number of standard data columns must be less than 12; one data column can accommodate one data block.

[0077] Optionally, the number of data blocks in each stripe to be processed can be determined based on the data write information of each stripe to be processed, and then the number of data blocks to be migrated can be obtained by statistics; then, since one data column can accommodate one data block, the number of new stripes of the second type of stripes required for data migration can be determined based on the multiple relationship between the number of data blocks and the number of standard data columns of the second type of stripes.

[0078] It can be understood that when the value corresponding to the multiple relationship between the number of data blocks and the number of standard data columns of the second type of stripes is an integer, the value corresponding to the multiple relationship can be directly used as the number of new stripes; when the value corresponding to the multiple relationship is not an integer, the number of new stripes can be determined based on the size of the decimal places in the value.

[0079] For example, when the size of the decimal place in the value corresponding to the multiple relationship is greater than a preset threshold, 1 can be added to the integer in the value as the number of new stripes; when the size of the decimal place in the value is less than the preset threshold, the value corresponding to the multiple relationship can be directly used as the number of new stripes.

[0080] For example, when the number of data blocks is 32 and the number of standard data columns of the second type of stripes is 10, the value corresponding to the multiple relationship is 3.2. At this time, it can be determined that the number of new stripes is 3, that is, 30 data blocks in the stripe to be processed are migrated first, and 2 data blocks in one stripe to be processed are retained for processing during the next data migration.

[0081] In an embodiment of the present application, by determining the number of new stripes of the second type of stripes required for data migration based on the number of data blocks of the stripes to be processed and the number of standard data columns of the second type of stripes, the accuracy of the number of new stripes can be ensured, thereby ensuring the reliability of data migration.

[0082] In order to improve the efficiency and flexibility of data migration, based on the above embodiment, another optional method of data migration is provided in this embodiment, such as Figure 3 As shown, the specific steps include:

[0083] S301 , determining a target number of stripes that each second-type stripe can completely accommodate first-type stripes according to a multiple relationship between the number of standard data columns of the second-type stripe and the number of standard data columns of the first-type stripe.

[0084] The target stripe number is used to represent the number of stripes of the first type that can be completely accommodated by each second type stripe. For example, when the first type stripe includes 4 data columns and the second type stripe includes 10 data columns, the target stripe number is 2.

[0085] Optionally, in order to migrate as little data as possible in the processing stripes during data migration, the target number of stripes that each second-class stripe can fully accommodate for the first-class stripes can be determined based on the multiple relationship between the number of standard data columns of the second-class stripes and the number of standard data columns of the first-class stripes.

[0086] S302: Divide each stripe to be processed into inherited stripes and copied stripes according to the number of target stripes and the number of newly added stripes.

[0087] Among them, the inherited stripe refers to the stripe to be processed that does not need to be split during the data migration process; the copied stripe refers to the stripe to be processed that needs to be split during the data migration process.

[0088] Optionally, after determining the target number of stripes, the number of inherited stripes may be determined based on the target number of stripes and the number of newly added stripes, and then each stripe to be processed may be divided into inherited stripes and copied stripes based on the number of inherited stripes.

[0089] Exemplarily, the target number of stripes and the number of newly added stripes can be input into a trained number determination model, which outputs the number of inherited stripes based on the target number of stripes, the number of newly added stripes and the model parameters; then, based on the number of inherited stripes and the data write address of each stripe to be processed, each stripe to be processed is divided into inherited stripes and copied stripes.

[0090] Alternatively, the product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number of to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0091] Specifically, in order to improve the efficiency of determining the number, the product of the target stripe number and the newly added stripe number can be directly used as the inherited stripe number; then, in order to improve the stripe division efficiency, the stripes to be processed in which data columns are written can be pre-selected as candidate stripes, and the inherited stripe number candidate stripes can be randomly selected as inherited stripes. At the same time, the remaining stripes to be processed can be used as copy stripes.

[0092] It can be understood that when the number of inherited stripes is equal to the number of stripes of the stripes to be processed, it means that the written data in all the stripes to be processed can be migrated as a whole. At this time, there is no copy stripe.

[0093] S303: Migrate the written data of the inherited stripe and the written data of the copied stripe to the created second type stripe respectively.

[0094] Optionally, after dividing the inheritance stripes and the copy stripes, the write data of the inheritance stripes can be migrated to the created second-type stripes in sequence; then, based on the number of remaining data columns that can be accommodated in each second-type stripe, the write data of the copy stripe can be migrated to the created second-type stripe.

[0095] In an embodiment of the present application, by dividing each stripe to be processed into an inherited stripe and a copied stripe according to the number of target stripes and the number of newly added stripes, and then migrating the write data of the inherited stripe and the write data of the copied stripe respectively, the flexibility of data migration can be effectively improved.

[0096] In order to ensure the reliability of data migration of the written data of the inherited stripe and the written data of the copied stripe, based on the above embodiment, another optional method of data migration is provided in this embodiment, such as Figure 4A As shown, the specific steps include:

[0097] S401 : Allocate inheritance stripes equal to the number of target stripes to each created second-type stripe.

[0098] Optionally, the target number of inherited stripes may be allocated to each created second-type stripe according to the data write information of each inherited stripe. Exemplarily, the target number of inherited stripes may be allocated to each created second-type stripe according to the correlation between the written data in each inherited stripe and / or the correlation between the data write addresses.

[0099] S402, modifying the original data mapping address corresponding to each inherited stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the written data of the inherited stripe to the created second-type stripe.

[0100] The original data mapping address refers to the data storage address corresponding to the inherited stripe; the target data mapping address refers to the data storage address corresponding to the second type of stripe.

[0101] Optionally, since the written data in the inherited stripe does not need to be split, the data migration can be completed by directly modifying the mapping address of the inherited stripe as a whole. Therefore, for each inherited stripe, the original data mapping address corresponding to the inherited stripe can be modified to the target data mapping address of the corresponding second-type stripe according to the allocation result in step S401 to complete the migration of the written data in the inherited stripe.

[0102] S403 , splitting and migrating the data blocks in the copy stripe according to the number of free data columns in the created second type stripe, so as to migrate the written data of the copy stripe to the created second type stripe.

[0103] Optionally, after migrating the write data of the inherited stripe into the corresponding second-type stripe, for each second-type stripe, a corresponding number of data blocks can be migrated out in sequence from any copy stripe according to the number of data columns in the free data columns in the second-type stripe, and the migrated data blocks can be migrated into the free data columns in the second-type stripe. At this time, the data migration for the second-type stripe is completed.

[0104] Furthermore, in order to ensure the consistency of data migration, it is necessary to select data blocks to be migrated to the next second-type stripe from the copy stripes involved in the previous migration process, and migrate the selected data blocks to the next second-type stripe until all written data in all copy stripes are migrated to the created second-type stripe.

[0105] For example, refer to Figure 4B Since the number of standard data columns of the second type of stripes is 6, the number of data columns of the stripes to be processed is 4, and the number of target stripes is 1 (that is, a second type of stripe can only completely accommodate one stripe to be processed), stripes 1 and 2 can be used as inherited stripes, and stripe 3 can be used as a copy stripe.

[0106] When migrating the inherited stripe, the original data mapping address corresponding to stripe 1 can be directly modified to the target data mapping address corresponding to stripe 4, and the original data mapping address corresponding to stripe 2 can be modified to the target data mapping address corresponding to stripe 5. At this time, there are two data columns left in stripes 1 and 2; then, the data blocks in the copied stripe can be split into two groups of data blocks (d9 and d10 as a group, and d11 and d12 as a group) based on two data columns, and the two groups of data blocks can be migrated to stripes 4 and 5 respectively.

[0107] In the embodiment of the present application, by adopting different migration methods to migrate the inherited stripe and the copied stripe to the newly created second-type stripe, the efficiency and reliability of data migration can be guaranteed.

[0108] In order to ensure the rationality of data writing, based on the above embodiments, in this embodiment, an optional method of data writing is provided, specifically, according to the standard number of data columns of the second type of stripes and the standard number of data columns of the first type of stripes in the target storage system, and the amount of data to be written, the data to be written is written into the first type of stripes and / or the second type of stripes.

[0109] The data to be written refers to the data that needs to be written into the target storage system.

[0110] Optionally, in response to a data write request to the target storage system, after obtaining the data to be written, the data to be written can be split based on the standard number of data columns of the second type of stripes and the standard number of data columns of the first type of stripes in the target storage system to obtain first data written to the first type of stripes and / or second data written to the second type of stripes.

[0111] Exemplarily, a data segmentation model can be trained based on the number of standard data columns of the second type of stripes and the number of standard data columns of the first type of stripes, and then the data to be written can be directly input into the data segmentation model, and the data segmentation model splits the data to be written according to the data volume and model parameters to obtain the first data written to the first type of stripes and the second data written to the second type of stripes. For example, when the first type of stripes contains 4 data columns and the second type of stripes contains 22 data columns, a 1M request can be split into 144KB of first data and 880KB of second data.

[0112] Furthermore, the first data can be written into the data column of the first type of stripe, and the check column data of the first type of stripe can be determined based on the first data; correspondingly, the second data can be written into the data column of the second type of stripe, and the check column data of the second type of stripe can be determined based on the second data.

[0113] In the embodiment of the present application, by dividing the data to be written based on the standard number of data columns of each type of stripe, and writing the divided data into the first type of stripe and the second type of stripe respectively, the rationality of data writing can be guaranteed.

[0114] Figure 5 FIG. 1 is a flow chart of a data processing method in another embodiment. Based on the above embodiment, this embodiment provides an optional example of a data processing method. Figure 5 The specific implementation process is as follows:

[0115] S501, writing the data to be written into the first type stripe and / or the second type stripe according to the standard data column quantity of the second type stripe and the standard data column quantity of the first type stripe in the target storage system and the data amount of the data to be written.

[0116] S502: Use the first type of stripes in the target storage system to which data has been written as stripes to be processed.

[0117] S503, determining whether the number of existing stripes of the stripes to be processed in the target storage system is greater than a quantity threshold, if so, executing S504; if not, executing S513.

[0118] Each of the stripes to be processed is a first-type stripe to which data has been written in the target storage system.

[0119] S504: Determine the number of data blocks to be migrated according to the data writing information of each stripe to be processed.

[0120] S505 : Determine the number of newly added stripes of the second type of stripes required for data migration according to the number of data blocks and the number of standard data columns of the second type of stripes.

[0121] One data column can contain one data block. The number of data columns in the first type of stripe is less than the number of data columns in the second type of stripe.

[0122] S506: Create the second type of stripes equal to the number of newly added stripes in the target storage system.

[0123] S507 , determining a target number of stripes that each second-type stripe can completely accommodate the first-type stripe according to a multiple relationship between the number of standard data rows of the second-type stripe and the number of standard data rows of the first-type stripe.

[0124] S508: The product of the target stripe quantity and the newly added stripe quantity is used as the inherited stripe quantity.

[0125] S509 , selecting the number of to-be-processed stripes equal to the number of inherited stripes from each to-be-processed stripe as inherited stripes, and using the remaining to-be-processed stripes as copy stripes.

[0126] S510: Allocate inheritance stripes equal to the number of target stripes to each created second-type stripe.

[0127] S511, modifying the original data mapping address corresponding to each inherited stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the written data of the inherited stripe to the created second-type stripe.

[0128] S512: split and migrate the data blocks in the copy stripe according to the number of free data columns in the created second type stripe, so as to migrate the written data of the copy stripe to the created second type stripe.

[0129] S513: Keep the data writing status of the stripe to be processed.

[0130] The specific process of S501-S513 can refer to the description of the above method embodiment, and its implementation principle and technical effect are similar, which will not be repeated here.

[0131] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0132] Based on the same inventive concept, the embodiment of the present application also provides a data processing device for implementing the data processing method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in the one or more data processing device embodiments provided below can refer to the limitations on the data processing method above, and will not be repeated here.

[0133] In an exemplary embodiment, Figure 6 As shown, a data processing device 1 is provided, comprising: a judgment module 10 and a data migration module 20, wherein:

[0134] The judgment module 10 is used to judge whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold after writing data to the target storage system; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0135] The data migration module 20 is used to migrate the write data corresponding to each stripe to be processed to the second type of stripe in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripe is less than the number of data columns of the second type of stripe.

[0136] In an exemplary embodiment, Figure 7 As shown, the data migration module 20 includes:

[0137] A quantity determination unit 21, configured to determine the number of newly added stripes of the second type of stripes required for data migration according to data writing information of each stripe to be processed;

[0138] A stripe creation unit 22, configured to create a number of newly added stripes of the second type of stripes in the target storage system;

[0139] The data migration unit 23 is used to migrate the write data corresponding to each stripe to be processed to the created second type of stripe.

[0140] In an exemplary embodiment, the quantity determination unit 21 is specifically configured to:

[0141] The number of data blocks to be migrated is determined based on the data writing information of each stripe to be processed; the number of newly added stripes of the second type of stripes required for data migration is determined based on the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

[0142] In an exemplary embodiment, the data migration unit 23 includes:

[0143] A first subunit is used to determine the target number of stripes of the first type that can be completely accommodated by each second type stripe according to the multiple relationship between the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe;

[0144] The second subunit is used to divide each stripe to be processed into an inherited stripe and a copied stripe according to the number of target stripes and the number of newly added stripes;

[0145] The third subunit is used to migrate the written data of the inherited stripe and the written data of the copied stripe to the created second type stripe respectively.

[0146] In an exemplary embodiment, the second subunit is specifically configured to:

[0147] The product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0148] In an exemplary embodiment, the third subunit is specifically configured to:

[0149] Assign a target stripe number of inheritance stripes to each created second-type stripe; modify the original data mapping address corresponding to each inheritance stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the write data of the inheritance stripe to the created second-type stripe; and split and migrate the data blocks in the copy stripe according to the number of data columns of free data columns in the created second-type stripe, so as to migrate the write data of the copy stripe to the created second-type stripe.

[0150] In an exemplary embodiment, the data processing device further includes a data writing module, wherein the data writing module is specifically the same as:

[0151] The data to be written is written into the first type stripe and / or the second type stripe according to the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe in the target storage system and the amount of data to be written.

[0152] Each module in the above data processing device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.

[0153] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 8 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store written data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a data processing method is implemented.

[0154] Those skilled in the art will understand that Figure 8 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0155] In an exemplary embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:

[0156] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0157] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0158] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0159] According to the data writing information of each stripe to be processed, the number of new stripes of the second type of stripes required for data migration is determined; in the target storage system, the number of new stripes of the second type of stripes is created; and the write data corresponding to each stripe to be processed is migrated to the created second type of stripes.

[0160] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0161] The number of data blocks to be migrated is determined based on the data writing information of each stripe to be processed; the number of newly added stripes of the second type of stripes required for data migration is determined based on the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

[0162] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0163] According to the multiple relationship between the number of standard data columns of the second type of stripes and the number of standard data columns of the first type of stripes, determine the target number of stripes that each second type of stripe can fully accommodate the first type of stripes; according to the target number of stripes and the number of newly added stripes, divide each stripe to be processed into an inherited stripe and a copied stripe; migrate the write data of the inherited stripe and the write data of the copied stripe to the created second type of stripe respectively.

[0164] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0165] The product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0166] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0167] Assign a target stripe number of inheritance stripes to each created second-type stripe; modify the original data mapping address corresponding to each inheritance stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the write data of the inheritance stripe to the created second-type stripe; and split and migrate the data blocks in the copy stripe according to the number of data columns of free data columns in the created second-type stripe, so as to migrate the write data of the copy stripe to the created second-type stripe.

[0168] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0169] The data to be written is written into the first type stripe and / or the second type stripe according to the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe in the target storage system and the amount of data to be written.

[0170] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0171] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0172] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0173] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0174] According to the data writing information of each stripe to be processed, the number of new stripes of the second type of stripes required for data migration is determined; in the target storage system, the number of new stripes of the second type of stripes is created; and the write data corresponding to each stripe to be processed is migrated to the created second type of stripes.

[0175] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0176] The number of data blocks to be migrated is determined based on the data writing information of each stripe to be processed; the number of newly added stripes of the second type of stripes required for data migration is determined based on the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

[0177] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0178] According to the multiple relationship between the number of standard data columns of the second type of stripes and the number of standard data columns of the first type of stripes, determine the target number of stripes that each second type of stripe can fully accommodate the first type of stripes; according to the target number of stripes and the number of newly added stripes, divide each stripe to be processed into an inherited stripe and a copied stripe; migrate the write data of the inherited stripe and the write data of the copied stripe to the created second type of stripe respectively.

[0179] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0180] The product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0181] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0182] Assign a target stripe number of inheritance stripes to each created second-type stripe; modify the original data mapping address corresponding to each inheritance stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the write data of the inheritance stripe to the created second-type stripe; and split and migrate the data blocks in the copy stripe according to the number of data columns of free data columns in the created second-type stripe, so as to migrate the write data of the copy stripe to the created second-type stripe.

[0183] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0184] The data to be written is written into the first type stripe and / or the second type stripe according to the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe in the target storage system and the amount of data to be written.

[0185] In one embodiment, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the following steps:

[0186] After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-class stripe in the target storage system to which data has been written;

[0187] If so, the write data corresponding to each stripe to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each stripe to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

[0188] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0189] According to the data writing information of each stripe to be processed, the number of new stripes of the second type of stripes required for data migration is determined; in the target storage system, the number of new stripes of the second type of stripes is created; and the write data corresponding to each stripe to be processed is migrated to the created second type of stripes.

[0190] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0191] The number of data blocks to be migrated is determined based on the data writing information of each stripe to be processed; the number of newly added stripes of the second type of stripes required for data migration is determined based on the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

[0192] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0193] According to the multiple relationship between the number of standard data columns of the second type of stripes and the number of standard data columns of the first type of stripes, determine the target number of stripes that each second type of stripe can fully accommodate the first type of stripes; according to the target number of stripes and the number of newly added stripes, divide each stripe to be processed into an inherited stripe and a copied stripe; migrate the write data of the inherited stripe and the write data of the copied stripe to the created second type of stripe respectively.

[0194] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0195] The product of the target stripe number and the newly added stripe number is used as the inherited stripe number; the inherited stripe number to-be-processed stripes are selected from each to-be-processed stripe as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

[0196] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0197] Assign a target stripe number of inheritance stripes to each created second-type stripe; modify the original data mapping address corresponding to each inheritance stripe to the target data mapping address of the corresponding second-type stripe, so as to migrate the write data of the inheritance stripe to the created second-type stripe; and split and migrate the data blocks in the copy stripe according to the number of data columns of free data columns in the created second-type stripe, so as to migrate the write data of the copy stripe to the created second-type stripe.

[0198] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0199] The data to be written is written into the first type stripe and / or the second type stripe according to the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe in the target storage system and the amount of data to be written.

[0200] It should be noted that the data involved in this application (including but not limited to user data to be written, etc.) are all data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.

[0201] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0202] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0203] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A data processing method, characterized in that: The method comprises: After writing data to the target storage system, determining whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold; wherein each stripe to be processed is a first-type stripe in the target storage system to which data has been written; If so, the write data corresponding to each of the stripes to be processed is migrated to the second type of stripes in the target storage system according to the data write information of each of the stripes to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

2. The method according to claim 1, characterized in that The step of migrating the written data corresponding to each of the stripes to be processed to the second type of stripes in the target storage system according to the data written information of each of the stripes to be processed includes: Determine the number of newly added stripes of the second type of stripes required for data migration according to the data writing information of each of the stripes to be processed; In the target storage system, create the second type of stripes by the number of newly added stripes; The written data corresponding to each of the to-be-processed stripes is migrated to the created second-type stripes.

3. The method according to claim 2, characterized in that The step of determining the number of newly added stripes of the second type of stripes required for data migration according to the data writing information of each of the stripes to be processed includes: Determining the number of data blocks to be migrated according to the data writing information of each of the stripes to be processed; The number of newly added stripes of the second type of stripes required for data migration is determined according to the number of data blocks and the number of standard data columns of the second type of stripes; wherein one data column can accommodate one data block.

4. The method according to claim 2, characterized in that: The step of migrating the written data corresponding to each of the to-be-processed stripes to the created second-type stripes includes: Determine the target number of stripes of the first type that can be completely accommodated by each second type stripe according to the multiple relationship between the number of standard data columns of the second type stripe and the number of standard data columns of the first type stripe; According to the number of target stripes and the number of newly added stripes, each of the stripes to be processed is divided into inherited stripes and copied stripes; The written data of the inherited stripe and the written data of the copied stripe are respectively migrated to the created second-type stripe.

5. The method according to claim 4, characterized in that The dividing each of the to-be-processed stripes into inherited stripes and copied stripes according to the number of target stripes and the number of newly added stripes includes: The product of the target stripe quantity and the newly added stripe quantity is used as the inherited stripe quantity; The number of to-be-processed stripes equal to the number of the inherited stripes is selected from each of the to-be-processed stripes as the inherited stripes, and the remaining to-be-processed stripes are used as copy stripes.

6. The method according to claim 4, characterized in that The step of respectively migrating the written data of the inherited stripe and the written data of the copied stripe to the created second type stripe comprises: Allocating the target stripe number and the number of inheritance stripes to each created second-type stripe; Modify the original data mapping address corresponding to each inherited stripe to the target data mapping address of the corresponding second-type stripe, so as to achieve migration of the written data of the inherited stripe to the created second-type stripe; According to the number of data columns of free data columns in the created second type stripe, split migration processing is performed on the data blocks in the copy stripe, so as to migrate the written data of the copy stripe to the created second type stripe.

7. The method according to claim 1, characterized in that Writing data to the target storage system includes: According to the number of standard data columns of the second type stripes and the number of standard data columns of the first type stripes in the target storage system and the amount of data to be written, the data to be written is written into the first type stripes and / or the second type stripes.

8. A data processing device, characterized in that: The device comprises: A judgment module, used for judging whether the number of existing stripes of at least two stripes to be processed in the target storage system is greater than a quantity threshold after writing data to the target storage system; wherein each stripe to be processed is a first type stripe in the target storage system to which data has been written; A data migration module is used to migrate the write data corresponding to each of the stripes to be processed to the second type of stripes in the target storage system according to the data write information of each of the stripes to be processed; wherein the number of data columns of the first type of stripes is less than the number of data columns of the second type of stripes.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.