A data processing method, apparatus and electronic device
By calculating and allocating input/output groups in the dual-live volume storage system, the problem of unbalanced storage volume allocation is solved, and automated balanced allocation is realized, ensuring the high availability of the dual-live volume storage system.
Patent Information
- Application Number
- CN202510376687.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-27
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2045-03-27
AI Technical Summary
When configuring a dual-live volume storage system, operation and maintenance personnel need to allocate storage volumes based on experience, resulting in unbalanced storage volume allocation.
By obtaining the benchmark parameters and input/output groups of the current device site, calculate the actual number of each volume type in each input/output group, and divide the input/output groups into a first volume group and a second volume group based on the actual number and volume identification code, so that they are double-living volumes on each other.
It realizes automation to divide the volumes under the device site into two balanced volume groups, avoiding the uneven problem of manual allocation and ensuring the allocation balance rate of storage volumes in the dual-live volume storage system.
Smart Images

Figure CN119902719B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of data processing, and particularly to a data processing method, apparatus, and electronic device. Background Art
[0002] A dual-active volume storage system is a highly available architecture that realizes real-time data synchronization between two data centers / storage nodes to achieve zero business interruption and zero data loss.
[0003] Currently, when an operation and maintenance personnel configures two data centers for a dual-active volume system, they need to allocate existing storage volumes based on their experience, resulting in uneven allocation of storage volumes.
[0004] Therefore, how to ensure the allocation balance rate of storage volumes in a dual-active volume storage system has become an urgent problem to be solved. Summary of the Invention
[0005] This application provides a data processing method, apparatus, and electronic device to at least solve the problem of how to ensure the allocation balance rate of storage volumes in a dual-active volume storage system in related technologies.
[0006] This application provides a data processing method, including: obtaining a reference parameter of a current device site and one or more input / output groups included in the current device site; where the reference parameter at least includes a write data resource allocation ratio; for each input / output group, determining an actual quantity of each volume type included in each input / output group based on a preset value, a disk array included in the input / output group, and configuration parameters and reference parameters of the disk array; for each input / output group, dividing the input / output group into a first volume group and a second volume group based on the actual quantity of the input / output group and an identification code of each volume; where volumes in the first volume group and volumes in the second volume group are dual-active volumes with each other.
[0007] This application further provides a data processing apparatus, including: an obtaining unit, configured to obtain a reference parameter of a current device site and one or more input / output groups included in the current device site; where the reference parameter at least includes a write data resource allocation ratio; a processing unit, configured to, for each input / output group, determine an actual quantity of each volume type included in each input / output group based on a preset value, a disk array included in the input / output group obtained by the obtaining unit, and configuration parameters and reference parameters of the disk array obtained by the obtaining unit; the processing unit is further configured to, for each input / output group, divide the input / output group into a first volume group and a second volume group based on the actual quantity of the input / output group and an identification code of each volume; where volumes in the first volume group and volumes in the second volume group are dual-active volumes with each other.
[0008] The present application also provides an electronic device, including: a memory for storing a computer program; a processor for implementing the steps of any of the above data processing methods when executing the computer program.
[0009] The present application also provides a computer-readable storage medium storing a computer program, wherein the computer program implements the steps of any of the above data processing methods when executed by a processor.
[0010] The present application also provides a computer program product including a computer program, and the computer program implements the steps of any of the above data processing methods when executed by a processor.
[0011] Through the present application, by obtaining the reference parameters of the current device site and one or more input / output groups included in the current device site; thus, it is possible to calculate each input / output group, and based on a preset value, the disk arrays included in the input / output group, and the configuration parameters and reference parameters of the disk arrays, determine the actual quantity of each volume type included in each input / output group; for each input / output group, divide the input / output group into a first volume group and a second volume group based on the sum of the actual quantities of the input / output group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need for manual allocation of the volumes under the current device site based on experience, solving the technical problem of how to ensure the allocation balance rate of the storage volumes in the active-active volume storage system, and achieving the technical effect of ensuring the allocation balance rate of each volume group. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] To more clearly illustrate the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and those of ordinary skill in the art can obtain other drawings based on these drawings without creative efforts.
[0013] Figure 1 It is one of the flow diagrams of a data processing method provided by an embodiment of the present application;
[0014] Figure 2 It is another flow diagram of a data processing method provided by an embodiment of the present application;
[0015] Figure 3 It is yet another flow diagram of a data processing method provided by an embodiment of the present application;
[0016] Figure 4 It is still another flow diagram of a data processing method provided by an embodiment of the present application;
[0017] Figure 5The fifth flowchart of a data processing method provided by an embodiment of the present application;
[0018] Figure 6 The sixth flowchart of a data processing method provided by an embodiment of the present application;
[0019] Figure 7 The seventh flowchart of a data processing method provided by an embodiment of the present application;
[0020] Figure 8 The eighth flowchart of a data processing method provided by an embodiment of the present application;
[0021] Figure 9 The ninth flowchart of a data processing method provided by an embodiment of the present application;
[0022] Figure 10 The tenth flowchart of a data processing method provided by an embodiment of the present application;
[0023] Figure 11 The eleventh flowchart of a data processing method provided by an embodiment of the present application;
[0024] Figure 12 The twelfth flowchart of a data processing method provided by an embodiment of the present application;
[0025] Figure 13 The thirteenth flowchart of a data processing method provided by an embodiment of the present application;
[0026] Figure 14 The fourteenth flowchart of a data processing method provided by an embodiment of the present application;
[0027] Figure 15 The structural schematic diagram of a data processing device provided by an embodiment of the present application. Detailed implementation manners
[0028] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than 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 efforts shall fall within the protection scope of the present application.
[0029] It should be noted that in the description of this application, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in this application are used to distinguish similar objects, rather than to describe a specific order or sequence.
[0030] In some examples, the dual-active volume in the embodiments of the present disclosure refers to a logical volume that provides read and write services simultaneously on two independent iogroups, ensuring seamless business switching in case of any node failure. (1) Cross-node concurrent access: It supports providing read and write services simultaneously on two physically isolated I / O groups, and each I / O group contains at least 2 controller nodes; (2) Data synchronization mechanism: It adopts asynchronous replication technology based on the RDMA network, and the data synchronization delay ≤ 5ms; (3) Fault recovery ability: When any I / O group fails, the system completes business switching within ≤ 10ms with zero data loss.
[0031] In some examples, the I / O group in the embodiments of the present disclosure refers to the smallest resource unit for allocating I / O load in a storage system. An I / O group contains at least 2 control nodes, and the performance is improved through a load balancing strategy. It is also a resource allocation unit: each I / O group contains an independent storage pool and adopts a RAID5 / RAID6 disk array configuration;
[0032] In some examples, the CCU upgrade in the embodiments of the present disclosure refers to the non-disruptive upgrade process of the cluster control unit (Communication Control Unit, CCU), ensuring zero business interruption during system version update. Online upgrade process: It realizes the non-disruptive upgrade of the control unit through hot patch technology; Version rollback mechanism: It rolls back to the stable version within 15 minutes after the upgrade fails.
[0033] To enable those skilled in the art of this technology to better understand the solution of this application, the following further elaborates on this application in conjunction with the accompanying drawings and specific implementation manners.
[0034] The embodiments of this application provide a data processing method, and the method is described in detail in combination with the execution process of the data processing method.
[0035] Embodiment 1
[0036] Figure 1 The flow diagram of the prompting method is exemplarily shown. The execution subject of this example can be an electronic device, such as a server, as Figure 1 shown, this method includes:
[0037] S1. Obtain the reference parameters of the current device site, as well as one or more input / output groups included in the current device site. Among them, the reference parameters at least include the write data resource allocation ratio.
[0038] In some examples, one or more input / output groups iogroup are included under the current device site. One iogroup contains one or more disk arrays. One disk array consists of one or more hard disks. One or more volumes can be partitioned under one disk array.
[0039] In some examples, by loading a multi-layer structure [{type:Workload, value:{Read:50%, write:50%}}, the read data resource allocation ratio and the write data resource allocation ratio are obtained. Among them, Read represents the read data resource allocation ratio, and write represents the write data resource allocation ratio.
[0040] S2. For each input / output group, based on the preset value, the disk arrays included in the input / output group, and the configuration parameters and reference parameters of the disk arrays, determine the actual quantity of each volume type included in each input / output group.
[0041] In some examples, the configuration parameters include: hard disk type dirves, total number of disks drivenum, theoretical ratio of active volumes active, minimum number of read and write operations per second for volumes in the disk array vdisk, coefficient wring corresponding to the connection method, and loss multiple P of write operations for the number of input / output operations per second (Input / Output Operations Per Second, IOPS).
[0042] In some examples, the coefficient wring corresponding to the connection method refers to the coefficient of the connection method between the input / output group iogroup and the current device site. For example, when the connection method is Internet Small Computer System Interface (iSCSI), wring is 1; or when the connection method is Fibre Channel (FC) protocol, wring is 2.
[0043] In some examples, the loss multiple P corresponding to different volume types is different. For example, the volume types include compressed volumes, thin volumes, and ordinary volumes. At this time, the loss multiple P corresponding to the ordinary volume type is 1, and the loss multiple P corresponding to both the compressed volume type and the thin volume type is 1.2.
[0044] In some examples, the hard disk read and write efficiency value can be obtained by loading a multi-layer structure {type: Drives, value: {{style: ssd, rtype: RAID, value: 140}}}; where style represents the type of hard disk. For example, classified by storage technology, it includes: Hard Disk Drive (HDD), Solid State Drive (SSD), Solid State Hybrid Drive (SSHD), or classified by interface type, it includes: SATA (Serial ATA), NVMe (Non-Volatile Memory Express), SAS (Serial Attached SCSI), PCIe (Peripheral Component Interconnect Express), etc. Here, the type of hard disk represented by style is SSD; rtype is the type of disk array, such as: Redundant Array of Independent Disks (RAID) type (RAID), or Dual Redundant Array of Independent Disks (DRAID). Here, the type of disk array represented by rtype is RAID; the read and write efficiency is different for different types of hard disks in different types of disk arrays. For example, when the type of hard disk is SSD and the type of disk array is RAID, the corresponding hard disk read and write efficiency value is 140.
[0045] In some examples, the preset numerical value corresponding to each input / output group, the disk array included in the input / output group, as well as the configuration parameters and benchmark parameters of the disk array can be input into a calculation model for calculation to obtain the actual quantity of each volume type included in each input / output group. Among them, the training process of the calculation model includes:
[0046] Obtain the first training sample data and the first labeled result of the first training sample data. Among them, the first training sample data includes the historical parameters of the historical input / output group, the first labeled result includes the actual quantity of each volume type included in the input / output group corresponding to the historical parameters, and the historical parameters include the preset numerical value, the disk array included in the input / output group, as well as the configuration parameters and benchmark parameters of the disk array.
[0047] Input the first training sample data into the first neural network model for learning to obtain the first prediction result of the first neural network model for the first training sample data.
[0048] Based on the first prediction result and the first marking result, adjust the network parameters of the first neural network model until the first neural network model converges to obtain a calculation model.
[0049] In some examples, when calculating the actual quantity, for each input / output group, based on the disk arrays included in the input / output group and the configuration parameters of the disk arrays, determine the total number of read / write operations per second of the input / output group. Based on the preset value, the total number, the configuration parameters, and the reference parameters, determine the actual quantity of each volume type included in each input / output group.
[0050] S3. For each input / output group, based on the actual quantity of the input / output group and the identification code of each volume, divide the input / output group into a first volume group and a second volume group; wherein, the volumes in the first volume group and the volumes in the second volume group are mutual active-active volumes.
[0051] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included under the current device site; thereby, it is possible to calculate each input / output group, and based on the preset value, the disk arrays included in the input / output group, and the configuration parameters and reference parameters of the disk arrays, determine the actual quantity of each volume type included in each input / output group; for each input / output group, based on the sum of the actual quantities of the input / output group, divide the input / output group into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume groups are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0052] In some implementable examples, in combination with Figure 1 , as Figure 2 shown, the above S2 can be specifically implemented by the following S20 and S21.
[0053] S20. For each input / output group, based on the disk arrays included in the input / output group and the configuration parameters of the disk arrays, determine the total number of read / write operations per second of the input / output group.
[0054] In some examples, the total number of read / write operations per second of the input / output group can also be referred to as Totaliops.
[0055] In some examples, for each input / output group, the disk arrays included in the input / output group and the configuration parameters of the disk arrays can be input into an operation model for calculation to obtain the total number of read / write operations per second. Among them, the training process of the operation model includes:
[0056] Obtain the second training sample data and the second labeling result of the second training sample data. Among them, the second training sample data includes at least one set of disk arrays included in the historical input / output groups, and the configuration parameters of the disk arrays, and the second labeling result includes the total number of read / write operations performed per second for each input / output group.
[0057] Input the second training sample data into the second neural network model for learning to obtain the second prediction result of the second neural network model for the second training sample data.
[0058] Based on the second prediction result and the second labeling result, adjust the network parameters of the second neural network model until the second neural network model converges to obtain an operation model.
[0059] Alternatively, for each input / output group, based on the array type of the disk array included in the input / output group, determine the average number of input / output operations per second avg_ios; based on the configuration parameters, determine the number of read / write operations that can be processed per second RD_iops; based on avg_ios, RD_iops, and the total number of hard disks drivenum included in the configuration parameters, determine the Totaliops of the input / output group.
[0060] S21. Based on the preset value, the total number, the configuration parameters, and the reference parameters, determine the actual quantity of each volume type included in each input / output group.
[0061] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included under the current device site; thus, it is possible to calculate each input / output group, and based on the disk array included in the input / output group and the configuration parameters of the disk array, determine the total number of read / write operations performed per second for the input / output group; based on the preset value, the total number, the configuration parameters, and the reference parameters, determine the actual quantity of each volume type included in each input / output group; for each input / output group, based on the sum of the actual quantities of the input / output groups, divide the input / output groups into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0062] In some implementable examples, in combination with Figure 2 , such as Figure 3 shown, the above S20 can be specifically implemented through the following S200 - S202.
[0063] S200. For each input / output group, determine the number of input / output operations per second based on the array type of the disk array included in the input / output group, the hard disk type included in the disk array, and the total number of hard disks.
[0064] In some examples, the array parameters of the disk array can be obtained by loading a multi-layer structure {type: Arrays, value: {{rtype: r0, R_Ios: 1, w_ios: 1, avg_ios: 1}}}.
[0065] Among them, rtype can be RAID N, such as N equals 5; R_Ios represents the total number of read I / O operations successfully completed within a specific time period, w_ios represents the total number of write I / O operations successfully completed by the storage device within a specific time period, and avg_ios represents the number of input / output operations per second.
[0066] In some examples, a first relationship table of the number of input / output operations per second corresponding to the array type of different disk arrays, different hard disk types, and different numbers of hard disks is pre-stored in the memory of the server.
[0067] Exemplarily, the first relationship table is shown in Table 1.
[0068] Table 1
[0069]
[0070] In this way, when it is necessary to calculate the number of average I / O operations, by querying Table 1 with the known array type of the disk array, the hard disk type included in the disk array, and the number of hard disks included in the disk array, the number of input / output operations per second can be obtained. For example, when the known array type of the disk array is RAID, the hard disk type included in the disk array is SSD, and the number of hard disks included in the disk array is 5, it can be known from querying Table 1 that the number of input / output operations per second is A.
[0071] S201. Determine the number of read / write operations that can be processed per second based on the configuration parameters.
[0072] In some examples, based on the configuration parameters, a pre-configured preset relationship table can be queried to obtain the number of read / write operations that can be processed per second.
[0073] In some examples, different hard disk types have different read and write efficiencies under different disk array types. Combining with the example given in S2 above, the configuration parameters include the array type and the hard disk type. If the hard disk type is SSD and the disk array type is RAID, at this time, by loading a multi-layer structure {type: Drives, value: {{style: ssd, rtype: RAID, value: 140}}}, the hard disk read and write efficiency value can be obtained, such as: 140.
[0074] S202. Determine the total number of read and write operations per second of the input / output group based on the number of input / output operations per second, the number of read and write operations, and the total number of hard disks included in the configuration parameters.
[0075] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included under the current device site; thus, each input / output group can be calculated. For each input / output group, based on the array type of the disk array included in the input / output group, the hard disk type included in the disk array, and the total number of hard disks, determine the number of input / output operations per second on average; based on the configuration parameters, determine the number of read and write operations that can be processed per second; based on the number of input / output operations per second on average, the number of read and write operations, and the total number of hard disks included in the configuration parameters, determine the total number of read and write operations per second of the input / output group; based on the preset value, the total number, the configuration parameters, and the reference parameters, determine the actual quantity of each volume type included in each input / output group; for each input / output group, based on the sum of the actual quantities of the input / output group, divide the input / output group into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0076] In some implementable examples, combining Figure 3 , such as Figure 4 shown, the above S201 can be specifically implemented by the following S2010.
[0077] S2010. Determine the number of read and write operations that can be processed per second based on the hard disk type and the array type in the configuration parameters.
[0078] As described above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thus, each input / output group can be calculated. For each input / output group, based on the array type of the disk array included in the input / output group, the hard disk type and the total number of hard disks included in the disk array, the number of input / output operations per second is determined; based on the hard disk type and the array type in the configuration parameters, the number of read / write operations that can be processed per second is determined; based on the number of input / output operations per second, the number of read / write operations, and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the preset value, the total number, the configuration parameters, and the reference parameters, the actual quantity of each volume type included in each input / output group is determined; for each input / output group, based on the sum of the actual quantities of the input / output group, the input / output group is divided into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0079] In some feasible examples, in combination with Figure 3 , such as Figure 5 shown, the above S202 can be specifically implemented by the following S2020 and S2021.
[0080] S2020. Determine a first value based on the number of read / write operations and the number of input / output operations per second.
[0081] In some examples, the first value is equal to the ratio of the number of read / write operations to the number of input / output operations per second.
[0082] S2021. Determine the total number of read / write operations per second of the input / output group based on the first value and the total number of hard disks included in the configuration parameters.
[0083] In some examples, the total number of read / write operations per second of the input / output group is equal to the product of the first value and the total number of hard disks included in the configuration parameters.
[0084] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, the average number of input / output operations per second can be calculated for each input / output group. For each input / output group, based on the array type of the disk array included in the input / output group, the hard disk type and the total number of hard disks included in the disk array, the average number of input / output operations per second is determined; based on the number of read / write operations and the average number of input / output operations per second, a first value is determined; based on the first value and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the average number of input / output operations per second, the number of read / write operations and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the preset value, the total number, the configuration parameters and the reference parameters, the actual quantity of each volume type included in each input / output group is determined; for each input / output group, based on the sum of the actual quantities of the input / output group, the input / output group is divided into a first volume group and a second volume group; thus, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0085] In some feasible examples, in combination with Figure 5 , such as Figure 6 shown, the above S2020 can be specifically implemented by the following S2020-1.
[0086] S2020-1. Determine a first value based on the ratio of the number of read / write operations to the average number of input / output operations per second.
[0087] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, it can calculate each input / output group. For each input / output group, based on the array type of the disk array included in the input / output group, the hard disk type and the total number of hard disks included in the disk array, the number of input / output operations per second is determined; based on the ratio of the number of read / write operations to the number of input / output operations per second, a first value is determined; based on the first value and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the number of input / output operations per second, the number of read / write operations, and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on a preset value, the total number, the configuration parameters, and the reference parameters, the actual quantity of each volume type included in each input / output group is determined; for each input / output group, based on the sum of the actual quantities of the input / output group, the input / output group is divided into a first volume group and a second volume group; thus, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0088] In some feasible examples, in combination with Figure 5 , such as Figure 7 shown, the above S2021 can be specifically implemented by the following S2021-1.
[0089] S2021-1. Determine the total number of read / write operations per second of the input / output group based on the product of the first value and the total number of hard disks included in the configuration parameters.
[0090] As described above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, each input / output group can be calculated. For each input / output group, based on the array type of the disk array included in the input / output group, the hard disk type and the total number of hard disks included in the disk array, the number of input / output operations per second is determined; based on the number of read / write operations and the number of input / output operations per second, a first value is determined; based on the product of the first value and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the number of input / output operations per second, the number of read / write operations and the total number of hard disks included in the configuration parameters, the total number of read / write operations per second of the input / output group is determined; based on the preset value, the total number, the configuration parameters and the reference parameters, the actual number of each volume type included in each input / output group is determined; for each input / output group, based on the sum of the actual numbers of the input / output group, the input / output group is divided into a first volume group and a second volume group; thus, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0091] In some feasible examples, in combination with Figure 2 , such as Figure 8 shown, the above S21 can be specifically implemented by the following S210.
[0092] S210. Determine the actual number of each volume type included in each input / output group based on the preset value, the total number, the hard disk type in the configuration parameters, the active volume theoretical ratio, the minimum number of read / write operations per second of the volume in the disk array, the coefficient corresponding to the connection method, the loss multiple of the write operation to the number of input / output operations per second, and the reference parameters.
[0093] In some examples, the active volume theoretical ratio refers to the ratio of the number of volumes providing services in the input / output group to the number of volumes included in the input / output group. For example, the active volume theoretical ratio is 10%.
[0094] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, it can calculate each input / output group, and based on the preset value, the total number of times, the hard disk type in the configuration parameters, the theoretical ratio of active volumes, the minimum number of read / write operations per second for the volumes in the disk array, the coefficient corresponding to the connection method, the loss multiple of the write operation to the number of input / output operations per second, and the reference parameters, determine the actual number of each volume type included in each input / output group; for each input / output group, divide the input / output group into a first volume group and a second volume group based on the sum of the actual numbers of the input / output group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0095] In some feasible examples, in combination with Figure 8 , such as Figure 9 shown, the above S210 can be specifically implemented through the following S2100 - S2103.
[0096] S2100. Determine a second value based on the theoretical ratio of active volumes and the coefficient.
[0097] In some examples, the second value is equal to the product of the theoretical ratio of active volumes and the coefficient.
[0098] S2101. Determine a third value based on the preset value, the second value, and the total number of times.
[0099] In some examples, the third value is equal to the ratio of the total number of times to a fourth value, and the fourth value is equal to the sum of the preset value and the second value.
[0100] S2102. Calculate the maximum number combination of all volume types included in the input / output group based on the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the reference parameters.
[0101] In some examples, the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the reference parameters can be input into the allocation model for allocation to obtain the maximum number combination of all volume types included in the input / output group. Among them, the training process of the allocation model includes:
[0102] Obtain the third training sample data and the third marking result of the third training sample data. Among them, the third training sample data includes the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio corresponding to the historical input / output group, and the third marking result includes the maximum number combination of all volume types included in the input / output group.
[0103] Input the third training sample data into the third neural network model for learning to obtain the third prediction result of the third neural network model for the third training sample data.
[0104] Based on the third prediction result and the third labeling result, adjust the network parameters of the third neural network model until the third neural network model converges to obtain the allocation model.
[0105] Alternatively, input the write data resource allocation ratio in the third value, minimum number of times, loss multiple, and reference parameter into the combination formula for calculation to obtain the maximum number combination of all volume types included in the input / output group.
[0106] S2103. Use the theoretical quantity of each volume type in the maximum number combination as the actual quantity of each volume type included in the input / output group.
[0107] In some examples, if there is only one maximum number combination, use the theoretical quantity of each volume type in the maximum number combination as the actual quantity of each volume type included in the input / output group.
[0108] In some examples, if there are multiple maximum number combinations, at this time, a maximum number combination can be randomly selected, and the theoretical quantity of each volume type in this maximum number combination can be used as the actual quantity of each volume type included in the input / output group. Alternatively, based on the sum of the products of the weight value of each volume type and the actual quantity of each volume type in the maximum number combination, obtain the recommended value corresponding to each maximum number combination. Use the theoretical quantity of each volume type in the maximum number combination corresponding to the largest recommended value as the actual quantity of each volume type included in the input / output group.
[0109] In some examples, the weight value of a volume type is equal to the ratio of the number of volumes included in the volume type created historically to the total number of volumes created historically.
[0110] As described above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, for each input / output group, the second value can be calculated based on the active volume theory ratio and coefficient; the third value can be determined based on the preset value, the second value, and the total number of times; based on the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the reference parameters, the maximum number combination of all volume types included in the input / output group can be calculated; the theoretical number of each volume type in the maximum number combination is used as the actual number of each volume type included in the input / output group; for each input / output group, based on the sum of the actual numbers of the input / output group, the input / output group is divided into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutually active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0111] In some feasible examples, in combination with Figure 9 , such as Figure 10 shown, the above S2100 can be specifically implemented by the following S2100-1.
[0112] S2100-1: Determine the second value based on the product of the active volume theory ratio and the coefficient.
[0113] As described above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, for each input / output group, the second value can be calculated based on the product of the active volume theory ratio and the coefficient; the third value can be determined based on the preset value, the second value, and the total number of times; based on the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the reference parameters, the maximum number combination of all volume types included in the input / output group can be calculated; the theoretical number of each volume type in the maximum number combination is used as the actual number of each volume type included in the input / output group; for each input / output group, based on the sum of the actual numbers of the input / output group, the input / output group is divided into a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume group are mutually active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0114] In some feasible examples, in combination with Figure 9 , such as Figure 11 shown, the above S2101 can be specifically implemented by the following S2101-1 and S2101-2.
[0115] S2101-1. Obtain a fourth value based on the sum of a preset value and a second value;
[0116] S2101-2. Determine a third value based on the ratio of the total number of times to the fourth value.
[0117] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included under the current device site; thereby, it is possible to calculate each input / output group, determine the second value based on the active volume theory ratio and coefficient; obtain the fourth value based on the sum of the preset value and the second value; determine the third value based on the ratio of the total number of times to the fourth value; calculate the maximum number combination of all volume types included in the input / output group based on the write data resource allocation ratio among the third value, the minimum number of times, the loss multiple, and the reference parameter; use the theoretical number of each volume type in the maximum number combination as the actual number of each volume type included in the input / output group; for each input / output group, divide the input / output group into a first volume group and a second volume group based on the sum of the actual numbers of the input / output group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume groups are mutual active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0118] In some feasible examples, the volume types include ordinary volumes, thin volumes, and compressed volumes; combined Figure 9 , as Figure 12 shown, the above S2102 can be specifically implemented by the following S2102-1.
[0119] S2102-1. Input the write data resource allocation ratio among the third value, the minimum number of times, the loss multiple, and the reference parameter into the combination formula for calculation to obtain the maximum number combination of all volume types included in the input / output group; wherein, the combination formula includes:
[0120] .
[0121] Wherein, T represents the third value, represents the minimum number of times, and both represent the loss multiple, represents the write data resource allocation ratio, represents an ordinary volume, represents a thin volume, represents a compressed volume.
[0122] By calculating the maximum value combination of x, y, and z, the maximum number combination of all volume types included in the input / output group is obtained.
[0123] In some examples, the loss multiples corresponding to different volume types are different. For example, the loss multiple corresponding to the general volume type is 1, the loss multiple corresponding to the compressed volume type is 1.2, and the loss multiple corresponding to the thin-provisioned volume type is 1.2.
[0124] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included in the current device site; thereby, it can calculate each input / output group, determine the second value based on the active volume theory ratio and coefficient; input the write data resource allocation ratios in the third value, the minimum number of times, the loss multiple, and the reference parameters into the combined formula for calculation to obtain the maximum quantity combination of all volume types included in the input / output group; use the theoretical quantity of each volume type in the maximum quantity combination as the actual quantity of each volume type included in the input / output group; for each input / output group, divide the input / output group into a first volume group and a second volume group based on the sum of the actual quantities of the input / output group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume groups are dual-active volumes with each other, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0125] In some feasible examples, in combination with Figure 1 , such as Figure 13 shown, the above S3 can be specifically implemented through the following S30 and S31.
[0126] S30. For each input / output group, create a target number of volumes on the input / output group; where the target number is equal to the sum of the actual quantities corresponding to the input / output group, and the sum of the target numbers of all input / output groups is equal to the target value.
[0127] Exemplarily, create more than the target number = (x + y + z) volumes on each input / output group, so that the sum of the volumes created by multiple input / output groups under the current device site is the target number, such as the target number is 2048.
[0128] S31. Based on the identification codes of the volumes, allocate the volumes to generate a first volume group and a second volume group.
[0129] In some examples, when allocating identification codes to the volumes, the first number of volumes can be continuously allocated starting from the identification code 0, and the second number of volumes can be continuously allocated starting from the identification threshold; where the sum of the first number and the second number is equal to the target number.
[0130] In some examples, the second number is equal to the product of the target number and the preset ratio.
[0131] In some examples, to make the volume distribution more uniform, the data processing method provided by the embodiments of the present disclosure generates two volume arrays A and B by extracting n volume IDs. The number of volume IDs in A that are greater than the identification threshold (e.g., 8192) is not less than the preset ratio (e.g., 10%). The volume IDs in arrays A and B are looped, and these volumes are mapped to the current device site.
[0132] In some implementable examples, the ratio of the number of volumes in the first volume group with identification codes greater than the identification threshold to the number of volumes included in the first volume group is greater than or equal to the preset ratio.
[0133] As can be seen from the above, the data processing method provided by the embodiments of the present disclosure obtains the reference parameters of the current device site and one or more input / output groups included under the current device site; thereby, it can calculate each input / output group, and based on the preset value, the disk arrays included in the input / output group, and the configuration parameters and reference parameters of the disk arrays, determine the actual number of each volume type included in each input / output group; for each input / output group, create a target number of volumes on the input / output group; based on the identification codes of the volumes, allocate the volumes to generate a first volume group and a second volume group; in this way, the system can automatically divide the volumes under the current device site into two volume groups. Since the volumes in the volume groups are mutual active-active volumes, there is no need to manually allocate the volumes under the current device site based on experience, ensuring the technical effect of the allocation balance rate of each volume group.
[0134] In some implementable examples, in combination with Figure 1 , such as Figure 14 shown, the data processing method provided by the embodiments of the present disclosure further includes: S4 - S6.
[0135] S4. In response to the check operation, interrupt all inputs and outputs.
[0136] S5. Based on the detection type corresponding to the check operation, determine at least one check operation to be performed; wherein, the detection type includes one or more of fault injection check, version change check, and general check;
[0137] S6. Perform the check operation on the first volume group and the second volume group respectively to generate a check result.
[0138] In some examples, in response to an inspection operation, check whether there is an I / O-intensive business in the volumes within the first volume group (such as the volume group called Group A) and the second volume group (such as the volume group called Group B). If there is an I / O-intensive business, kill all I / O processes and perform a fault injection check; if there is no I / O-intensive business, loop to start the host I / O mapping the volumes in Group A, and wait for 60 seconds after completion for the I / O to run stably. Perform a fault injection check to conduct a general check on the active-active environment. If an abnormality is detected during the check, record the log, dump the dump file, and exit. If there is no abnormality, randomly trigger a CCU upgrade on one iogroup site in the active-active environment according to the ug1 configuration within the test version, and upgrade the versions of the two nodes where the iogroup is located to the Ug1 version. Perform a fault injection check for the incoming {node, Ug1 version number} to conduct a version change check on the active-active environment. If the check is normal, loop to start the host I / O mapping the volumes in Group B, and wait for 60 seconds after completion for the I / O to run stably. Perform a fault injection check to conduct a general check on the active-active environment.
[0139] Simulate a fault situation, obtain the current system time of the execution machine (it cannot be logged in to the storage to obtain to prevent time reset caused by abnormal storage upgrade), save it as begintime, restart a node randomly at one site in the active-active environment, and loop to ping the restarted node until the Internet Protocol (IP) is accessible after startup / or timeout for 600 seconds and exit the ping. Perform a fault injection check to conduct a general check on the active-active environment. If there is no abnormality, obtain the current system time of the execution machine and save it as mitime, and exit if there is an abnormality. If mitime - begintime >= 1 hour, end the fault injection test.
[0140] Query that the site version in the active-active environment is ug1, trigger a CCU upgrade, and upgrade the versions of the two nodes with the ug1 version to the build version. Perform a fault injection check for the incoming {node, build version number} to conduct a version change check on the active-active environment. If the check is normal, repeat any of the check links such as the fault injection check, version change check, and general check to check for abnormalities. Error logs need to be saved in all cases. After dumping the dump file, the process ends. After the above program runs continuously for N (such as 2) days without exiting midway and without error logs, check the operation logs. If the process runs smoothly throughout, the process can be manually killed to end the test.
[0141] In this way, the process of performing inspection operations on the first volume group and the second volume group respectively is completed.
[0142] In some examples, the parameter variables of the test version: build represents the version in use, and Ug1 represents the version to be upgraded; among them, both build and Ug1 carry information such as the file acquisition path.
[0143] As can be seen from the above, for the data processing method provided by the embodiments of the present disclosure, after grouping the volumes of the current device site, in order to avoid problems in grouping, the first volume group and the second volume group can also be inspected. For example, in response to the inspection operation, all inputs and outputs are interrupted. Based on the detection type corresponding to the inspection operation, at least one inspection operation to be performed is determined; the inspection operation is respectively performed on the first volume group and the second volume group to generate an inspection result. In this way, it can be ensured that the created first volume group and the second volume group can operate normally, ensuring the user experience.
[0144] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation manner.
[0145] An embodiment of the present application also provides a data processing device, as Figure 15 shown, including an acquisition unit 101 and a processing unit 102. Among them,
[0146] The acquisition unit 101 is used to acquire the reference parameters of the current device site, as well as one or more input / output groups included in the current device site; among them, the reference parameters at least include the write data resource allocation ratio;
[0147] The processing unit 102 is used to, for each input / output group, based on a preset value, the disk array included in the input / output group acquired by the acquisition unit 101, the configuration parameters of the disk array acquired by the acquisition unit 101, and the reference parameters acquired by the acquisition unit 101, determine the actual number of each volume type included in each input / output group;
[0148] The processing unit 102 is further used to, for each input / output group, based on the actual number of the input / output group and the identification code of each volume, divide the input / output group into a first volume group and a second volume group; among them, the volumes in the first volume group and the volumes in the second volume group are mutual active-active volumes.
[0149] In some feasible examples, the processing unit 102 is specifically used to, for each input / output group, based on the disk array included in the input / output group and the configuration parameters of the disk array, determine the total number of read / write operations per second of the input / output group; the processing unit 102 is specifically used to, based on a preset value, the total number, the configuration parameters, and the reference parameters, determine the actual number of each volume type included in each input / output group.
[0150] In some feasible examples, the processing unit 102 is specifically configured to, for each input / output group, determine the number of input / output operations per second based on the array type of the disk array included in the input / output group, the type of hard disk included in the disk array, and the total number of hard disks; the processing unit 102 is specifically configured to determine the number of read / write operations that can be processed per second based on the configuration parameters; the processing unit 102 is specifically configured to determine the total number of read / write operations per second of the input / output group based on the number of input / output operations per second, the number of read / write operations, and the total number of hard disks included in the configuration parameters.
[0151] In some feasible examples, the processing unit 102 is specifically configured to determine the number of read / write operations that can be processed per second based on the type of hard disk and the array type in the configuration parameters.
[0152] In some feasible examples, the processing unit 102 is specifically configured to determine a first value based on the number of read / write operations and the number of input / output operations per second; in some feasible examples, the processing unit 102 is specifically configured to determine the total number of read / write operations per second of the input / output group based on the first value and the total number of hard disks included in the configuration parameters.
[0153] In some feasible examples, the processing unit 102 is specifically configured to determine a first value based on the ratio of the number of read / write operations to the number of input / output operations per second.
[0154] In some feasible examples, the processing unit 102 is specifically configured to determine the total number of read / write operations per second of the input / output group based on the product of the first value and the total number of hard disks included in the configuration parameters.
[0155] In some feasible examples, the processing unit 102 is specifically configured to determine the actual quantity of each volume type included in each input / output group based on a preset value, the total number, the type of hard disk in the configuration parameters, the theoretical ratio of active volumes, the minimum number of read / write operations per second of the volumes in the disk array, the coefficient corresponding to the connection method, the loss multiple of the write operation to the number of input / output operations per second, and the reference parameter.
[0156] In some feasible examples, the processing unit 102 is specifically configured to determine a second value based on the theoretical ratio of active volumes and the coefficient; the processing unit 102 is specifically configured to determine a third value based on the preset value, the second value, and the total number; the processing unit 102 is specifically configured to calculate the maximum quantity combination of all volume types included in the input / output group based on the third value, the minimum number, the loss multiple, and the write data resource allocation ratio in the reference parameter; the processing unit 102 is specifically configured to use the theoretical quantity of each volume type in the maximum quantity combination as the actual quantity of each volume type included in the input / output group.
[0157] In some implementable examples, the processing unit 102 is specifically configured to determine a second value based on the product of the active volume theory ratio and a coefficient.
[0158] In some implementable examples, the processing unit 102 is specifically configured to obtain a fourth value based on the sum of a preset value and the second value; the processing unit 102 is specifically configured to determine a third value based on the ratio of the total number of times to the fourth value.
[0159] In some implementable examples, the volume types include normal volumes, thin volumes, and compressed volumes; the processing unit 102 is specifically configured to input the write data resource allocation ratios among the third value, the minimum number of times, the loss multiple, and the reference parameter into a combination formula for calculation to obtain the maximum number combination of all volume types included in the input / output group; wherein, the combination formula includes:
[0160] ;
[0161] wherein, T represents the third value, represents the minimum number of times, and both represent the loss multiple, represents the write data resource allocation ratio, represents a normal volume, represents a thin volume, represents a compressed volume.
[0162] In some implementable examples, the processing unit 102 is specifically configured to, for each input / output group, create a target number of volumes on the input / output group; wherein, the target number is equal to the sum of the actual numbers corresponding to the input / output group, and the sum of the target numbers of all input / output groups is equal to the target value; the processing unit 102 is specifically configured to allocate the volumes based on the volume identification codes to generate a first volume group and a second volume group.
[0163] In some implementable examples, the ratio of the number of volumes with identification codes greater than the identification threshold in the first volume group to the number of volumes included in the first volume group is greater than or equal to a preset ratio.
[0164] In some implementable examples, the processing unit 102 is further configured to interrupt all inputs and outputs in response to an inspection operation; the processing unit 102 is further configured to determine at least one inspection operation to be performed based on the detection type corresponding to the inspection operation; wherein, the detection type includes one or more of a fault injection inspection, a version change inspection, and a general inspection; the processing unit 102 is further configured to perform inspection operations on the first volume group and the second volume group respectively to generate inspection results.
[0165] For the description of the features in the corresponding embodiments of the data processing device, reference can be made to the relevant descriptions in the corresponding embodiments of the data processing method, which will not be elaborated here one by one.
[0166] An embodiment of the present application further provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above-described embodiments of the data processing method.
[0167] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps in any one of the above-described embodiments of the data processing method when running.
[0168] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: USB flash drive, read-only memory (ROM for short), random access memory (RAM for short), mobile hard disk, magnetic disk, or optical disc, etc., various media that can store computer programs.
[0169] An embodiment of the present application further provides a computer program product. The above computer program product includes a computer program, and when the computer program is executed by a processor, it implements the steps in any one of the above-described embodiments of the data processing method.
[0170] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium. The non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements the steps in any one of the above-described embodiments of the data processing method.
[0171] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described according to functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0172] The above has introduced in detail a data processing method provided by this application. Specific examples are used in this article to elaborate on the principle and implementation manner of this application. The description of the above embodiments is only used to help understand the method and its core idea of this application. It should be noted that for those of ordinary skill in the art, without departing from the principle of this application, several improvements and modifications can still be made to this application, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A data processing method, characterized in that: include: Acquire a benchmark parameter of a current device site and one or more input / output groups contained in the current device site; wherein the benchmark parameter at least includes a write data resource allocation ratio; For each of the input / output groups, based on a preset value, a disk array included in the input / output group, a configuration parameter of the disk array, and the reference parameter, determining an actual number of each volume type included in each of the input / output groups; For each of the input / output groups, based on the actual number of the input / output groups and the identification code of each volume, the input / output group is divided into a first volume group and a second volume group; wherein the volumes in the first volume group and the volumes in the second volume group are active-active volumes to each other.
2. The data processing method according to claim 1, characterized in that: For each of the input / output groups, determining the actual number of each volume type included in each of the input / output groups based on a preset value, a disk array included in the input / output group, a configuration parameter of the disk array, and the benchmark parameter, includes: For each of the input / output groups, based on the disk arrays included in the input / output group and configuration parameters of the disk arrays, determine the total number of read and write operations performed per second by the input / output group; Based on a preset value, the total number of times, the configuration parameter and the reference parameter, an actual number of each volume type included in each of the input / output groups is determined.
3. The data processing method according to claim 2, characterized in that: The step of determining, for each of the input / output groups, a total number of read and write operations performed per second by the input / output group based on a disk array included in the input / output group and configuration parameters of the disk array, comprises: For each of the input / output groups, based on the array type of the disk array included in the input / output group, the hard disk type and the total number of hard disks included in the disk array, determine the average number of input / output operations per second; Based on the configuration parameters, determining the number of read and write operations that can be processed per second; The total number of read and write operations per second of the input / output group is determined based on the average number of input / output operations per second, the number of read and write operations, and the total number of hard disks included in the configuration parameters.
4. The data processing method according to claim 3, characterized in that: The determining, based on the configuration parameters, the number of read and write operations that can be processed per second includes: The number of read and write operations that can be processed per second is determined based on the hard disk type and the array type in the configuration parameters.
5. The data processing method according to claim 3, characterized in that: The determining the total number of read and write operations per second of the input / output group based on the average number of input / output operations per second, the number of read and write operations, and the total number of hard disks included in the configuration parameters includes: Determining a first value based on the number of read and write operations and the average number of input / output operations per second; Based on the first value and the total number of hard disks included in the configuration parameters, a total number of read and write operations performed per second by the input / output group is determined.
6. The data processing method according to claim 5, characterized in that: The determining of a first value based on the number of read and write operations and the average number of input / output operations per second includes: A first value is determined based on a ratio of the number of read and write operations to the average number of input / output operations per second.
7. The data processing method according to claim 5, characterized in that: The determining the total number of read and write operations per second of the input / output group based on the first value and the total number of hard disks included in the configuration parameters includes: The total number of read and write operations per second of the input / output group is determined based on the product of the first value and the total number of hard disks included in the configuration parameters.
8. The data processing method according to claim 2, characterized in that: The determining, based on a preset value, the total number of times, the configuration parameter, and the benchmark parameter, the actual number of each volume type included in each input / output group comprises: Based on the preset value, the total number of times, the hard disk type in the configuration parameters, the active volume theoretical ratio, the minimum number of read and write operations per second for the volumes in the disk array, the coefficient corresponding to the connection mode, the loss multiple of the write operation to the number of input / output operations per second and the benchmark parameter, the actual number of each volume type included in each of the input / output groups is determined.
9. The data processing method according to claim 8, characterized in that: The determining the actual number of each volume type included in each input / output group based on the preset value, the total number of times, the hard disk type in the configuration parameters, the active volume theoretical ratio, the minimum number of read and write operations per second for the volumes in the disk array, the coefficient corresponding to the connection mode, the loss multiple of the write operation to the number of input / output operations per second, and the benchmark parameter, includes: determining a second value based on the active volume theoretical ratio and the coefficient; Determine a third value based on the preset value, the second value and the total number of times; Calculate the maximum number of combinations of all volume types included in the input / output group based on the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the benchmark parameter; The theoretical quantity of each volume type in the maximum quantity combination is used as the actual quantity of each volume type included in the input / output group.
10. The data processing method according to claim 9, characterized in that: The determining of the second value based on the active volume theoretical ratio and the coefficient includes: determining a second value based on the product of the active volume theoretical ratio and the coefficient; The determining of a third value based on the preset value, the second value, and the total number of times includes: Obtaining a fourth value based on the sum of the preset value and the second value; A third value is determined based on a ratio of the total number of times to the fourth value.
11. The data processing method according to claim 9, characterized in that: The volume types include common volumes, thin volumes and compressed volumes; The calculating the maximum number of combinations of all volume types included in the input / output group based on the third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the benchmark parameter includes: The third value, the minimum number of times, the loss multiple, and the write data resource allocation ratio in the benchmark parameter are input into a combination formula for calculation to obtain a maximum number combination of all volume types included in the input / output group; wherein the combination formula includes: ; Wherein, T represents the third value, represents the minimum number of times, and All represent loss multiples, Indicates the allocation ratio of write data resources. Indicates normal volume, Indicates a thin volume. Indicates a compressed volume.
12. The data processing method according to claim 1, characterized in that: For each of the input / output groups, based on the actual number of the input / output groups and the identification code of each volume, the input / output group is divided into a first volume group and a second volume group, comprising: For each of the input / output groups, create a target number of volumes on the input / output group; wherein the target number is greater than or equal to the sum of the actual numbers corresponding to the input / output groups, and the sum of the target numbers of all the input / output groups is equal to the target value; Based on the identification code of the volume, the volume is allocated to generate a first volume group and a second volume group.
13. The data processing method according to claim 1, characterized in that: The method further comprises: In response to the checking operation, interrupting all input and output; Based on the detection type corresponding to the inspection operation, determine at least one inspection operation that needs to be performed; wherein the inspection type includes one or more of a fault injection check, a version change check, and a general check; The checking operation is performed on the first volume group and the second volume group to generate a checking result.
14. A data processing device, characterized in that: include: An acquisition unit, configured to acquire a benchmark parameter of a current device site and one or more input / output groups contained in the current device site; wherein the benchmark parameter at least includes a write data resource allocation ratio; a processing unit, configured to determine, for each of the input / output groups, an actual number of each volume type included in each of the input / output groups based on a preset value, the disk array included in the input / output group obtained by the obtaining unit, the configuration parameters of the disk array obtained by the obtaining unit, and the reference parameter obtained by the obtaining unit; The processing unit is further used to divide the input / output group into a first volume group and a second volume group for each of the input / output groups based on the actual number of the input / output groups and an identification code of each volume; wherein the volumes in the first volume group and the volumes in the second volume group are dual-active volumes to each other.
15. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the data processing method according to any one of claims 1 to 13 when executing the computer program.
Citation Information
Patent Citations
Active-active storage system and data processing method thereof
CN114089923A
Storage resource configuration method, device and equipment and computer readable storage medium
CN117608843A