A disk array performance evaluation method, system, terminal and medium
By analyzing the response time of each disk in the disk array, determining the processing speed level and obtaining weight information, the problem of inaccurate evaluation of disk array performance in the prior art is solved, and efficient and accurate performance evaluation and optimization are achieved.
Patent Information
- Application Number
- CN202411725153.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-28
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2044-11-28
AI Technical Summary
The prior art cannot accurately perform efficient and accurate performance analysis of disk arrays, resulting in a decrease in overall read and write speed.
By obtaining the response time of each disk in the disk array for processing IO operations, determining the processing speed level of each disk, and obtaining weight information based on the level, and finally evaluating the performance of the disk array based on the average response time and weight information.
Efficient evaluation of disk array performance is achieved, improved evaluation accuracy, and able to identify and optimize low-performance disks, thereby improving overall performance.
Smart Images

Figure CN119201632B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of disk performance evaluation, and in particular to a disk array performance evaluation method, system, terminal and medium. Background Art
[0002] In existing storage systems, disk array performance is often impacted by a single slow disk, resulting in a decrease in overall read and write speeds. While all disks may appear to be functioning normally, some disks may experience inherent performance issues or aging, leading to extended response times and slow processing speeds, ultimately hindering the performance of the entire disk array. However, existing technologies have been unable to effectively and accurately analyze the performance of disk arrays.
[0003] Therefore, the existing technology still needs to be improved and enhanced. Summary of the Invention
[0004] The technical problem to be solved by the present invention is to provide a disk array performance evaluation method, system, terminal and medium in response to the above-mentioned defects of the prior art, aiming to solve the problem that the prior art cannot accurately and effectively analyze the performance of the disk array.
[0005] In order to solve the above technical problems, the technical solutions adopted by the present invention are as follows:
[0006] In a first aspect, the present invention provides a method for evaluating the performance of a disk array, wherein the method comprises:
[0007] Obtaining the response time of each disk in the disk array for processing an IO operation, and determining a processing speed level corresponding to each disk based on the response time, wherein the higher the processing speed level, the shorter the response time;
[0008] Obtaining weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information;
[0009] The performance information of the disk array is evaluated based on the average response time of each disk and the weight information.
[0010] In one implementation, obtaining the response time of each disk in the disk array for processing an IO operation and determining the processing speed level corresponding to each disk based on the response time includes:
[0011] Collect the number of IO operations processed by each disk within a preset time period, as well as the response time of each IO operation;
[0012] Determine the average response time of each disk based on the number of IO operations processed by each disk and the response time of each IO operation;
[0013] Based on the average response time, a processing speed level corresponding to each disk is determined.
[0014] In one implementation, determining the processing speed level corresponding to each disk based on the average response time includes:
[0015] Obtaining a disk type corresponding to each secondary disk in the disk array, and obtaining a grading rule corresponding to the disk type, wherein the grading rule reflects a corresponding relationship between a processing speed grade and an average response time;
[0016] The average response time is matched with the grade classification rule to determine the processing speed grade corresponding to each disk.
[0017] In one implementation, obtaining the response time of each disk in the disk array for processing an IO operation and determining the processing speed level corresponding to each disk based on the response time includes:
[0018] Collect the number of IO operations processed by each disk within a preset time period, as well as the response time of each IO operation;
[0019] Obtain a preset first duration threshold, and compare all response durations corresponding to each disk with the first duration threshold;
[0020] For each disk, determine the proportion of all response times that are greater than the first time threshold;
[0021] Based on the proportion information, a processing speed level corresponding to each disk is determined.
[0022] In one implementation, evaluating the performance information of the disk array based on the average response time of each disk and the weight information includes:
[0023] Calculating the overall response time of the disk array based on the average response time of each disk and the weight information;
[0024] Evaluate the performance of the disk array based on the overall response time.
[0025] In one implementation, calculating the overall response time of the disk array based on the average response time of each disk and the weight information includes:
[0026] For each disk, calculate the product of the response time and the corresponding weight information to obtain the first value of each disk;
[0027] The first values of all disks are added together to obtain a second value of the disk array, and the second value is used as the overall response time of the disk array.
[0028] In one implementation, evaluating the performance information of the disk array based on the overall response time includes:
[0029] Obtaining a preset second duration threshold, and determining a time difference based on the overall response duration and the preset second duration threshold;
[0030] Based on the time difference, a performance interval corresponding to the time difference is determined, and response speed information reflected by the performance interval is used as performance information of the disk array.
[0031] In a second aspect, an embodiment of the present invention further provides a disk array performance evaluation system, wherein the system includes:
[0032] a speed grade determination module, configured to obtain a response time for each disk in the disk array to process an IO operation, and determine a processing speed grade corresponding to each disk based on the response time, wherein the higher the processing speed grade, the shorter the response time;
[0033] A weight information acquisition module is used to obtain weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information;
[0034] The performance information evaluation module is used to evaluate the performance information of the disk array based on the average response time of each disk and the weight information.
[0035] In a third aspect, an embodiment of the present invention further provides a terminal, wherein the terminal includes a memory, a processor, and a performance evaluation program for a disk array stored in the memory and runnable on the processor. When the processor executes the performance evaluation program for the disk array, the steps of the disk array performance evaluation method of any one of the above-mentioned schemes are implemented.
[0036] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein a performance evaluation program for a disk array is stored on the computer-readable storage medium. When the performance evaluation program for the disk array is executed by a processor, the steps of the disk array performance evaluation method described in any one of the above-mentioned schemes are implemented.
[0037] Beneficial effects: Compared with the prior art, the present invention provides a performance evaluation method for a disk array. The present invention first obtains the response time of each disk in the disk array for processing IO operations, and based on the response time, determines the processing speed level corresponding to each disk, wherein the higher the processing speed level, the shorter the response time. Then, the weight information corresponding to the processing speed level of each disk is obtained, wherein the higher the processing speed level, the smaller the weight information. Finally, based on the average response time of each disk and the weight information, the performance information of the disk array is evaluated. The present invention can perform an overall evaluation of the performance of the disk array by analyzing the response time of a single disk for processing IO operations, which is conducive to achieving efficient performance evaluation, and by analyzing each disk, the accuracy of the performance evaluation is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 This is a flow chart of a preferred embodiment of a disk array performance evaluation method provided by an embodiment of the present invention.
[0039] Figure 2 A schematic diagram of the architecture of a disk array performance evaluation system provided by an embodiment of the present invention.
[0040] Figure 3 This is a functional block diagram of a terminal provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0041] In order to make the purpose, technical solution and effect of the present invention clearer and more specific, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0042] The flowcharts shown in the accompanying drawings are for illustrative purposes only and do not necessarily include all contents, operations, or steps, nor must they be executed in the order described. For example, some operations or steps may be decomposed, combined, or partially merged, so the actual execution order may vary depending on the actual situation.
[0043] It should be understood that the terms used in this specification are only for the purpose of describing particular embodiments and are not intended to limit the present invention. As used in the specification and appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly indicates otherwise.
[0044] It should be understood that, to facilitate a clear description of the technical solutions of the embodiments of the present invention, in the embodiments of the present invention, terms such as "first" and "second" are used to distinguish between identical or similar items with substantially the same functions and effects. For example, the first control information and the second control information are merely used to distinguish different control information and do not limit their order.
[0045] Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.
[0046] It should be further understood that the term "and / or" used in the present description and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0047] In order to solve the problems of the prior art, the present embodiment provides a performance evaluation method for a disk array, which can evaluate the performance of the disk array as a whole by analyzing the response time of a single disk processing IO operations, which is conducive to achieving efficient performance evaluation, and by analyzing each disk, the accuracy of the performance evaluation is improved. In specific application, the present embodiment first obtains the response time of each disk in the disk array processing IO operations, and based on the response time, determines the processing speed level corresponding to each disk, wherein the higher the processing speed level, the shorter the response time, and then obtains the weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information. Finally, based on the average response time of each disk and the weight information, the performance information of the disk array is evaluated.
[0048] The performance evaluation method of the disk array of this embodiment can be applied to a terminal, which can be a computer, mobile phone, smart TV or other intelligent product terminal. Figure 1 As shown in , the performance evaluation method of the disk array of this embodiment includes the following steps:
[0049] Step S100: Obtain the response time of each disk in the disk array for processing IO operations, and determine the processing speed level corresponding to each disk based on the response time, wherein the higher the processing speed level, the shorter the response time.
[0050] In this embodiment, the disk array includes several disks, and the number of disks is set according to actual needs. Each disk can be of the same type or different types, for example, disk A is a mechanical hard drive and disk B is an SSD. To evaluate the overall performance of the disk array, this embodiment analyzes each disk in the disk array, analyzing the response time for each disk to process IO operations, and then determining the corresponding processing speed level for each disk. The processing speed level corresponds to the length of the response time for processing IO operations. The higher the processing speed level, the shorter the response time.
[0051] In one implementation, this embodiment includes the following steps when analyzing the processing speed level corresponding to each disk:
[0052] Step S101: Collect the number of IO operations processed by each disk within a preset time period, and the response time of each IO operation;
[0053] Step S102: Determine the average response time of each disk based on the number of times each disk processes IO operations and the response time of each processing of the IO operation;
[0054] Step S103: Determine the processing speed level corresponding to each disk based on the average response time.
[0055] Specifically, this embodiment first collects the number of times each disk processes IO operations within a preset time period, as well as the response time for each processing of the IO operation, for each disk, and records the response time for each processing of the IO operation. Next, the number of times each disk processes IO operations and the response time for each processing of the IO operation are used to calculate the total response time of each disk within the preset time period, and then the average response time of each disk is determined. The average response time can reflect the feedback sensitivity of each disk to IO operations. The shorter the average response time, the more sensitive the disk is to the feedback of IO operations, that is, the faster the disk processes IO operations. Based on this, this embodiment can determine the processing speed level corresponding to each disk according to the determined average response time of each disk.
[0056] In specific applications, this embodiment can pre-set a grading rule, which is set based on the disk type. Therefore, this embodiment first obtains the disk type corresponding to each disk in the disk array and obtains the grading rule corresponding to the disk type. The grading rule reflects the corresponding relationship between processing speed level and average response time. For example, the grading rule for a certain type of disk is: if the average response time is 5-10 seconds, the corresponding processing speed level is level 3, indicating a very fast processing speed for I / O operations; if the average response time is 10-15 seconds, the corresponding processing speed level is level 2, indicating a normal processing speed for I / O operations (i.e., meeting an average level or a preset standard level); and if the average response time is 15-20 seconds, the corresponding processing speed level is level 1, indicating a very slow processing speed for I / O operations. Next, this embodiment matches the average response time of each disk with the grading rule corresponding to that disk, thereby determining the processing speed level corresponding to each disk. By determining the processing speed level of each disk, this embodiment facilitates accurate analysis of the overall performance of the entire disk array in subsequent steps.
[0057] In another implementation, after obtaining the number of IO operations processed by each disk and the response time for each such IO operation, this embodiment can also obtain a preset first duration threshold and compare all response times corresponding to each disk with the first duration threshold. Then, for each disk, the percentage of all response times exceeding the first duration threshold is determined. This percentage reflects the ratio of the number of response times for each disk exceeding the first duration threshold to the total number of response times. This embodiment sets the first duration threshold to measure the response time of each disk, which facilitates analyzing whether the number of response times exceeding the first duration threshold or the number of response times less than the first duration threshold is higher for each disk. Furthermore, based on this percentage information, this embodiment can determine the processing speed grade corresponding to each disk. Specifically, this embodiment can also pre-set grade mapping information, which can also be set based on the disk type. This embodiment first obtains the disk type corresponding to each disk in the disk array and obtains grade mapping information corresponding to the disk type. This grade mapping information reflects the correspondence between the processing speed grade and the percentage information. For example, the level mapping information for a certain type of disk is as follows: if the proportion information is greater than 70% (i.e., the ratio of the number of times the response time in the disk exceeds the first time threshold to the total number is greater than 70%), then the corresponding processing speed level is level three, i.e., the processing speed for IO operations is very fast; if the proportion information is 50-70% (i.e., the ratio of the number of times the response time in the disk exceeds the first time threshold to the total number is 50-70%), then the corresponding processing speed level is level two, i.e., the processing speed for IO operations is normal (i.e., meets the ordinary level or the preset standard level); if the proportion information is less than 50% (i.e., the ratio of the number of times the response time in the disk exceeds the first time threshold to the total number is less than 50%), then the corresponding processing speed level is level one, i.e., the processing speed for IO operations is very slow. Based on the above-mentioned level mapping information, this embodiment matches the proportion information determined for each disk with the level mapping information corresponding to the disk, thereby determining the processing speed level corresponding to each disk.
[0058] Step S200: Obtain weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information.
[0059] Since there are multiple disks in the disk array, and the processing speed level of each disk is different, that is, the average response time of each disk for processing IO operations is different, so the degree of influence of each disk on the overall performance of the disk array is also different. To this end, after obtaining the processing speed level of each disk, the weight information corresponding to the processing speed level of each disk is obtained respectively. The weight information can reflect the degree of influence of the processing speed level of each disk on the overall performance of the disk array. In one implementation, the weight information of this embodiment is pre-set, and the weight information corresponding to each processing speed level is different, and the higher the processing speed level, the smaller the corresponding weight information, and the lower the processing speed level, the larger the corresponding weight information. This means that when the processing speed level of a disk is lower, that is, the slower the processing speed for IO operations, the greater the impact on the overall performance of the disk array.
[0060] Step S300: Evaluate the performance information of the disk array based on the average response time of each disk and the weight information.
[0061] After determining the weight information of each disk, this embodiment can evaluate the performance information of the disk array based on the average response time of each disk and the weight information corresponding to the disk.
[0062] In one implementation, this embodiment includes the following steps when evaluating the performance information of a disk array:
[0063] Step S301: Calculate the overall response time of the disk array based on the average response time of each disk and the weight information;
[0064] Step S302: Evaluate the performance information of the disk array based on the overall response time.
[0065] Specifically, this embodiment calculates the overall response time of the disk array based on the average response time of each disk and the weight information. In practical applications, this embodiment can calculate the product of the response time and the corresponding weight information for each disk to obtain the first value of each disk. Then, the first values of all disks are added together to obtain the second value of the disk array, and the second value is used as the overall response time of the disk array. After obtaining the overall response time, this embodiment can use a preset second time threshold and determine the time difference based on the overall response time and the preset second time threshold. Then, based on the time difference, determine the performance interval corresponding to the time difference, and use the response speed information reflected by the performance interval as the performance information of the disk array.
[0066] In one implementation, this embodiment pre-sets performance reference information for a disk array. This performance reference information includes a correspondence between numerical intervals corresponding to time differences and performance intervals. The performance intervals of this embodiment include an excellent performance interval, a normal performance interval, and an abnormal performance interval. Each performance interval reflects the disk array's response speed to IO operations. For example, the excellent performance interval reflects a fast response speed for IO operations; the normal performance interval reflects a normal response speed for IO operations (i.e., meeting an ordinary level or a preset standard level); and the abnormal performance interval reflects a slow response speed for IO operations. Therefore, after determining the time difference, this embodiment can determine the numerical interval corresponding to the time difference, and then match the numerical interval of the time difference with the performance reference information to determine the performance interval. The response speed information reflected in the performance interval is then used as the performance information of the disk array, thereby achieving an overall information evaluation of the disk array.
[0067] In other implementations, after evaluating the performance information of the disk array, this embodiment can analyze whether the disk array needs optimization and maintenance based on the disk array performance information. Furthermore, when optimization or maintenance is required, this embodiment can further locate abnormal disks in the disk array and perform targeted optimization on them, thereby ensuring that the disk array meets usage requirements and extending the service life of the disk array.
[0068] In summary, this embodiment can first obtain the response time of each disk in the disk array for processing IO operations, and based on the response time, determine the processing speed level corresponding to each disk, wherein the higher the processing speed level, the shorter the response time. Then, obtain the weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information. Finally, based on the average response time of each disk and the weight information, evaluate the performance information of the disk array. This embodiment can perform an overall evaluation of the performance of the disk array by analyzing the response time of a single disk processing IO operations, which is conducive to achieving efficient performance evaluation, and by analyzing each disk, the accuracy of the performance evaluation is improved.
[0069] Based on the above embodiments, the present invention also discloses a disk array performance evaluation system, such as Figure 2As shown in , the system includes: a speed level determination module 10, a weight information acquisition module 20 and a performance information evaluation module 30. Specifically, the speed level determination module 10 is used to obtain the response time of each disk in the disk array for processing IO operations, and based on the response time, determine the processing speed level corresponding to each disk, wherein the higher the processing speed level, the shorter the response time. The weight information acquisition module 20 is used to obtain the weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information. The performance information evaluation module 30 is used to evaluate the performance information of the disk array based on the average response time of each disk and the weight information.
[0070] In one implementation, the speed grade determination module 10 includes:
[0071] The first response time acquisition unit is used to acquire the number of IO operations processed by each disk within a preset time period, and the response time of each IO operation;
[0072] a response time analysis unit, configured to determine an average response time of each disk based on the number of IO operations processed by each disk and the response time of each IO operation;
[0073] The first speed grade determining unit is configured to determine a processing speed grade corresponding to each disk based on the average response time.
[0074] In one implementation, the first speed level determining unit includes:
[0075] a classification rule determination subunit, configured to obtain a disk type corresponding to each secondary disk in the disk array and obtain a grade classification rule corresponding to the disk type, wherein the grade classification rule reflects a correspondence between a processing speed grade and an average response time;
[0076] The processing speed grade determination subunit is used to match the average response time with the grade classification rule to determine the processing speed grade corresponding to each disk.
[0077] In one implementation, the speed grade determination module 10 includes:
[0078] The second response time collection unit is used to collect the number of IO operations processed by each disk within a preset time period, and the response time of each processing of the IO operation;
[0079] a response duration comparison unit, configured to obtain a preset first duration threshold, and compare all response durations corresponding to each disk with the first duration threshold;
[0080] a proportion information determining unit, configured to determine, for each disk, proportion information of all response times that are greater than the first time threshold;
[0081] The second speed level determining unit is configured to determine a processing speed level corresponding to each disk based on the proportion information.
[0082] In one implementation, the performance information evaluation module 30 includes:
[0083] an overall response time calculation unit, configured to calculate an overall response time of the disk array based on an average response time of each disk and the weight information;
[0084] The performance information determining unit is configured to evaluate the performance information of the disk array based on the overall response time.
[0085] In one implementation, the overall response duration calculation unit includes:
[0086] A first value calculation subunit is configured to calculate, for each disk, the product of the response time and the corresponding weight information to obtain a first value for each disk;
[0087] The second value operator unit is configured to add the first values of all disks to obtain a second value of the disk array, and use the second value as the overall response duration of the disk array.
[0088] In one implementation, the performance information determining unit includes:
[0089] a time difference determination subunit, configured to obtain a preset second duration threshold, and determine a time difference based on the overall response duration and the preset second duration threshold;
[0090] The performance interval determination subunit is configured to determine a performance interval corresponding to the time difference based on the time difference, and use the response speed information reflected by the performance interval as the performance information of the disk array.
[0091] The working principles of each module in the disk array performance evaluation system of this embodiment are the same as the principles of each step in the above method embodiment, and will not be repeated here.
[0092] Each module in the disk array performance evaluation system described above can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a terminal in hardware form, or stored in a memory in the terminal in software form, so that the processor can call and execute the corresponding operations of each module.
[0093] Based on the above embodiment, the present invention further provides a terminal, the principle block diagram of the terminal can be as follows: Figure 3 The terminal may include one or more processors 100 ( Figure 3 The processors 100 include a memory 101 (only one shown), and a computer program 102 stored in the memory 101 and executable on one or more processors 100, such as a sleep analysis program based on multi-sensor data. When the one or more processors 100 execute computer program 102, the steps of the embodiment of the sleep analysis method based on multi-sensor data can be implemented. Alternatively, when the one or more processors 100 execute computer program 102, the functions of the modules / units in the embodiment of the sleep analysis system based on multi-sensor data can be implemented, without limitation.
[0094] In one embodiment, the processor 100 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0095] In one embodiment, memory 101 may be an internal storage unit of an electronic device, such as a hard drive or memory. Memory 101 may also be an external storage device of the electronic device, such as a plug-in hard drive, smart media card (SMC), secure digital (SD) card, flash memory card, etc. Furthermore, memory 101 may include both an internal storage unit of the electronic device and an external storage device. Memory 101 is used to store computer programs and other programs and data required by the terminal. Memory 101 may also be used to temporarily store data that has been output or is about to be output.
[0096] Those skilled in the art will understand that Figure 3 The principle block diagram shown in the figure is only a block diagram of a partial structure related to the solution of the present invention, and does not constitute a limitation on the terminal to which the solution of the present invention is applied. The specific terminal may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0097] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, operation database or other media used in the embodiments provided by the present invention may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), Direct Memory Bus Dynamic RAM (DRDRAM), and Rambus Dynamic RAM (RDRAM), among others.
[0098] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A method for evaluating the performance of a disk array, characterized in that: The method comprises: Obtaining the response time of each disk in the disk array for processing an IO operation, and determining the processing speed level corresponding to each disk based on the response time, wherein the higher the processing speed level, the shorter the response time; Obtaining weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information; Based on the average response time of each disk and the weight information, evaluating the performance information of the disk array; The obtaining of the response time of each disk in the disk array for processing an IO operation, and determining the processing speed level corresponding to each disk based on the response time, includes: Collect the number of IO operations processed by each disk within a preset time period, and the response time of each IO operation; Obtain a preset first duration threshold, and compare all response durations corresponding to each disk with the first duration threshold; For each disk, determine the proportion of all response times that are greater than the first time threshold; Based on the proportion information, determining the processing speed level corresponding to each disk; Determining the processing speed level corresponding to each disk based on the proportion information includes: Obtaining a disk type corresponding to each disk in the disk array, and obtaining level mapping information corresponding to the disk type, wherein the level mapping information reflects a corresponding relationship between a processing speed level and a proportion information; Based on the level mapping information, the proportion information determined for each disk is matched with the level mapping information corresponding to the disk to determine the processing speed level corresponding to each disk; The evaluating the performance information of the disk array based on the average response time of each disk and the weight information includes: Calculate the overall response time of the disk array based on the average response time of each disk and the weight information; Based on the overall response time, evaluating the performance information of the disk array; The calculating the overall response time of the disk array based on the average response time of each disk and the weight information includes: For each disk, calculate the product of the response time and the corresponding weight information to obtain the first value of each disk; Adding the first values of all disks to obtain a second value of the disk array, and using the second value as the overall response time of the disk array; The evaluating the performance information of the disk array based on the overall response time includes: Obtaining a preset second duration threshold, and determining a time difference based on the overall response duration and the preset second duration threshold; Based on the time difference, determining a performance interval corresponding to the time difference, and using response speed information reflected by the performance interval as performance information of the disk array; The determining, based on the time difference, a performance interval corresponding to the time difference includes: Pre-setting performance reference information of the disk array, wherein the performance reference information is provided with a corresponding relationship between a numerical interval corresponding to a time difference and a performance interval, wherein the performance interval includes an excellent performance interval, a normal performance interval, and an abnormal performance interval, and each performance interval reflects the response speed information of the disk array to an IO operation; After the time difference is determined, a numerical interval corresponding to the time difference is determined, and the numerical interval of the time difference is matched with the performance reference information to determine the performance interval; After evaluating the performance information of the disk array, it is analyzed whether the disk array needs to be optimized and maintained based on the performance information of the disk array. If the disk array needs to be optimized or maintained, the abnormal disks in the disk array are located and optimized in a targeted manner.
2. A disk array performance evaluation method, characterized in that: The method comprises: Obtaining the response time of each disk in the disk array for processing an IO operation, and determining the processing speed level corresponding to each disk based on the response time, wherein the higher the processing speed level, the shorter the response time; Obtaining weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information; Based on the average response time of each disk and the weight information, evaluating the performance information of the disk array; The obtaining of the response time of each disk in the disk array for processing an IO operation, and determining the processing speed level corresponding to each disk based on the response time, includes: Collect the number of IO operations processed by each disk within a preset time period, and the response time of each IO operation; Determine the average response time of each disk based on the number of times each disk processes the IO operation and the response time of each processing of the IO operation; Based on the average response time, determining a processing speed level corresponding to each disk; Determining the processing speed level corresponding to each disk based on the average response time includes: Obtaining a disk type corresponding to each secondary disk in the disk array, and obtaining a grade classification rule corresponding to the disk type, wherein the grade classification rule reflects a corresponding relationship between a processing speed grade and an average response time; Matching the average response time with the grade classification rule to determine the processing speed grade corresponding to each disk; The evaluating the performance information of the disk array based on the average response time of each disk and the weight information includes: Calculate the overall response time of the disk array based on the average response time of each disk and the weight information; Based on the overall response time, evaluating the performance information of the disk array; The calculating the overall response time of the disk array based on the average response time of each disk and the weight information includes: For each disk, calculate the product of the response time and the corresponding weight information to obtain the first value of each disk; Adding the first values of all disks to obtain a second value of the disk array, and using the second value as the overall response time of the disk array; The evaluating the performance information of the disk array based on the overall response time includes: Obtaining a preset second duration threshold, and determining a time difference based on the overall response duration and the preset second duration threshold; Based on the time difference, determining a performance interval corresponding to the time difference, and using response speed information reflected by the performance interval as performance information of the disk array; The determining, based on the time difference, a performance interval corresponding to the time difference includes: Pre-setting performance reference information of the disk array, wherein the performance reference information is provided with a corresponding relationship between a numerical interval corresponding to a time difference and a performance interval, wherein the performance interval includes an excellent performance interval, a normal performance interval, and an abnormal performance interval, and each performance interval reflects the response speed information of the disk array to an IO operation; After the time difference is determined, a numerical interval corresponding to the time difference is determined, and the numerical interval of the time difference is matched with the performance reference information to determine the performance interval; After evaluating the performance information of the disk array, it is analyzed whether the disk array needs to be optimized and maintained based on the performance information of the disk array. If the disk array needs to be optimized or maintained, the abnormal disks in the disk array are located and optimized in a targeted manner.
3. A disk array performance evaluation system, characterized in that: The system is used to implement the steps of the disk array performance evaluation method according to claim 1 or 2, and the system comprises: A speed grade determination module is used to obtain the response time of each disk in the disk array for processing IO operations, and determine the processing speed grade corresponding to each disk based on the response time, wherein the higher the processing speed grade, the shorter the response time; A weight information acquisition module, used to acquire weight information corresponding to the processing speed level of each disk, wherein the higher the processing speed level, the smaller the weight information; The performance information evaluation module is used to evaluate the performance information of the disk array based on the average response time of each disk and the weight information.
4. A terminal, characterized in that: The terminal includes a memory, a processor, and a disk array performance evaluation program stored in the memory and executable on the processor. When the processor executes the disk array performance evaluation program, the steps of the disk array performance evaluation method as described in claim 1 or 2 are implemented.
5. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a performance evaluation program for a disk array. When the performance evaluation program for a disk array is executed by a processor, the steps of the performance evaluation method for a disk array as claimed in claim 1 or 2 are implemented.
Citation Information
Patent Citations
Method, device and equipment for writing IO based on RAID strip and readable medium
CN113805800A