CN117112288A - Disk array verification method and device, storage medium and electronic equipment - Google Patents

Disk array verification method and device, storage medium and electronic equipment Download PDF

Info

Publication number
CN117112288A
CN117112288A CN202311336476.8A CN202311336476A CN117112288A CN 117112288 A CN117112288 A CN 117112288A CN 202311336476 A CN202311336476 A CN 202311336476A CN 117112288 A CN117112288 A CN 117112288A
Authority
CN
China
Prior art keywords
disk
target
determining
data
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311336476.8A
Other languages
Chinese (zh)
Other versions
CN117112288B (en
Inventor
范晓钊
贾晓龙
陈静静
刘洁
苏衍浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311336476.8A priority Critical patent/CN117112288B/en
Publication of CN117112288A publication Critical patent/CN117112288A/en
Application granted granted Critical
Publication of CN117112288B publication Critical patent/CN117112288B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1064Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

The embodiment of the application provides a method and a device for verifying a disk array, a storage medium and electronic equipment, wherein the method comprises the following steps: determining configuration information of a disk array; determining target verification time of the disk array based on the configuration information; determining target disk data of each target disk included in the disk array under the condition that target verification opportunity is reached; determining target parity data for each parity disk included in the disk array based on the target disk data; the disk array is verified based on the target disk data and the target verification data. The application solves the problem of low efficiency of checking the disk array in the related technology and achieves the effect of improving the checking efficiency of the disk array.

Description

Disk array verification method and device, storage medium and electronic equipment
Technical Field
The embodiment of the application relates to the field of computers, in particular to a method and a device for checking a disk array, a storage medium and electronic equipment.
Background
RAID (Redundant Arrays of Independent Disks) is a redundant array of independent disks, which is a large-capacity disk array obtained by combining multiple independent disks together. The RAID technology can expand the storage capacity and improve the request processing capacity of the system input and output, and the data reliability is enhanced by the distributed storage technology, the parallel access means and the information redundancy technology of the data. The verification of the storage chips related to RAID needs to comprehensively consider RAID level, different arrangement and combination modes between the data disk and the check disk and encoding/decoding scenes, and the difference between different scenes makes the data volume of the encoding/decoding calculation result large and complex. In the related art, there are generally the following ways for processing results in the RAID-related storage class chip verification process:
The RAID algorithm is simple, and the implementation difficulty of the practical engineering is small, and the reference model (namely, RM) of the RAID algorithm is integrated and developed in the verification environment. And (3) carrying out data packaging processing on the actual encoding/decoding calculation result output by the DUT and the expected encoding/decoding calculation result output by the RM, and carrying out one-by-one comparison by calling a computer () function.
2. If the RAID algorithm is complex, the sum of the data disk and the check disk is large, meanwhile, the number of the arranged and combined scenes is large, the RAID encoding/decoding calculation process usually generates tens of megabytes or even hundreds of megabytes of data results, the data are usually stored into data files, and then the data corresponding to various RAID testing scenes are extracted from expected data files and actually generated data files by virtue of script languages such as Python and Perl and are compared one by one.
The method 1 is a relatively traditional method for coding/decoding calculation results in verification, is only suitable for a scene with a simpler RAID algorithm and a simple arrangement and combination mode of a data disk and a check disk, and is used for a complex coding/decoding calculation scene, namely, different RAID grades are considered, the arrangement and combination modes of the data disk and the check disk are various, and the RAID algorithm RM based on a SystemVerilog (namely: SV) open method has high difficulty, a complex debugging process and easy errors.
The method 2 reads the expected data file and the actual data file by means of the script language respectively, extracts the data according to different RAID test scenes and compares the data one by one. The method has the difficulty that the development difficulty of the script is high, and the data result generated in the RAID encoding/decoding process cannot be checked in real time. Because the data file is large in size, the management of the data is inconvenient, and if the data is compared, errors occur, and the positioning process is complex.
Accordingly, the related art has a problem of low efficiency of checking the disk array.
In view of the above problems in the related art, no effective solution has been proposed at present.
Disclosure of Invention
The embodiment of the application provides a method and a device for checking a disk array, a storage medium and electronic equipment, which are used for at least solving the problem of low efficiency of checking the disk array in the related technology.
According to one embodiment of the present application, there is provided a method for verifying a disk array, including: determining configuration information of a disk array; determining target verification time of the disk array based on the configuration information; determining target disk data of each target disk included in the disk array under the condition that the target verification opportunity is reached; determining target parity data for each parity disk included in the disk array based on the target disk data; and verifying the disk array based on the target disk data and the target verification data.
According to another embodiment of the present application, there is provided a verification apparatus for a disk array, including: the first determining module is used for determining configuration information of the disk array; the second determining module is used for determining target verification time of the disk array based on the configuration information; a third determining module, configured to determine target disk data of each target disk included in the disk array when the target verification opportunity is reached; a fourth determining module, configured to determine target parity data of each parity disk included in the disk array based on the target disk data; and the verification module is used for verifying the disk array based on the target disk data and the target verification data.
According to a further embodiment of the application, there is also provided a computer readable storage medium having stored therein a computer program, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
According to a further embodiment of the application there is also provided an electronic device comprising a memory having stored therein a computer program and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
The application determines the configuration information of the disk array, and determines the target verification time of the disk array according to the configuration information; and under the condition that the target verification time is reached, determining target disk data of each target disk included in the disk array, determining target verification data of each verification disk included in the disk array according to the target disk data, and verifying the disk array according to the target disk data and the target verification data. When the disk array is verified, target verification data can be determined according to the target disk data of each target disk, and then the disk array is verified according to the target disk data and the target verification data, so that the verification method is simple, the problem of low efficiency of verifying the disk array in the related technology can be solved, and the effect of improving the verification efficiency of the disk array is achieved.
Drawings
FIG. 1 is a block diagram of a hardware architecture of a mobile terminal of a disk array verification method according to an embodiment of the present application;
FIG. 2 is a flow chart of a method of verifying a disk array according to an embodiment of the application;
FIG. 3 is a schematic diagram of a disk array according to an embodiment of the application;
FIG. 4 is a diagram of a verification environment in accordance with an embodiment of the application;
FIG. 5 is a block diagram of a disk array verification apparatus according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in detail below with reference to the accompanying drawings in conjunction with the embodiments.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
The method embodiments provided in the embodiments of the present application may be performed in a mobile terminal, a computer terminal or similar computing device. Taking the mobile terminal as an example, fig. 1 is a block diagram of a hardware structure of the mobile terminal of a method for verifying a disk array according to an embodiment of the present application. As shown in fig. 1, a mobile terminal may include one or more (only one is shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a microprocessor MCU or a processing device such as a programmable logic device FPGA) and a memory 104 for storing data, wherein the mobile terminal may also include a transmission device 106 for communication functions and an input-output device 108. It will be appreciated by those skilled in the art that the structure shown in fig. 1 is merely illustrative and not limiting of the structure of the mobile terminal described above. For example, the mobile terminal may also include more or fewer components than shown in fig. 1, or have a different configuration than shown in fig. 1.
The memory 104 may be used to store a computer program, for example, a software program of application software and a module, such as a computer program corresponding to a method for verifying a disk array in an embodiment of the present application, and the processor 102 executes the computer program stored in the memory 104, thereby performing various functional applications and data processing, that is, implementing the method described above. Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory remotely located relative to the processor 102, which may be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 106 is used to receive or transmit data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the mobile terminal. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, simply referred to as NIC) that can connect to other network devices through a base station to communicate with the internet. In one example, the transmission device 106 may be a Radio Frequency (RF) module, which is configured to communicate with the internet wirelessly.
In this embodiment, a method for verifying a disk array is provided, and fig. 2 is a flowchart of a method for verifying a disk array according to an embodiment of the present application, as shown in fig. 2, where the flowchart includes the following steps:
step S202, determining configuration information of a disk array;
step S204, determining target verification time of the disk array based on the configuration information;
step S206, determining target disk data of each target disk included in the disk array under the condition that the target verification opportunity is reached;
step S208, determining target verification data of each verification disk included in the disk array based on the target disk data;
step S210, verifying the disk array based on the target disk data and the target verification data.
In the above embodiment, the disk array may be a RAID, and the disk array may include a plurality of target disks and a plurality of check disks. The number of target disks and parity disks may be related to the rank of the disk array. Different disk arrays can correspond to different target disk numbers and check disk numbers. The level of the disk array may be embodied in configuration information of the disk array, where the configuration information may include a RAID level, the number of data disks, the number of check disks, a working mode, a bad disk position in a decoding scene, an inspection flag bit, and the like. The target verification opportunity of the disk array may be determined according to the operating mode included in the configuration information. Different modes of operation may correspond to different check opportunities. Of course, the target check opportunity may also be stored directly in the configuration information. The target verification opportunity may include starting verification when contents of all target disks in the disk array are updated. The target verification opportunity may further include starting verification in the event that the contents of a portion of the target disks in the disk array are updated. For example, when the operation mode is the full mode, the verification is started when the target verification timing is that the contents of all the target disks are updated.
In the above embodiment, in response to reaching the target verification opportunity, the target disk data included in the disk array may be determined, and the target verification data may be determined according to the target disk data. And verifying the disk array by using the target disk data and the target verification data.
In the above embodiment, determining the target parity data based on the target disk data may include calculating the target disk data according to a first algorithm to obtain a first parity value, and determining the first parity value as the target parity data. Wherein the first algorithm may be a hash algorithm.
In the above embodiment, verifying the disk array with the target disk data and the target verification data may include: converting the target disk data into preset format data in a preset format, calculating the preset format data according to a first algorithm to obtain a second check value, determining whether the second check value is identical to the target check data, and determining that the check of the check disk array is successful under the identical condition. And under the condition of non-uniformity, determining that the check disk array fails to check.
The application determines the configuration information of the disk array, and determines the target verification time of the disk array according to the configuration information; and under the condition that the target verification time is reached, determining target disk data of each target disk included in the disk array, determining target verification data of each verification disk included in the disk array according to the target disk data, and verifying the disk array according to the target disk data and the target verification data. When the disk array is verified, target verification data can be determined according to the target disk data of each target disk, and then the disk array is verified according to the target disk data and the target verification data, so that the verification method is simple, the problem of low efficiency of verifying the disk array in the related technology can be solved, and the effect of improving the verification efficiency of the disk array is achieved.
The main execution body of the above steps may be a processor, but is not limited thereto.
In one exemplary embodiment, the target parity data for each parity disk included in the disk array is determined based on the target disk data: determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk; and processing the target disk data based on the first parameter and the second parameter to obtain the target verification data of each verification disk. In this embodiment, the first parameter and the second parameter may be parameters configured for the target disk and the check disk in advance, and both the first parameter and the second parameter may be stored in a configuration file. And processing the target disk data by using the first parameter and the second parameter to obtain target check data of the check disk.
In the embodiment, the data of the target disk data can be automatically processed according to the first parameter and the second parameter which are preconfigured in the configuration information to obtain the target check data, so that the target check data can be automatically generated under different encoding/decoding scenes, and the speed of checking the disk array is improved.
In an exemplary embodiment, processing the target disk data based on the first parameter and the second parameter, to obtain the target parity data for each of the parity disks includes: under the condition that two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disk, and the target check data corresponding to the target check disk are obtained: determining the sum value of each first parameter and a third parameter except the parameter corresponding to the target check disk, which is included in the second parameter, so as to obtain a plurality of first sum values; determining a second sum value of the second parameter corresponding to each check disk; determining a first ratio of each of the first sum values to the second sum value; determining products of the target disk data corresponding to the first parameters and each first ratio to obtain a plurality of first products; and determining a sum value of a plurality of first products as the target check data. In this embodiment, the configuration information may include the number of target disks included in the disk array and the number of check disks. When there are m target disks and n check disks in the disk array, when n is 2, that is, when the number of check disks is 2, the target check data can be expressed by the following formula:
Wherein A is x The Ap and Aq represent the first parameters corresponding to the target disk, the Ap and Aq represent the second parameters corresponding to the target check disk, dx represents the target disk data corresponding to the target disk, and P, Q represents the target check data of the two check disks respectively. When the target check disk is P, the third parameter is Aq, and when the target check disk is Q, the third parameter is Ap. The following description will be made with the target parity disk as P: the first sum is A0+Aq, A1+Aq … … Ax+Aq. The second sum is ap+aq. The first ratio is (ax+aq)/(ap+aq). The first product is [ (ax+aq)/(ap+aq)]Dx。
In an exemplary embodiment, processing the target disk data based on the first parameter and the second parameter, to obtain the target parity data for each of the parity disks includes: under the condition that more than two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disks, and the target check data corresponding to the target check disk are obtained: the following operations are executed for any target first parameter included in the first parameters, and a fourth product corresponding to each target first parameter is obtained: determining the sum value of each third parameter except the parameters corresponding to the target check disk, which are included in the first parameter and the second parameter, to obtain a plurality of third sum values, determining a second product of the third sum values, determining a fourth parameter corresponding to the target check disk, which is included in the second parameter, determining the sum value of the fourth parameter and each third parameter, to obtain a plurality of fourth sum values, determining a third product of the fourth sum values, determining a second ratio of the second product to the third product, and determining the product of the second ratio and target disk data corresponding to the target first parameter as the fourth product; and determining the sum value of the fourth product corresponding to each target first parameter as the target check data. In this embodiment, when there are m target disks and n check disks in the disk array, when n is a number greater than 2, that is, the number of check disks is greater than 2, the target disk data may be expressed as
Wherein P represents target verification data of any one target verification disk, (ax+aq), (ax+ar), (ax+a …) represents a third sum value, (ax+aq) (ax+ar) (ax+a …) represents a second product of the third sum value, ap, aq, ar, A … represents a second parameter, ap represents a fourth parameter, aq, ar, a … represents a third parameter, (ap+aq), (ap+ar), (ap+a …) represents a fourth sum value, (ap+aq), (ap+ar), (ap+a …) represents a third product, dx represents target disk data corresponding to the target first parameter, and the fourth product may be
By determining the target verification data in the mode, the hardware implementation complexity can be reduced, and the efficiency of verifying the disk array is improved.
In one exemplary embodiment, verifying the disk array based on the target disk data and the target parity data includes: performing Galois field operation on the target disk data and the target verification data to obtain an operation result; and verifying the disk array based on the operation result. In this embodiment, in order to reduce the complexity of hardware implementation and consider that the numerical range of natural number operation is not controllable, a galois field operation, such as a 0X11D structure, is introduced. And the disk array is verified by the operation result obtained by performing Galois field operation on the target disk data and the target verification data, so that the complexity of hardware implementation is reduced.
In an exemplary embodiment, the Galois field operation is performed on the target disk data and the target verification data, and the obtained operation result includes at least one of the following: performing exclusive OR operation on the target disk data and the target check data to obtain an operation result; determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk, determining a fifth product of each first parameter and the target disk data corresponding to the first parameter, determining a sixth product of each second parameter and the target check data corresponding to the second parameter, and performing exclusive-or operation on the fifth product and the sixth product to obtain an operation result. In this embodiment, verifying the disk array according to the target disk data and the target verification data may include performing an exclusive-or operation on the target disk data and the target verification data to obtain an operation result, where the operation result is 0, and if the operation result is not 0, the verification is considered to be successful, and if the operation result is not 0, the verification is considered to be failed.
In the above embodiment, when the third product of each target disk check data and the corresponding first parameter can be determined, the fourth product of each target check data and the corresponding second parameter is determined, the third product and the fourth product are subjected to exclusive-or operation, and when the operation result is 0, the check is considered to be successful, and when the operation result is not 0, the check is considered to be failed.
In the above embodiment, verification can be performed by the above two methods. The exclusive or operation is carried out on the target disk data and the target check data to obtain an operation result, and the exclusive or operation is carried out on the third product and the fourth product to obtain the operation result. And when the two operation results are 0, the verification is considered to be successful, otherwise, the verification is failed.
It should be noted that, the operation result of 0 is merely an exemplary illustration of verification success, which is not limited by the present invention.
In the above embodiment, the operation result is obtained through the exclusive-or operation, and the verification is performed according to the operation result, so that the verification accuracy can be improved.
In the above embodiment, the commercialization of the RAID technology expands the storage capacity of the disk and enhances the reliability of the data, but the complexity of the encoding/decoding process caused by the expansion of the disk also increases the difficulty of checking the correctness of the RAID algorithm due to the calculation results of tens of megasteps and hundreds of megasteps. Therefore, in the verification process, the encoding/decoding calculation results in different scenes are required to be checked to ensure that the robustness of the algorithm is fully checked, and the method has important practical significance.
Based on the practical significance, the CalResultAChecker component of the RAID calculation result can be realized based on the C language, for the disk arrays of the RAID6 with the same grade and different data disks (m) and check disks (n) arranged and combined, the calculation results under different coding/decoding scenes are subjected to correctness checking, and the CalResultAChecker component is connected with a UVM verification environment through a DPI-C interface, so that the quick checking of the correctness of the calculation results in the RAID group verification process can be realized. The implementation flow comprises the following steps:
(1) The CalResultAChecker component introduction includes algorithms involved in the RS-based RAID6 encoding/decoding process and principles of CalResultAChecker implementation:
the RAID6 (4+2) full stripe write encoding calculation procedure is exemplified: the disk array is schematically shown in FIG. 3, where D is shown in FIG. 3 0 、D 1 、D 2 、D 3 Is a data disk, and all the data disks need to be updated at the same time (i.e. D' 0 、D' 1 、D' 2 、D' 3 ),D 4 、D 5 Is a check disk (which respectively correspond toA tray(s),Disk), solving for new parity disk data D 4 (P)、D 5 (Q)。
Assuming that the parameters corresponding to all discs are respectivelyWhich satisfies the following formula (1) for RAID6 (4+2):
(1)
for the above equation, D is obtained by derivation (omitting the derivation process) 4 (P)、D 5 (Q) the following:
the above derivation is exemplified by 4 data disks and 2 parity disks in RAID 6. Wherein D is 4 (P)、D 5 (Q) is the result of calculation to be solved in the encoding process, and in the above formula,/>All are target algorithm parameters which need to be actually solved in the coding process. In order to reduce the complexity of hardware implementation and consider that the numerical range of natural number operation is not controllable, a Galois field (0X 11D structure) is introduced, i.e. operation is performed in a finite field. For result D generated in RAID6 encoding process 4 (P)、D 5 The correctness checking of (Q) needs to satisfy the formula (1), i.e. the result is substituted into the formula (1), and the exclusive or result is 0, i.e. the calculation result is correct. Other data discs and check discs may be combined in the actual application scene, and the combination is obtained through popularization:
. Where Dx represents an arbitrary target disk.
In one exemplary embodiment, verifying the disk array based on the operation result includes: under the condition that the operation result is a target value, determining that the check result of the disk array is successful; and under the condition that the operation result is other values except the target value, determining that the check result of the disk array is check failure. In this embodiment, the target value may be 0, and when the operation result is 0, the verification may be considered successful, and when the operation result is not 0, the verification may be considered failed.
In one exemplary embodiment, after determining the configuration information of the disk array, the method further comprises: if the configuration information indicates that the target disk comprises a damaged disk, determining good disk data of a good disk included in the target disk; determining the check disk as a disk included in the good disk; determining the historical verification data of the verification disk as the data included in the good disk data; restoring the repair disk data of the damaged disk based on the good disk data. In this embodiment, when a damaged disk occurs during the verification process, the damaged disk may be recovered according to the intact disk data of the intact disk and the historical verification data in the verification disk, so as to obtain the repair disk data. And the damaged disk is recovered by utilizing the intact disk data and the historical verification data in the verification disk, so that the safety of the disk array is improved.
In one exemplary embodiment, recovering the repair disk data of the damaged disk based on the good disk data includes: determining a fifth parameter corresponding to a good magnetic disk and a sixth parameter corresponding to the damaged magnetic disk under the condition that the number of the damaged magnetic disks is two; the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk: determining the sum value of each fifth parameter and a seventh parameter except the parameter corresponding to the target damaged disk, which is included in the sixth parameter, so as to obtain a plurality of third sum values; determining a seventh product of a plurality of said third sum values; determining the sum value of the sixth parameter corresponding to each damaged magnetic disk to obtain a fourth sum value; determining a third ratio of each of the third sum values to the fourth sum value; determining an eighth product of each of the third ratios and the good disk data corresponding to the fifth parameter; determining a fifth sum value of the eighth product corresponding to each fifth parameter; and determining the fifth sum value as the repair disk data. In this embodiment, when there are m target disks and n check disks in the disk array, when n is 2, for example, the disk array is RAID6, the encoding/decoding algorithm involved in RAID6 is consistent, the data of the bad disk in the decoding process can be obtained by referring to the derivation of the encoding process, and if the hard disk at the Di and Dj positions fails, taking RAID6 as an example, the following is given:
And Dk represents any intact disk, and Di and Dj are the results required to be calculated in the decoding process, namely the repair disk data corresponding to the damaged disk. Ak represents a fifth parameter, and Ai and Aj represent sixth parameters. Ak+aj represents the third sum value. Ai+aj represents the fourth sum value.
In the above-described embodiments of the present invention,representing a third ratio>Representing an eighth product. From the above deduction, for any failed 2-block disk in the RAID6 decoding process, the data information of the bad disk can be recovered through other hard disks.
In an exemplary embodiment, in a case that the number of damaged disks is greater than 2, determining a fifth parameter corresponding to a good disk and a sixth parameter corresponding to the damaged disk; the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk: the following operations are executed for any target fifth parameter included in the fifth parameters, and an eleventh product corresponding to each target fifth parameter is obtained: determining the sum value of each eighth parameter except for a seventh parameter corresponding to the target damaged disk, which is included in the fifth parameter, to obtain a plurality of fifth sum values, determining the ninth product of the fifth sum values, determining the sum value of the seventh parameter and each eighth parameter to obtain a plurality of sixth sum values, determining the tenth product of the sixth sum values, determining the fourth ratio of the ninth product to the tenth product, and determining the eleventh product of the fourth ratio to the good disk data corresponding to the fifth parameter; and determining the sum of the eleventh products corresponding to each target fifth parameter as the repair disk data. In this embodiment, when there are m target disks and n check disks in the disk array, when n is a number greater than 2, i.e. the number of damaged disks is greater than 2, the repair disk data may be expressed as
Where Di represents repair verification data of any one target damaged disk,representing a fifth sum value, ">A ninth product representing a fifth sum, ai, aj, al, A … representing an eighth parameter, ai representing a seventh parameter, +.>Represents the sixth sum value, ++>Represents the tenth product, D x Target disk data corresponding to the target fifth parameter, the eleventh product may be +.>
In the above embodiment, with the increase of the numbers of the data disks (m) and the check disks (n), the data amount of the calculation result is very large, so that the accuracy of the check is ensured, no matter any check disk data is solved for the RAID encoding process or any data disk data is solved for the RAID decoding process.
In one exemplary embodiment, determining a target parity opportunity for the disk array based on the configuration information includes: determining a target working mode of the disk array included in the configuration information; determining the corresponding relation between the working mode and the verification opportunity; and determining the target verification opportunity corresponding to the target working model based on the corresponding relation. In this embodiment, different working modes may correspond to different verification opportunities. Of course, the target check opportunity may also be stored directly in the configuration information. The target verification opportunity may include starting verification when contents of all target disks in the disk array are updated. The target verification opportunity may further include starting verification in the event that the contents of a portion of the target disks in the disk array are updated. For example, when the operation mode is the full mode, the verification is started when the target verification timing is that the contents of all the target disks are updated.
In the above embodiment, the target verification timing can be determined through the target working mode stored in the configuration information, when the configuration information is obtained, the verification can be confirmed when to start, and the verification can be automatically performed when the verification timing is reached without receiving other verification starting instructions, so that the verification efficiency is improved.
In one exemplary embodiment, determining configuration information for a disk array includes: the configuration information of the disk array is sent to an automatic comparison component through a target interface; the configuration information is determined based on the automated comparison component. In this embodiment, the automated alignment component may be a CalResultAChecker component and the target interface may be a DPI-C interface. The CalResultAChecker component can acquire original data information transmitted by the UVM platform, namely, encoding/decoding calculation results of configuration information and DUT data, namely, target disk data through a DPI-C interface, and the results generated in the encoding/decoding process obtained by calculation in a target scene are checked and the result Flag information is sent to a verification environment through internal processing. DPI-C interface function: DPI_CIntf_RaidResult_check (), which is mainly used for transmitting relevant configuration information and encoding/decoding calculation results in RAID groups from a UVM verification environment to a CalResultAChecker component, and transmitting Flag information obtained after automatic comparison back to the UVM verification environment.
In the above embodiment, after the specified RAID task is obtained, processing is performed according to different RAID types, parameter information corresponding to the current task is obtained respectively, and encoding/decoding operations are performed through a galois field. If the coding/decoding calculation result is to be compared, the current task information is required to be obtained as described in the code, the information is substituted into the formula (1) and then the Galois field operation is carried out, and if the exclusive or result is 0, the RAID coding/decoding calculation process accords with the expectation.
In the embodiment, the UVM verification environment and the CalResultAChecker component are organically integrated through the DPI-C interface, and RAID encoding/decoding calculation results can be compared in real time in the verification process, so that access time and memory resource cost for generating/reading data files are saved.
In one exemplary embodiment, after verifying the disk array based on the target disk data and the target parity data, the method further comprises: generating a verification identifier based on a verification result of verifying the disk array by an automated comparison component; and transmitting the verification identifier to a verification environment through a target interface. In this embodiment, the DPI-C interface function: DPI_CIntf_RaidResult_check (), which is mainly used for transmitting relevant configuration information and encoding/decoding calculation results in RAID groups from a UVM verification environment to a CalResultAChecker component, and transmitting Flag information obtained after automatic comparison back to the UVM verification environment. Examples are as follows:
void DPI_CIntf_RaidResult_check (const Raid_CInt0_t. Times. Cfg_Info, openArrayDataStruct wTestdata, svResult_info Flag). The Cfg_info is a pointer of a configuration information structure raid_CInfo_t type, and contains configuration information (including RAID level, number of data disks, number of check disks, working mode, bad disk position under decoding scene, and check flag bit) related to RAID group; the shape parameter wTestdata is a variable of an open array svOpenArrayHandle type and is used for temporarily storing encoding/decoding calculation results; the shape parameters Cfg_info and wTestdata are sent to the CalResultAChecker component through DPIC, the Flag information is an identifier after the CalResultAChecker component processes the data, and the CalResultAChecker component fills target parameter information after internal operation processing and sends the target parameter information back to the UVM verification environment.
The verification environment structure can be seen in fig. 4, and the CalResultAChecker component is integrated with the UVM verification environment through DPI-C. As shown in fig. 4, the verification process is as follows:
(1) generating configuration information required by RAID algorithm through reasonable constraint in verification environment comprises: RAID level, data disk number, check disk number, working mode, bad disk position under decoding scene, checking flag bit, etc.
(2) Random excitation is generated and injected into the DUT of the design to be tested, and the verification platform is driven to start to work normally.
(3) The inspector captures result data generated in the encoding/decoding process, namely target disk data, from an output port of the DUT in real time, caches the result data, packages the result data and configuration data information of a current RAID task, transmits the result data and the configuration data information of the current RAID task to a CalResultAChecker component through a DPI-C, obtains the configuration information of the current RAID task and the result data to be checked (corresponding to the target disk data), carries out exclusive OR operation processing on the result data to be checked according to different RAID configuration information according to an algorithm, and if the exclusive OR operation result is 0, the checking is passed; otherwise, the verification fails;
(4) coverage collectors may dynamically collect coverage information during the ongoing verification process. If the verification case passes the simulation, the coverage rate information is recorded and counted. And (3) the verification personnel analyzes the collected coverage rate through multiple iterative regression cases, eliminates coverage points which do not need to be concerned, changes the existing case constraint or creates a directional verification case aiming at the uncovered verification points, and improves the coverage rate to a target value through continuous iterative regression test.
In the foregoing embodiment, the CalResultAChecker component implemented based on the C language may implement automatic comparison of calculation results in different encoding/decoding scenarios in RAID verification, and implement transmission of RAID configuration information, data comparison results, and the like between the CalResultAChecker component and the UVM verification environment through the DPI-C interface. And the completeness of verification is improved through collection and analysis of coverage rate. The CalResultAChecker component realized based on the C language can realize automatic comparison of calculation results in different encoding/decoding scenes in RAID verification, and design complexity of a UVM verification platform in the RAID verification process is simplified. The CalResultAChecker component is integrated with the UVM verification environment through the DPI-C, and RAID encoding/decoding calculation results can be compared in real time in the verification process, and meanwhile, the access time and memory resource cost for generating/reading data files are saved.
In the foregoing embodiment, the method for verifying the disk array is applicable to different RAID levels, and the encoding/decoding scenarios of different combinations of the data disk and the verification disk simplify the design of the UVM verification platform, and the calresultachcker developed based on the C language has high flexibility, and its application range includes, but is not limited to, RAID function verification based on RS algorithm expansion.
Based on the verification environment built by UVM, the random plus directional excitation structure can cover 99.9% of scenes in encoding/decoding involved in RAID verification, the CalResultAChecker component can realize real-time comparison of results in the RAID verification process, the condition that codes are not covered can be timely found by verification personnel through analyzing coverage rate, the verification personnel can guarantee completeness of verification through modifying constraint of excitation or supplementing verification use cases for the uncovered codes through continuous iterative regression.
In the foregoing embodiment, based on the C language, the data structure of the RAID group is considered and the specificity of the RAID algorithm is combined, so that the real-time comparison of the encoding/decoding calculation result in the RAID verification process is quickly realized under the condition that the verification platform is not required to provide RM, thereby accelerating the verification progress of the RAID algorithm module. Taking RAID6 as an example, the application range of the CalResultAChecker component is not limited to RAID6 coding/decoding function verification, and all RAID function verification test processes based on RS algorithm expansion can be expanded or extended to use the method.
The invention realizes the real-time automatic comparison of the calculation results in different encoding/decoding scenes in RAID verification. The follow-up plan of the invention further promotes the verification method of the invention, and has the implementation benefit that the design complexity of the UVM verification platform can be effectively simplified, so that the verification platform is easy to maintain and manage and convenient to use.
In the above embodiment, UVM represents a general verification methodology, DUT device under test, SVSystemVerilog is a hardware design and verification language, DPI-C direct programming interface C (direct interactive programming mode between SV and C), RS a channel coding for forward error correction, RM reference model, RAID independent redundant disk array, RAID6 independent redundant disk array with 2 check disks.
From the description of the above embodiments, it will be clear to a person skilled in the art that the method according to the above embodiments may be implemented by means of software plus the necessary general hardware platform, but of course also by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) comprising instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the method according to the embodiments of the present application.
The embodiment also provides a device for verifying a disk array, which is used for implementing the foregoing embodiments and preferred embodiments, and is not described in detail. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
FIG. 5 is a block diagram of a disk array verification apparatus according to an embodiment of the present application, as shown in FIG. 5, the apparatus includes:
a first determining module 50, configured to determine configuration information of a disk array;
a second determining module 52, configured to determine a target verification opportunity of the disk array based on the configuration information;
a third determining module 54, configured to determine target disk data of each target disk included in the disk array when the target verification opportunity is reached;
a fourth determining module 56, configured to determine target parity data of each parity disk included in the disk array based on the target disk data;
a verification module 58 is configured to verify the disk array based on the target disk data and the target verification data.
In one exemplary embodiment, fourth determination module 56 may implement determining target parity data for each parity disk included in the disk array based on the target disk data by: determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk; and processing the target disk data based on the first parameter and the second parameter to obtain the target verification data of each verification disk.
In an exemplary embodiment, the fourth determining module 56 may implement processing the target disk data based on the first parameter and the second parameter to obtain the target parity data of each of the parity disks by: under the condition that two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disk, and the target check data corresponding to the target check disk are obtained: determining the sum value of each first parameter and a third parameter except the parameter corresponding to the target check disk, which is included in the second parameter, so as to obtain a plurality of first sum values; determining a second sum value of the second parameter corresponding to each check disk; determining a first ratio of each of the first sum values to the second sum value; determining products of the target disk data corresponding to the first parameters and each first ratio to obtain a plurality of first products; and determining a sum value of a plurality of first products as the target check data.
In an exemplary embodiment, the fourth determining module 56 may implement processing the target disk data based on the first parameter and the second parameter to obtain the target parity data of each of the parity disks by: under the condition that more than two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disks, and the target check data corresponding to the target check disk are obtained: the following operations are executed for any target first parameter included in the first parameters, and a fourth product corresponding to each target first parameter is obtained: determining the sum value of each third parameter except the parameters corresponding to the target check disk, which are included in the first parameter and the second parameter, to obtain a plurality of third sum values, determining a second product of the third sum values, determining a fourth parameter corresponding to the target check disk, which is included in the second parameter, determining the sum value of the fourth parameter and each third parameter, to obtain a plurality of fourth sum values, determining a third product of the fourth sum values, determining a second ratio of the second product to the third product, and determining the product of the second ratio and target disk data corresponding to the target first parameter as the fourth product; and determining the sum value of the fourth product corresponding to each target first parameter as the target check data.
In one exemplary embodiment, the verification module 58 may implement verifying the disk array based on the target disk data and the target verification data by: performing Galois field operation on the target disk data and the target verification data to obtain an operation result; and verifying the disk array based on the operation result.
In an exemplary embodiment, the verification module 58 may implement a galois field operation on the target disk data and the target verification data to obtain an operation result as follows: performing exclusive OR operation on the target disk data and the target check data to obtain an operation result; determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk, determining a fifth product of each first parameter and the target disk data corresponding to the first parameter, determining a sixth product of each second parameter and the target check data corresponding to the second parameter, and performing exclusive-or operation on the fifth product and the sixth product to obtain an operation result.
In one exemplary embodiment, the verification module 58 may implement verification of the disk array based on the operation results by: under the condition that the operation result is a target value, determining that the check result of the disk array is successful; and under the condition that the operation result is other values except the target value, determining that the check result of the disk array is check failure.
In one exemplary embodiment, the apparatus may be configured to determine, after determining configuration information of a disk array, good disk data of good disks included in the target disk in a case where the configuration information indicates that a damaged disk is included in the target disk; determining the check disk as a disk included in the good disk; determining the historical verification data of the verification disk as the data included in the good disk data; restoring the repair disk data of the damaged disk based on the good disk data.
In one exemplary embodiment, the apparatus may implement restoring the repair disk data of the damaged disk based on the good disk data by: determining a fifth parameter corresponding to a good magnetic disk and a sixth parameter corresponding to the damaged magnetic disk under the condition that the number of the damaged magnetic disks is two; the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk: determining the sum value of each fifth parameter and a seventh parameter except the parameter corresponding to the target damaged disk, which is included in the sixth parameter, so as to obtain a plurality of third sum values; determining a seventh product of a plurality of said third sum values; determining the sum value of the sixth parameter corresponding to each damaged magnetic disk to obtain a fourth sum value; determining a third ratio of each of the third sum values to the fourth sum value; determining an eighth product of each of the third ratios and the good disk data corresponding to the fifth parameter; determining a fifth sum value of the eighth product corresponding to each fifth parameter; and determining the fifth sum value as the repair disk data.
In one exemplary embodiment, the apparatus may implement restoring the repair disk data of the damaged disk based on the good disk data by: determining a fifth parameter corresponding to a good magnetic disk and a sixth parameter corresponding to the damaged magnetic disk under the condition that the number of the damaged magnetic disks is more than 2; the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk: the following operations are executed for any target fifth parameter included in the fifth parameters, and an eleventh product corresponding to each target fifth parameter is obtained: determining the sum value of each eighth parameter except for a seventh parameter corresponding to the target damaged disk, which is included in the fifth parameter, to obtain a plurality of fifth sum values, determining the ninth product of the fifth sum values, determining the sum value of the seventh parameter and each eighth parameter to obtain a plurality of sixth sum values, determining the tenth product of the sixth sum values, determining the fourth ratio of the ninth product to the tenth product, and determining the eleventh product of the fourth ratio to the good disk data corresponding to the fifth parameter; and determining the sum of the eleventh products corresponding to each target fifth parameter as the repair disk data.
In one exemplary embodiment, the second determining module 52 may determine the target parity opportunity for the disk array based on the configuration information by: determining a target working mode of the disk array included in the configuration information; determining the corresponding relation between the working mode and the verification opportunity; and determining the target verification opportunity corresponding to the target working model based on the corresponding relation.
In one exemplary embodiment, the first determining module 50 may determine the configuration information of the disk array by: the configuration information of the disk array is sent to an automatic comparison component through a target interface; the configuration information is determined based on the automated comparison component.
In an exemplary embodiment, the above apparatus may be further configured to generate, by an automated comparison unit, a verification identifier based on a verification result of verifying the disk array after verifying the disk array based on the target disk data and the target verification data; and transmitting the verification identifier to a verification environment through a target interface.
It should be noted that each of the above modules may be implemented by software or hardware, and for the latter, it may be implemented by, but not limited to: the modules are all located in the same processor; alternatively, the above modules may be located in different processors in any combination.
Embodiments of the present application also provide a computer readable storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
In one exemplary embodiment, the computer readable storage medium may include, but is not limited to: a usb disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing a computer program.
An embodiment of the application also provides an electronic device comprising a memory having stored therein a computer program and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
In an exemplary embodiment, the electronic device may further include a transmission device connected to the processor, and an input/output device connected to the processor.
Specific examples in this embodiment may refer to the examples described in the foregoing embodiments and the exemplary implementation, and this embodiment is not described herein.
It will be appreciated by those skilled in the art that the modules or steps of the application described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may be implemented in program code executable by computing devices, so that they may be stored in a storage device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps of them may be fabricated into a single integrated circuit module. Thus, the present application is not limited to any specific combination of hardware and software.
The above description is only of the preferred embodiments of the present application and is not intended to limit the present application, but various modifications and variations can be made to the present application by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the principle of the present application should be included in the protection scope of the present application.

Claims (16)

1. A method for verifying a disk array, comprising:
Determining configuration information of a disk array;
determining target verification time of the disk array based on the configuration information;
determining target disk data of each target disk included in the disk array under the condition that the target verification opportunity is reached;
determining target parity data for each parity disk included in the disk array based on the target disk data;
and verifying the disk array based on the target disk data and the target verification data.
2. The method of claim 1, wherein determining target parity data for each parity disk included in the disk array based on the target disk data comprises:
determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk;
and processing the target disk data based on the first parameter and the second parameter to obtain the target verification data of each verification disk.
3. The method of claim 2, wherein processing the target disk data based on the first parameter and the second parameter to obtain the target parity data for each of the parity disks comprises:
Under the condition that two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disk, and the target check data corresponding to the target check disk are obtained:
determining the sum value of each first parameter and a third parameter except the parameter corresponding to the target check disk, which is included in the second parameter, so as to obtain a plurality of first sum values;
determining a second sum value of the second parameter corresponding to each check disk;
determining a first ratio of each of the first sum values to the second sum value;
determining products of the target disk data corresponding to the first parameters and each first ratio to obtain a plurality of first products;
and determining a sum value of a plurality of first products as the target check data.
4. The method of claim 2, wherein processing the target disk data based on the first parameter and the second parameter to obtain the target parity data for each of the parity disks comprises:
under the condition that more than two check disks are included in the disk array based on the configuration information, the following operations are executed for any one target check disk included in the check disks, and the target check data corresponding to the target check disk are obtained:
The following operations are executed for any target first parameter included in the first parameters, and a fourth product corresponding to each target first parameter is obtained: determining the sum value of each third parameter except the parameters corresponding to the target check disk, which are included in the first parameter and the second parameter, to obtain a plurality of third sum values, determining a second product of the third sum values, determining a fourth parameter corresponding to the target check disk, which is included in the second parameter, determining the sum value of the fourth parameter and each third parameter, to obtain a plurality of fourth sum values, determining a third product of the fourth sum values, determining a second ratio of the second product to the third product, and determining the product of the second ratio and target disk data corresponding to the target first parameter as the fourth product;
and determining the sum value of the fourth product corresponding to each target first parameter as the target check data.
5. The method of claim 1, wherein verifying the disk array based on the target disk data and the target parity data comprises:
performing Galois field operation on the target disk data and the target verification data to obtain an operation result;
And verifying the disk array based on the operation result.
6. The method of claim 5, wherein performing a galois field operation on the target disk data and the target parity data to obtain an operation result comprises:
performing exclusive OR operation on the target disk data and the target check data to obtain an operation result;
determining a first parameter corresponding to each target disk and a second parameter corresponding to each check disk, determining a fifth product of each first parameter and the target disk data corresponding to the first parameter, determining a sixth product of each second parameter and the target check data corresponding to the second parameter, and performing exclusive-or operation on the fifth product and the sixth product to obtain an operation result.
7. The method of claim 5, wherein verifying the disk array based on the operation result comprises:
under the condition that the operation result is a target value, determining that the check result of the disk array is successful;
and under the condition that the operation result is other values except the target value, determining that the check result of the disk array is check failure.
8. The method of claim 1, wherein after determining the configuration information for the disk array, the method further comprises:
if the configuration information indicates that the target disk comprises a damaged disk, determining good disk data of a good disk included in the target disk;
determining the check disk as a disk included in the good disk;
determining the historical verification data of the verification disk as the data included in the good disk data;
restoring the repair disk data of the damaged disk based on the good disk data.
9. The method of claim 8, wherein recovering the repair disk data for the damaged disk based on the good disk data comprises:
determining a fifth parameter corresponding to a good magnetic disk and a sixth parameter corresponding to the damaged magnetic disk under the condition that the number of the damaged magnetic disks is two;
the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk:
determining the sum value of each fifth parameter and a seventh parameter except the parameter corresponding to the target damaged disk, which is included in the sixth parameter, so as to obtain a plurality of third sum values;
Determining a seventh product of a plurality of said third sum values;
determining the sum value of the sixth parameter corresponding to each damaged magnetic disk to obtain a fourth sum value;
determining a third ratio of each of the third sum values to the fourth sum value;
determining an eighth product of each of the third ratios and the good disk data corresponding to the fifth parameter;
determining a fifth sum value of the eighth product corresponding to each fifth parameter;
and determining the fifth sum value as the repair disk data.
10. The method of claim 8, wherein recovering the repair disk data for the damaged disk based on the good disk data comprises:
determining a fifth parameter corresponding to a good magnetic disk and a sixth parameter corresponding to the damaged magnetic disk under the condition that the number of the damaged magnetic disks is more than 2;
the following operations are performed for any one of the target damaged disks included in the damaged disk to determine the repair disk data of the target damaged disk:
the following operations are executed for any target fifth parameter included in the fifth parameters, and an eleventh product corresponding to each target fifth parameter is obtained: determining the sum value of each eighth parameter except for a seventh parameter corresponding to the target damaged disk, which is included in the fifth parameter, to obtain a plurality of fifth sum values, determining the ninth product of the fifth sum values, determining the sum value of the seventh parameter and each eighth parameter to obtain a plurality of sixth sum values, determining the tenth product of the sixth sum values, determining the fourth ratio of the ninth product to the tenth product, and determining the eleventh product of the fourth ratio to the good disk data corresponding to the fifth parameter;
And determining the sum of the eleventh products corresponding to each target fifth parameter as the repair disk data.
11. The method of claim 1, wherein determining a target parity opportunity for the disk array based on the configuration information comprises:
determining a target working mode of the disk array included in the configuration information;
determining the corresponding relation between the working mode and the verification opportunity;
and determining the target verification opportunity corresponding to the target working model based on the corresponding relation.
12. The method of claim 1, wherein determining configuration information for a disk array comprises:
the configuration information of the disk array is sent to an automatic comparison component through a target interface;
the configuration information is determined based on the automated comparison component.
13. The method of claim 1, wherein after verifying the disk array based on the target disk data and the target parity data, the method further comprises:
generating a verification identifier based on a verification result of verifying the disk array by an automated comparison component;
and transmitting the verification identifier to a verification environment through a target interface.
14. A disk array verification apparatus, comprising:
the first determining module is used for determining configuration information of the disk array;
the second determining module is used for determining target verification time of the disk array based on the configuration information;
a third determining module, configured to determine target disk data of each target disk included in the disk array when the target verification opportunity is reached;
a fourth determining module, configured to determine target parity data of each parity disk included in the disk array based on the target disk data;
and the verification module is used for verifying the disk array based on the target disk data and the target verification data.
15. A computer readable storage medium, characterized in that a computer program is stored in the computer readable storage medium, wherein the computer program, when being executed by a processor, implements the steps of the method according to any of the claims 1 to 13.
16. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method of any one of claims 1 to 13 when the computer program is executed.
CN202311336476.8A 2023-10-16 2023-10-16 Disk array verification method and device, storage medium and electronic equipment Active CN117112288B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311336476.8A CN117112288B (en) 2023-10-16 2023-10-16 Disk array verification method and device, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311336476.8A CN117112288B (en) 2023-10-16 2023-10-16 Disk array verification method and device, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN117112288A true CN117112288A (en) 2023-11-24
CN117112288B CN117112288B (en) 2024-02-09

Family

ID=88813095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311336476.8A Active CN117112288B (en) 2023-10-16 2023-10-16 Disk array verification method and device, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN117112288B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117762529A (en) * 2023-12-26 2024-03-26 合芯科技有限公司 Method, device, equipment and medium for server batch disk array grouping

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1091363A (en) * 1996-09-17 1998-04-10 Hitachi Ltd Parity generation system and disk array controller using the system
US6571314B1 (en) * 1996-09-20 2003-05-27 Hitachi, Ltd. Method for changing raid-level in disk array subsystem
CN102609221A (en) * 2012-02-07 2012-07-25 无锡众志和达存储技术有限公司 Architecture and data processing method for hardware RAID 5/6 memory system
CN111124738A (en) * 2018-10-31 2020-05-08 伊姆西Ip控股有限责任公司 Data management method, device and computer program product for redundant array of independent disks
CN111274077A (en) * 2020-02-16 2020-06-12 苏州浪潮智能科技有限公司 Disk array reliability testing method, system, terminal and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1091363A (en) * 1996-09-17 1998-04-10 Hitachi Ltd Parity generation system and disk array controller using the system
US6571314B1 (en) * 1996-09-20 2003-05-27 Hitachi, Ltd. Method for changing raid-level in disk array subsystem
CN102609221A (en) * 2012-02-07 2012-07-25 无锡众志和达存储技术有限公司 Architecture and data processing method for hardware RAID 5/6 memory system
CN111124738A (en) * 2018-10-31 2020-05-08 伊姆西Ip控股有限责任公司 Data management method, device and computer program product for redundant array of independent disks
CN111274077A (en) * 2020-02-16 2020-06-12 苏州浪潮智能科技有限公司 Disk array reliability testing method, system, terminal and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117762529A (en) * 2023-12-26 2024-03-26 合芯科技有限公司 Method, device, equipment and medium for server batch disk array grouping

Also Published As

Publication number Publication date
CN117112288B (en) 2024-02-09

Similar Documents

Publication Publication Date Title
CN117112288B (en) Disk array verification method and device, storage medium and electronic equipment
CN112073269B (en) Block chain network testing method, device, server and storage medium
CN111258900A (en) Interface test script generation method, system, equipment and storage medium
CN112395177B (en) Interactive processing method, device, equipment and storage medium for business data
CN113297073B (en) Verification method, device and equipment of algorithm module in chip and readable storage medium
CN112380046B (en) Calculation result verification method, system, device, equipment and storage medium
CN109508295B (en) Block chain consensus algorithm testing method and device, calculating device and storage medium
CN104461641A (en) Data burning and writing method, system and equipment and target equipment
CN107632930A (en) A kind of method of testing, device, emulator and the computer-readable storage medium of electricity transaction system
CN109542781B (en) Block chain consensus algorithm testing method and device, calculating device and storage medium
CN110321292A (en) Chip detecting method, device, electronic equipment and computer readable storage medium
CN114185808A (en) Automatic testing method and device, electronic equipment and computer readable storage medium
CN112367680A (en) External communication test method and device based on intelligent electric meter and computer equipment
CN112100081A (en) Upgrade test method and device based on double-core intelligent electric meter and computer equipment
CN114301575B (en) Data processing method, system, equipment and medium
CN103425932B (en) Signature calibration method and terminal device
CN116930727B (en) Chip detection method based on circuit board
CN118131006A (en) ATPG test vector simplifying method and device, storage medium and electronic device
CN109669829A (en) A kind of diagnosis adjustment method, device and server based on BMC
CN112988591A (en) Charging logic verification method, device, equipment and storage medium
CN115001623B (en) Method and device for checking vehicle-mounted electronic map data
CN117573156B (en) Ultrasonic water meter upgrading method, system and device supporting infrared function
CN111144867B (en) Method and device for generating region code mapping relation
CN111597063A (en) Method for testing reliability of software upgrading file of electric energy meter
CN118819942A (en) Data verification method for cross-cloud backup

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant