A disk array performance optimization method, system, terminal and medium

By analyzing the response time of each disk in the disk array, determining the performance level and locating the abnormal disk, the problem of the failure to optimize abnormal disks in the existing technology is solved, and the overall performance and service life of the disk array are improved.

CN119201006BActive Publication Date: 2025-02-28RD DATA TECH (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411692110.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-25
Publication Date
2025-02-28
Estimated Expiration
2044-11-25

AI Technical Summary

Technical Problem

The prior art cannot accurately locate abnormal disks in disk arrays, and cannot optimize abnormal disks in time, resulting in a decrease in overall read and write speed.

Method used

The performance level of the disk array is determined by obtaining the response duration of each disk for each processing IO operation within a preset time period. If the performance level is a preset exception level, the exception disk is determined and its first average response time is obtained, and the exception disk is optimized based on this.

Benefits of technology

Accurate evaluation of disk array performance levels and timely optimization of abnormal disks are achieved, improving the overall performance and service life of disk arrays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure FT_1
    Figure FT_1
  • Figure FT_2
    Figure FT_2
  • Figure FT_3
    Figure FT_3
Patent Text Reader

Abstract

The present invention discloses a method, system, terminal and medium for optimizing the performance of a disk array. The method comprises: obtaining the response time of each disk in the disk array for processing an IO operation each time within a preset time period, determining the performance level of the disk array based on the response time of each disk for processing an IO operation each time, and the performance level is used to reflect the overall response speed of the disk array processing the IO operation; if the performance level is lower than the preset level, determining the abnormal disk in the disk array, and obtaining the first average response time of the abnormal disk processing the IO operation; optimizing the abnormal disk based on the first average response time corresponding to the abnormal disk. The present invention can optimize the abnormal disk in the disk array when the performance level of the disk array is lower than the preset level, so as to ensure that the disk array can operate normally and is conducive to improving the service life of the entire disk array.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of disk performance optimization technology, and in particular to a disk array performance optimization method, system, terminal and medium. Background Art

[0002] In existing storage systems, the performance of disk arrays is often affected by a single slow disk, resulting in a decrease in overall read and write speeds. Although all disks appear to be working properly, some disks may have inherent performance issues or aging, resulting in extended response times and slow processing speeds, which in turn drags down the performance of the entire disk array. However, in existing technologies, it is impossible to accurately locate abnormal disks in a disk array and optimize them in a timely manner.

[0003] Therefore, the prior art still needs to be improved and enhanced. Summary of the invention

[0004] The technical problem to be solved by the present invention is that, in view of the above-mentioned defects of the prior art, a performance optimization method, system, terminal and medium for a disk array are provided, aiming to solve the problems in the prior art that abnormal disks in the disk array cannot be accurately located and abnormal disks cannot be optimized in time.

[0005] In order to solve the above technical problems, the technical solution adopted by the present invention is as follows:

[0006] In a first aspect, the present invention provides a method for optimizing 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 each time within a preset time period, and determining the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array in processing IO operations;

[0008] If the performance level is a preset abnormal level, determining an abnormal disk in the disk array;

[0009] A first average response time of the abnormal disk for processing IO operations is obtained, and the abnormal disk is optimized based on the first average response time corresponding to the abnormal disk.

[0010] In one implementation, determining the performance level of the disk array based on the response time of each disk processing an IO operation each time includes:

[0011] Obtain a preset first duration threshold, and compare all response durations corresponding to each disk with the first duration threshold;

[0012] For each disk, determine the proportion of all response times that are greater than the first time threshold;

[0013] Based on the proportion information, determining the processing speed level corresponding to each disk;

[0014] The performance level of the disk array is determined based on the processing speed level corresponding to each disk.

[0015] In one implementation, determining the performance level of the disk array based on the processing speed level corresponding to each disk includes:

[0016] The processing speed levels of all disks are counted, the number of disks corresponding to each processing speed level is obtained, and the processing speed level with the largest number of disks is determined;

[0017] The processing speed level of the disk with the largest number of disks is taken as the performance level of the disk array.

[0018] In one implementation, if the performance level is a preset abnormal level, determining an abnormal disk in the disk array includes:

[0019] If the performance level is a preset abnormal level, obtaining a disk with the lowest processing speed level in the disk array;

[0020] The disk with the lowest processing speed grade is regarded as the abnormal disk.

[0021] In one implementation, obtaining a first average response time of the abnormal disk processing IO operations, and optimizing the abnormal disk based on the first average response time corresponding to the abnormal disk, includes:

[0022] Obtaining a first average response time of the abnormal disk processing IO operations within the preset time period;

[0023] Obtaining a second average response time of the disks in the disk array excluding the abnormal disk for processing IO operations within a preset time period;

[0024] The abnormal disk is optimized based on the first average response time and the second average response time.

[0025] In one implementation, the optimizing the abnormal disk based on the first average response time and the second average response time includes:

[0026] Compare the first average response time with the second average response time to determine a time difference;

[0027] If the time difference exceeds a preset value, the abnormal disk corresponding to the time difference exceeding the preset value is replaced or formatted.

[0028] In one implementation, the optimizing the abnormal disk based on the first average response time and the second average response time further includes:

[0029] If the time difference is smaller than a preset value, the data whose usage frequency is lower than a preset frequency value in the abnormal disk corresponding to the time difference being smaller than the preset value is deleted or transferred.

[0030] In a second aspect, an embodiment of the present invention further provides a performance optimization system for a disk array, wherein the system comprises:

[0031] A performance level determination module is used to obtain the response time of each disk in the disk array for processing an IO operation each time within a preset time period, and determine the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array in processing IO operations;

[0032] an abnormal disk determining module, configured to determine an abnormal disk in the disk array if the performance level is a preset abnormal level;

[0033] The abnormal disk optimization module is used to obtain the first average response time of the abnormal disk processing IO operations, and optimize the abnormal disk based on the first average response time corresponding to the abnormal disk.

[0034] 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 optimization program for a disk array stored in the memory and executable on the processor, and when the processor executes the performance optimization program for the disk array, the steps of the performance optimization method for the disk array of any one of the above-mentioned schemes are implemented.

[0035] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein a performance optimization program for a disk array is stored on the computer-readable storage medium, and when the performance optimization program for the disk array is executed by a processor, the steps of the performance optimization method for the disk array described in any one of the above-mentioned schemes are implemented.

[0036] Beneficial effects: Compared with the prior art, the present invention provides a method for optimizing the performance of a disk array. The present invention first obtains the response time of each disk in the disk array for processing an IO operation each time within a preset time period, and determines the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array for processing IO operations. If the performance level is a preset abnormal level, the abnormal disks in the disk array are determined, and the first average response time of the abnormal disk for processing IO operations is obtained; based on the first average response time corresponding to the abnormal disk, the abnormal disk is optimized. The present invention determines the performance level of the disk array by analyzing the response time of each disk for processing an IO operation each time within a preset time period, and can optimize the abnormal disks in the disk array when the performance level of the disk array is lower than the preset level, thereby ensuring that the disk array can operate normally and facilitating the improvement of the service life of the entire disk array. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 The present invention provides a flowchart of a preferred embodiment of a method for optimizing the performance of a disk array.

[0038] Figure 2 A schematic diagram of the architecture of a disk array performance optimization system provided by an embodiment of the present invention.

[0039] Figure 3 A functional block diagram of a terminal provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0040] 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 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 used to limit the present invention.

[0041] The flowcharts shown in the accompanying drawings are only examples and do not necessarily include all the contents and operations or steps, nor must they be executed in the order described. For example, some operations or steps may also be decomposed, combined or partially merged, so the actual execution order may change according to actual conditions.

[0042] It should be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.

[0043] It should be understood that, in order to clearly describe the technical solutions of the embodiments of the present invention, in the embodiments of the present invention, words such as "first" and "second" are used to distinguish between identical or similar items with substantially identical functions and effects. For example, the first control information and the second control information are only used to distinguish different control information, and their order is not limited.

[0044] Those skilled in the art can understand that the words "first", "second", etc. do not limit the quantity and execution order, and the words "first", "second", etc. do not necessarily limit the differences.

[0045] It should be further understood that the term “and / or” used in the present specification and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0046] In order to solve the problems of the prior art, this embodiment provides a performance optimization method for a disk array. The method based on this embodiment can determine the performance level of the disk array by analyzing the response time of each disk for processing an IO operation each time within a preset time period, and can optimize the abnormal disks in the disk array when the performance level of the disk array is lower than the preset level, so as to ensure that the disk array can operate normally and is conducive to improving the service life of the entire disk array. In specific application, this embodiment first obtains the response time of each disk in the disk array for processing an IO operation each time within a preset time period, and determines the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array for processing IO operations. If the performance level is a preset abnormal level, the abnormal disks in the disk array are determined, and the first average response time of the abnormal disk for processing IO operations is obtained; based on the first average response time corresponding to the abnormal disk, the abnormal disk is optimized.

[0047] The disk array performance optimization method of this embodiment can be applied to a terminal, which can be a mobile phone, a computer, a smart TV, or other intelligent product terminal. Figure 1 As shown, in actual application, the performance optimization method of the disk array of this embodiment includes the following steps:

[0048] Step S100, obtaining the response time of each disk in the disk array for each IO operation processed within a preset time period, and determining the performance level of the disk array based on the response time of each disk for each IO operation processed, wherein the performance level is used to reflect the overall response speed of the disk array in processing IO operations.

[0049] In this embodiment, the disk array includes several disks, and the number of disks is set according to actual needs. Each disk can be a disk of the same type or a disk of a different type, such as disk A is a mechanical hard disk and disk B is an SSD. In order to evaluate the overall performance of the disk array, this embodiment can analyze each disk in the disk array, analyze the response time of each disk processing IO operations respectively, and then determine the performance level of the disk array according to the response time of each disk processing IO operations. In this embodiment, the performance level is used to reflect the overall response speed of the disk array processing IO operations, that is, to reflect whether the disk array responds quickly or slowly to IO operations. Determining the performance level of the disk array in this embodiment is conducive to quickly determining whether the disk array meets the requirements.

[0050] In one implementation, when analyzing the performance level of a disk array, this embodiment includes the following steps:

[0051] Step S101, obtaining a preset first duration threshold, and comparing all response durations corresponding to each disk with the first duration threshold;

[0052] Step S102: for each disk, determine the proportion of all response times that are greater than the first time threshold;

[0053] Step S103, determining the processing speed level corresponding to each disk based on the proportion information;

[0054] Step S104: Determine the performance level of the disk array based on the processing speed level corresponding to each disk.

[0055] Specifically, the present embodiment first collects the number of times each disk processes IO operations within a preset time period, and the response time of each processing of the IO operation, and records the response time of each processing of the IO operation. Then, a preset first time threshold is obtained, and all response times corresponding to each disk are compared with the first time threshold. Then, for each disk, the proportion information of all response times greater than the first time threshold is determined, and the proportion information reflects the ratio between the number of times the response time in each disk is greater than the first time threshold and the total number of times. The present embodiment sets the first time threshold to measure the response time of each disk, which is conducive to analyzing whether the number of response times greater than the first time threshold is greater or the number of response times less than the first time threshold is greater in each disk. Further, based on the proportion information, the present embodiment can determine the processing speed level corresponding to each disk. Specifically, the present embodiment can pre-set the level mapping information, and the level mapping information can be set according to the type of the disk. In this embodiment, the disk type corresponding to each disk in the disk array is first obtained, and the level mapping information corresponding to the disk type is obtained, wherein the level mapping information reflects the corresponding relationship between the processing speed level and the proportion information. For example, the level mapping information for a certain type of disk is: if the proportion information is greater than 70% (that is, the ratio between the number of times the response time in the disk is greater than the first time threshold and the total number is greater than 70%), then the corresponding processing speed level is level three, that is, the processing speed for IO operations is very fast; if the proportion information is 50-70% (that is, the ratio between the number of times the response time in the disk is greater than the first time threshold and the total number is 50%-70%), then the corresponding processing speed level is level two, that is, the processing speed for IO operations is normal (that is, it meets the normal level or the preset standard level); if the proportion information is less than 50% (that is, the ratio between the number of times the response time in the disk is greater than the first time threshold and the total number is less than 50%), then the corresponding processing speed level is level one, that is, 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.

[0056] In another implementation, when determining the processing speed level of each disk, the present embodiment can also pre-set a level division rule, and the level division rule is set according to the type of disk. Therefore, the present embodiment first obtains the disk type corresponding to each disk in the disk array, and obtains the level division rule corresponding to the disk type, wherein the level division rule reflects the correspondence between the processing speed level and the average response time. For example, the level division rule for a certain type of disk is: if the average response time is 5-10s, the corresponding processing speed level is level three, that is, the processing speed for IO operations is very fast; if the average response time is 10-15s, the corresponding processing speed level is level two, that is, the processing speed for IO operations is normal (that is, it meets the normal level or the preset standard level); if the average response time is 15-20s, the corresponding processing speed level is level one, that is, the processing speed for IO operations is very slow.

[0057] Furthermore, after determining the processing speed level corresponding to each disk, this embodiment counts the processing speed levels of all disks based on the processing speed level corresponding to each disk, and determines the processing speed level with the largest number of disks, and then uses the processing speed level with the largest number of disks as the performance level of the disk array. For example, if the processing speed level with the largest number of disks is level one, the performance level of the disk array is level one, which means that most of the disks in the disk array have a very slow processing speed for IO operations.

[0058] In another implementation, if there are too many disks with a processing speed level of one in the disk array, the performance of the entire disk array will be affected more greatly. For this reason, this embodiment can also count the number of disks with a processing speed level of one. If the number of disks with a processing speed level of one exceeds 70% of the total number of disks, the performance level of the disk array is determined to be one; if the number of disks with a processing speed level of one is 50%-70% of the total number of disks, the performance level of the disk array is determined to be two (i.e., it meets the general level or the preset standard level); if the number of disks with a processing speed level of one is less than 50% of the total number of disks, the performance level of the disk array is determined to be three. This embodiment accurately analyzes the overall performance of the entire disk array by determining the processing speed level of each disk.

[0059] Step S200: If the performance level is a preset abnormal level, an abnormal disk in the disk array is determined.

[0060] After obtaining the performance level of the disk array, this embodiment analyzes the performance level. If the performance level is a preset abnormal level, it can be determined that the disk array does not meet the requirements. At this time, the abnormal disk in the disk array is located, and then the first average response time of the abnormal disk processing IO operations is obtained, so that the subsequent steps can analyze the first average response time to optimize the abnormal disk.

[0061] In this embodiment, the abnormality level can be one of the above-mentioned performance levels. That is to say, when it is determined that the performance level of the disk array is one, it can be determined that the disk array is abnormal. At this time, it is necessary to determine the abnormal disks in the disk array. In this embodiment, the disk with the lowest processing speed level in the disk array can be the abnormal disk. In addition, when the protected disk array is determined to be abnormal, the present embodiment can trigger an alarm, and the alarm method can be an audible and visual alarm method. And a window can be automatically popped up on the display screen of the terminal to display the alarm information. In other implementations, when the abnormal disks are determined, the positions of these abnormal disks in the disk array can be obtained, and then the abnormal disks in the disk array can be displayed.

[0062] In actual application, this embodiment can pre-draw a schematic diagram of the disk array and display the schematic diagram on the display screen of the terminal. The location of each disk is displayed in the schematic diagram. When there is an abnormal disk, the abnormal disk can be marked in red in the schematic diagram to highlight the abnormal disk. In the subsequent steps, when these abnormal disks are optimized, the optimized disks can be restored to normal and the red mark can be removed, so that the optimization process is more intuitive.

[0063] Step S300: Obtain a first average response time of the abnormal disk for processing IO operations, and optimize the abnormal disk based on the first average response time corresponding to the abnormal disk.

[0064] This embodiment obtains the number of times these abnormal disks process IO operations within a preset time period, and the response time of each processing of the IO operation, and then calculates the first average response time of these abnormal disks. Then, after obtaining the first average response time, this embodiment analyzes the first average response time, and then optimizes these abnormal disks, so that all disks in the disk array can meet user needs and improve the overall performance and service life of the disk array.

[0065] In one implementation, in this embodiment, when optimizing an abnormal disk, the following steps are included:

[0066] Step S301, obtaining a first average response time of the abnormal disk within the preset time period;

[0067] Step S302, obtaining a second average response time of the disks in the disk array excluding the abnormal disk within a preset time period;

[0068] Step S303: Optimize the abnormal disk based on the first average response time and the second average response time.

[0069] Specifically, after obtaining the first average response time of the abnormal disk, the embodiment can obtain the second average response time of the disks other than the abnormal disk in the disk array within the preset time period. The second average response time reflects the performance level of the disks other than the abnormal disk in the disk array. Therefore, when optimizing the abnormal disk, the embodiment can optimize the abnormal disk according to the time difference between the first average response time and the second average response time. After obtaining the time difference, the embodiment can compare the time difference with the preset value. If the time difference exceeds the preset value, it means that the processing speed of these abnormal disks for IO operations is too slow, which may be due to the damage of the disk. At this time, the abnormal disk corresponding to the time difference exceeding the preset value can be replaced, or the abnormal disk can be formatted to release the storage space of the abnormal disk and improve the processing speed of the abnormal disk. If the time difference is less than the preset value, it means that these abnormal disks may have too much stored data, resulting in a slow processing speed. For this reason, the embodiment can delete or transfer the data with a usage frequency lower than the preset frequency value in the abnormal disk corresponding to the time difference less than the preset value, thereby releasing the storage space and improving the processing speed of the abnormal disk.

[0070] In actual application, this embodiment can use different colors to distinguish abnormal disks with time differences less than a preset value and abnormal disks with time differences greater than a preset value in the schematic diagram of the disk array, so as to more intuitively reflect different abnormal disks.

[0071] In summary, this embodiment first obtains the response time of each disk in the disk array for each IO operation processed within a preset time period, and determines the performance level of the disk array based on the response time of each disk for each IO operation processed, wherein the performance level is used to reflect the overall response speed of the disk array for processing IO operations. If the performance level is a preset abnormal level, the abnormal disks in the disk array are determined, and the first average response time of the abnormal disk for processing IO operations is obtained; based on the first average response time corresponding to the abnormal disk, the abnormal disk is optimized. This embodiment determines the performance level of the disk array by analyzing the response time of each disk for each IO operation processed within a preset time period, and can optimize the abnormal disks in the disk array when the performance level of the disk array is lower than the preset level, to ensure that the disk array can operate normally and is conducive to improving the service life of the entire disk array.

[0072] Based on the above embodiments, the present invention also provides a disk array performance optimization system, such as Figure 2 As shown, the system includes: a performance level determination module 10, an abnormal disk determination module 20 and an abnormal disk optimization module 30. Specifically, the performance level determination module 10 is used to obtain the response time of each disk in the disk array for processing an IO operation each time within a preset time period, and determine the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array for processing IO operations. The abnormal disk determination module 20 is used to determine the abnormal disks in the disk array if the performance level is a preset abnormal level. The abnormal disk optimization module 30 is used to obtain the first average response time of the abnormal disk for processing IO operations, and optimize the abnormal disk based on the first average response time corresponding to the abnormal disk.

[0073] In one implementation, the performance level determination module 10 includes:

[0074] A duration comparison unit, used to obtain a preset first duration threshold, and compare all response durations corresponding to each disk with the first duration threshold;

[0075] A proportion determination unit, used to determine, for each disk, the proportion of all response durations that are greater than the first duration threshold;

[0076] A level determination unit, used to determine the processing speed level corresponding to each disk based on the proportion information;

[0077] The performance determination unit is used to determine the performance level of the disk array based on the processing speed level corresponding to each disk.

[0078] In one implementation, the performance determination unit includes:

[0079] The disk statistics subunit is used to count the processing speed levels of all disks, obtain the number of disks corresponding to each processing speed level, and determine the processing speed level with the largest number of disks;

[0080] The performance analysis subunit is used to take the processing speed level of the disk with the largest number of disks as the performance level of the disk array.

[0081] In one implementation, the abnormal disk determination module 20 includes:

[0082] a lowest-level disk determining unit, configured to obtain the disk with the lowest processing speed level in the disk array if the performance level is a preset abnormal level;

[0083] The abnormal disk output unit is used to take the disk with the lowest processing speed grade as the abnormal disk.

[0084] In one implementation, the abnormal disk optimization module 30 includes:

[0085] A first average response time acquisition unit, used to acquire a first average response time of the abnormal disk processing the IO operation within the preset time period;

[0086] A second average response time acquisition unit, used to acquire a second average response time of the disks in the disk array excluding the abnormal disks for processing IO operations within a preset time period;

[0087] The disk optimization unit is used to optimize the abnormal disk based on the first average response time and the second average response time.

[0088] In one implementation, the disk optimization unit includes:

[0089] a time difference determination subunit, configured to compare the first average response time with the second average response time to determine a time difference;

[0090] The first exception processing subunit is used for replacing or formatting the abnormal disk corresponding to the time difference exceeding the preset value if the time difference exceeds the preset value.

[0091] In one implementation, the disk optimization unit further includes:

[0092] The second exception processing subunit is used to delete or transfer the data with a usage frequency lower than a preset frequency value in the abnormal disk corresponding to the time difference value lower than the preset value if the time difference value is lower than a preset value.

[0093] The working principles of each module in the disk array performance optimization system of this embodiment are the same as the principles of each step in the above method embodiment, and will not be repeated here.

[0094] Each module in the above disk array performance optimization system can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of the processor in the terminal in the form of hardware, or can be stored in the memory in the terminal in the form of software, so that the processor can call and execute the corresponding operations of each module.

[0095] 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 Only one is shown in the figure), a memory 101 and a computer program 102 stored in the memory 101 and executable on one or more processors 100, for example, a sleep analysis program based on multi-sensor data. When one or more processors 100 execute the computer program 102, the various steps in the embodiment of the sleep analysis method based on multi-sensor data can be implemented. Alternatively, when one or more processors 100 execute the computer program 102, the functions of various modules / units in the embodiment of the sleep analysis system based on multi-sensor data can be implemented, which is not limited here.

[0096] 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. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0097] In one embodiment, the memory 101 may be an internal storage unit of an electronic device, such as a hard disk or memory of the electronic device. The memory 101 may also be an external storage device of the electronic device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the electronic device. Further, the memory 101 may also include both an internal storage unit of the electronic device and an external storage device. The memory 101 is used to store computer programs and other programs and data required by the terminal. The memory 101 may also be used to temporarily store data that has been output or is to be output.

[0098] 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 scheme of the present invention, and does not constitute a limitation on the terminal to which the scheme of the present invention is applied. The specific terminal may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0099] Those skilled in the art can 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, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, operating 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 operational data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0100] 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 embodiments of the present invention.

Claims

1. A method for optimizing 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 each time within a preset time period, and determining the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array in processing IO operations; If the performance level is a preset abnormal level, determining an abnormal disk in the disk array; Obtaining a first average response time of the abnormal disk processing IO operations, and optimizing the abnormal disk based on the first average response time corresponding to the abnormal disk; The determining the performance level of the disk array based on the response time of each disk processing an IO operation each time includes: 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, where the proportion reflects the ratio of the number of times the response time of each disk is greater than the first time threshold to the total number of times; Based on the proportion information, determining the processing speed level corresponding to each disk; Determining the performance level of the disk array based on the processing speed level corresponding to each disk; The determining, based on the proportion information, the processing speed level corresponding to each disk 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; Determining the performance level of the disk array based on the processing speed level corresponding to each disk includes: The processing speed levels of all disks are counted, the number of disks corresponding to each processing speed level is obtained, and the processing speed level with the largest number of disks is determined; The processing speed level with the largest number of disks is used as the performance level of the disk array; or, Determining the performance level of the disk array based on the processing speed level corresponding to each disk includes: According to statistics on the number of disks with a processing speed level of one, the greater the number of disks with a processing speed level of one, the greater the impact on the performance of the entire disk array; If the number of disks with a processing speed level of one exceeds 70% of the total number of disks, the performance level of the disk array is determined to be one; If the number of disks with a processing speed level of level 1 accounts for 50%-70% of the total number of disks, the performance level of the disk array is determined to be level 2; If the number of disks with a processing speed level of one is less than 50% of the total number of disks, the performance level of the disk array is determined to be three; If the performance level is a preset abnormal level, determining an abnormal disk in the disk array includes: If the performance level is a preset abnormal level, obtaining a disk with the lowest processing speed level in the disk array; Taking the disk with the lowest processing speed grade as the abnormal disk, obtaining the position of the abnormal disk in the disk array, and then displaying the abnormal disk in the disk array; The obtaining a first average response time of the abnormal disk processing the IO operation, and optimizing the abnormal disk based on the first average response time corresponding to the abnormal disk, includes: Obtaining a first average response time of the abnormal disk processing IO operations within the preset time period; Obtaining a second average response time of the disks in the disk array excluding the abnormal disk for processing IO operations within a preset time period; Based on the first average response time and the second average response time, optimizing the abnormal disk; The optimizing the abnormal disk based on the first average response time and the second average response time includes: Compare the first average response time with the second average response time to determine a time difference; If the time difference exceeds a preset value, the abnormal disk corresponding to the time difference exceeding the preset value is replaced or formatted; The optimizing the abnormal disk based on the first average response time and the second average response time also includes: If the time difference is less than a preset value, the data in the abnormal disk corresponding to the time difference less than the preset value and having a usage frequency lower than the preset frequency value is deleted or transferred; The method further comprises: Pre-drawing a schematic diagram of the disk array, and displaying the schematic diagram on a display screen of the terminal; The location of each disk is displayed in the schematic diagram. When there is an abnormal disk, the abnormal disk is marked in red in the schematic diagram to highlight the abnormal disk; When the abnormal disk is optimized, the optimized disk can be restored to normal and the red mark can be removed; In the schematic diagram of the disk array, different colors are used to distinguish abnormal disks whose time difference is less than a preset value and abnormal disks whose time difference is greater than the preset value.

2. A disk array performance optimization system, characterized in that: The system is used to implement the steps of the disk array performance optimization method according to claim 1, and the system comprises: A performance level determination module is used to obtain the response time of each disk in the disk array for processing an IO operation each time within a preset time period, and determine the performance level of the disk array based on the response time of each disk for processing an IO operation each time, wherein the performance level is used to reflect the overall response speed of the disk array in processing IO operations; an abnormal disk determining module, configured to determine an abnormal disk in the disk array if the performance level is a preset abnormal level; The abnormal disk optimization module is used to obtain the first average response time of the abnormal disk processing IO operations, and optimize the abnormal disk based on the first average response time corresponding to the abnormal disk.

3. A terminal, characterized in that: The terminal includes a memory, a processor, and a disk array performance optimization program stored in the memory and executable on the processor. When the processor executes the disk array performance optimization program, the steps of the disk array performance optimization method as claimed in claim 1 are implemented.

4. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a performance optimization program for a disk array. When the performance optimization program for a disk array is executed by a processor, the steps of the performance optimization method for a disk array as claimed in claim 1 are implemented.

Citation Information

Patent Citations

  • Method, device and equipment for identifying slow disk in disk array and readable storage medium

    CN115934003A