Storage management program, information processing system and storage management method
By calculating deviation values for storage volumes based on active usage times, the method enhances accuracy in identifying high-load volumes, addressing inaccuracies from idle times in existing methods.
Patent Information
- Application Number
- JP2023107081
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-29
- Publication Date
- 2025-01-17
AI Technical Summary
Existing methods for calculating performance deviation in storage volumes inaccurately include times when volumes are not in use, leading to unreasonably low deviation values due to inclusion of IOPS data when volumes are idle.
The storage management program calculates an index value excluding non-use periods based on volume allocation and deallocation, determining an average and deviation value only for active times, and identifies volumes with high deviation.
This approach improves the accuracy of volume deviation calculations, providing users with correct information on high-load volumes.
Smart Images

Figure 2025006348000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a storage management program, an information processing system, and a storage management method. [Background technology]
[0002] A business volume is created in the storage registered in the storage management software, and the business volume created is assigned to a business server also registered in the storage management software to carry out business operations. Different volumes are used for different operations, and the number of volumes in a storage system can reach several thousand or tens of thousands.
[0003] Performance information (e.g., IOPS; Input Output Per Second) is collected and recorded for each volume for each unit time (e.g., every minute) for a specified period (e.g., 90 days), and the user may be notified of volumes with large performance deviations and the period during which they occurred. By notifying the user of this information, the user can identify volumes that are heavily loaded and the times when they are loaded.
[0004] To determine the volumes with large performance deviations and the period of time for which they exist, a deviation standard value for performance information is calculated based on a group of performance information collected and recorded over a long period of time, and performance information that deviates from the deviation standard value by a specified amount or more and the time when the performance information was recorded are extracted from the group of performance information. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent Publication No. 2021-190000 [Patent Document 2] JP 2018-190055 A Summary of the Invention [Problem to be solved by the invention]
[0006] If the deviation reference value for performance information is calculated based on the entire period of the performance information group, the calculated deviation reference value will include times when the volume was not actually used. If the performance information collected and recorded is IOPS, etc., and the time when the volume was not actually used (time when IOPS was 0) is included in the calculation of the deviation reference value, the deviation reference value will be unduly lowered, and there is a risk that the deviation value cannot be calculated accurately.
[0007] In order to more accurately calculate the deviation value, it is desirable to calculate the deviation reference value for performance information based on the performance information at the time the volume was actually used; however, performance information alone cannot distinguish between a case where the IOPS is 0 when the volume is actually being used and a case where the IOPS is 0 when the volume is not being used, and there is a risk that the 0 data cannot be eliminated.
[0008] In one aspect, the present invention aims to improve the accuracy of calculation of volume deviation values and provide users with correct information. [Means for solving the problem]
[0009] In one aspect, the storage management program causes a computer to execute a process of calculating an average index value for communication time excluding time periods when each of the multiple volumes is not in use based on information indicating the allocation and deallocation of a set of multiple volumes, calculating a deviation value between the index value obtained at each specified time period for each of the multiple volumes and the calculated average value, and extracting and presenting volumes with high calculated deviation values from among the multiple volumes and the time periods corresponding to the deviation values. Effect of the Invention
[0010] In one aspect, the accuracy of calculation of volume deviation values can be improved to provide correct information to users. [Brief description of the drawings]
[0011] [Figure 1]FIG. 13 is a diagram illustrating volume allocation in a storage system as a related example. [Diagram 2] 11 is a graph illustrating IOPS over time in a storage system as a related example. [Diagram 3] 11A and 11B are diagrams illustrating a process for extracting a time when a volume is in use according to an embodiment. [Figure 4] 1 is a table illustrating performance information according to an embodiment. [Diagram 5] 1 is a block diagram illustrating a configuration example of an information processing system according to an embodiment. [Figure 6] FIG. 11 is a diagram illustrating an example of an affinity group table in the embodiment. [Figure 7] FIG. 10 is a diagram illustrating an example of an access path table in the embodiment. [Figure 8] FIG. 10 is a diagram illustrating an example of a related information table in the embodiment. [Figure 9] 13 is a table illustrating a performance information CSV file of volume ID=1 in the embodiment. [Figure 10] 13 is a table illustrating an example of a performance information CSV file for volume ID=5 in the embodiment. [Figure 11] 11 is a flowchart illustrating an extraction process for a time when a business volume is being used in an embodiment. [Figure 12] 6 is a block diagram illustrating an example of a hardware configuration of the storage management device illustrated in FIG. 5. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] [A] Related Examples FIG. 1 is a diagram illustrating volume allocation in a related example storage system 600. As shown in FIG.
[0013] The storage system 600 shown in FIG. 1 includes a client 6, a server 7, and one or more storages 8 (two in the example shown in FIG. 1).
[0014] When the storage 8 is registered by the client 6, volumes 80 (Vol#1, Vol#2, . . . Vol#5000 in the example shown in FIG. 1) cut out from the storage 8 are defined as indicated by reference symbol A1.
[0015] When the server 7 is registered by the client 6, a volume 80 cut out from the storage 8 is assigned to the server 7, as indicated by reference symbol A2.
[0016] In the example shown in FIG. 1, Vol#1 is used in task #1 as indicated by reference symbol A3, Vol#2 is used in task #2 as indicated by reference symbol A4, and Vol#5000 is used in task #5000 as indicated by reference symbol A5.
[0017] Here, if a delay is observed in operation #1 (in other words, Vol#1) (for example, if an IO delay to volume 80 is observed), an investigation is performed to determine which volume 80 is the cause.
[0018] When investigating the volume 80 that is the cause, it may be determined whether any of the volumes 80 is placing a heavier IO load than normal, and the investigation may be centered on that volume 80. In order to confirm that the IO load is high, the IOPS for each volume 80 may be confirmed, and it may be confirmed how much the IOPS has deviated (in other words, increased) compared to normal times. For example, the IOPS information for the volumes 80 may be presented to the user in a time series graph.
[0019] The deviation value may be used as an index indicating how much the IOPS deviates from the steady state (in other words, the average).
[0020] The deviation value may be found for each business (in other words, for each volume 80), the volume 80 with the highest deviation value may be identified, and the cause of the IO delay may be investigated focusing on that volume 80. The deviation value t may be calculated, for example, by the following formula. The average IOPS value may be referred to as the deviation reference value. Deviation value t = IOPS value at time t - average IOPS value for all acquired times
[0021] The deviation value t may be calculated, for example, as a rate of change instead of a difference.
[0022] FIG. 2 is a graph illustrating IOPS over time in storage system 600 as a related example.
[0023] 2, the horizontal axis represents time and the vertical axis represents IOPS. The solid line graph represents the IOPS of Vol#1, and the dashed dotted line frame graph represents the IOPS of Vol#2.
[0024] When operation #1 starts, as indicated by reference symbol B1, the IOPS of Vol #1 is recorded, but as indicated by reference symbol B2, the IOPS of Vol #2 remains at 0. Then, when operation #2 starts at time t, as indicated by reference symbol B3, the IOPS of Vol #2 is recorded.
[0025] In the example shown in FIG. 2, since the start times of the operations #2 and #1 are different, the deviation value cannot be calculated accurately due to the IOPS (in other words, 0 data) before time t indicated by the dashed line frame.
[0026] [B] Embodiment An embodiment will be described below with reference to the drawings. However, the embodiment described below is merely an example, and there is no intention to exclude the application of various modified examples and techniques not specified in the embodiment. In other words, the present embodiment can be implemented with various modifications within the scope of the gist of the embodiment. In addition, each figure does not intend to include only the components shown in the figure, but can include other functions, etc.
[0027] FIG. 3 is a diagram illustrating the process of extracting the time when a volume is in use in the embodiment.
[0028] It is assumed that a volume allocation or volume release operation was performed on Vol#1 to #3 at the time indicated by reference character C1.
[0029] In the time chart shown by symbol C2, the IOPS acquired during the time period indicated by the diagonal line is longer than the period (e.g., 90 days) that the storage management software can retain performance information for, going back from the current time. Therefore, since the storage management software does not retain the performance information, it is excluded from the calculation of the deviation reference value.
[0030] In addition, the time periods indicated in white are also excluded from the calculation of the deviation reference value because they are time periods in which the volume is not actually being used.
[0031] On the other hand, the time period in the shaded area is narrowed down as performance information (in other words, IOPS) used to calculate the deviation reference value. Note that the IOPS may be a response value that indicates the response time of the response in the time period used for the calculation.
[0032] From 2022 / 10 / 1 13:00:00 (see symbol C21) to 2022 / 10 / 30 13:00:00 (see symbol C22), Volume #1 is excluded from the calculation because it has exceeded the IOPS retention period, and Volumes #2 and #3 are excluded from the calculation because these are time periods when the volumes were not actually being used.
[0033] From 2022 / 10 / 30 13:00:00 (see symbol C22) to 2022 / 11 / 1 13:00:00 (see symbol C23), Volumes #1 to #3 are excluded from the calculation because these are time periods when volumes are not actually being used.
[0034] From 2022 / 11 / 1 13:00:00 (see symbol C23) to 2022 / 12 / 4 13:00:00 (see symbol C24), Volume #2 and #3 are excluded from the calculation because the IOPS retention period has been exceeded, and Volume #1 is excluded from the calculation because this is a time period when the volume is not actually being used.
[0035] 2022 / 12 / 4 13:00:00 (see symbol C24) is the oldest performance information acquisition time held by the storage management software, and may be, for example, 90 days prior to the current time.
[0036] From 2022 / 12 / 4 13:00:00 (see symbol C24) to 2022 / 12 / 10 16:00:00 (see symbol C25), Volume #1 is excluded from the calculation because this is a time period when the volume is not actually being used, and Volumes #2 and #3 are included in the calculation.
[0037] From 2022 / 12 / 10 16:00:00 (see symbol C25) to 2023 / 2 / 21 14:00:00 (see symbol C26), Volumes #1 and #3 are excluded from the calculation because they are not actually being used, but Volume #2 is included in the calculation.
[0038] From 2023 / 2 / 21 14:00:00 (see symbol C26) to 2023 / 2 / 28 17:00:00 (see symbol C27), Volume #1 is excluded from the calculation because it is a time period during which the volume is not actually being used, and Volumes #2 and #3 are included in the calculation.
[0039] From 2023 / 2 / 28 17:00:00 (see code C27) to 2023 / 3 / 3 14:00:00 (see code C28; current time), Volumes #1 and #2 are excluded from the calculation because these are time periods when the volumes are not actually being used, but Volume #3 is included in the calculation.
[0040] FIG. 4 is a table illustrating performance information in the embodiment.
[0041] The performance information shown in symbol D1 is, for example, a CSV file, and holds the IOPS values generated for each resource (e.g., volume or disk) between a start time (e.g., performance information acquisition time A) and an end time (e.g., performance information acquisition time B).
[0042] Reference symbol D1 indicates IO for Volume#1, and indicates that the IOPS occurring between performance information acquisition time A (12:00) and performance information acquisition time B (12:00:30) is 300.
[0043] FIG. 5 is a block diagram illustrating a schematic configuration example of an information processing system 100 according to an embodiment.
[0044] The information processing apparatus includes a client 1, a storage management device 2, and a storage system 3.
[0045] The storage system 3 includes a business server 31 , a switch 32 , and a storage 33 .
[0046] The business server 31 is a computer equipped with a server function. In the example shown in Fig. 5, the storage system 3 includes one business server 31, but the number of business servers 31 included in the storage system 3 can be changed in various ways.
[0047] The switch 32 freely changes the path between the business server 31 and the storage 33 .
[0048] The storage 33 is a device that stores data in a readable and writable manner, and may be, for example, a hard disk drive (HDD), a solid state drive (SSD), or a storage class memory (SCM). The number of storages 33 included in the storage system 3 can be changed in various ways.
[0049] The client 1 includes the functions of a request issuing unit 111 and a display data generating unit 112.
[0050] The request issuing unit 111 issues a command to the side of the storage management device 2 to obtain a display command for volumes with high IOPS deviation values based on a user operation. The command may include the ID and the display number of the business volume. The ID of the business volume is an identifier of the business volume in which IO delay specified by the user is observed. The business volume considered to be the cause of the IO delay of this business volume is calculated by the storage management device 2. The display number is the number of response data obtained from the side of the storage management device 2, and is sorted by deviation value and displayed as many as the specified display number starting from the business volume with the highest deviation value.
[0051] The display data generation unit 112 generates HTML for display on a browser from the response received from the storage management device 2. The display data creation unit 227 generates HTML such that, for example, the display information of a response whose priority is closer to 1 is displayed in the upper left.
[0052] The storage management device 2 comprises functions as a communication unit 211 , an allocation instruction unit 222 , an interface unit 223 , a business information storage unit 224 , a performance information storage unit 225 , a performance information analysis unit 226 and a display data creation unit 227 .
[0053] The performance information storage unit 225 is a storage location for the CSV file created in the interface unit 223 .
[0054] The business information storage unit 224 holds time information when an affinity group to which a business volume registered in the storage management device 2 belongs is assigned to the business server 31 .
[0055] The performance information analysis unit 226 acquires IOPS information from the performance information storage unit 225. The performance information analysis unit 226 accesses the business information storage unit 224, and calculates the IOPS acquisition start time and the IOPS acquisition end time for each business assigned to the business server 31. The performance information analysis unit 226 calculates and sorts the IOPS deviation value from the calculated time, and calculates X candidates for business volumes that are considered to be the cause of the load on the business volume sent from client 1, starting from the top. X is the value of the "display number" parameter passed from client 1.
[0056] The display data creation unit 227 creates response data (for example, in key-value format) to be sent to the client 1 side. The display data creation unit 227 sorts the number of display data to be created by deviation value, and obtains only the number (for example, 2 items) specified by the user from the highest business volume.
[0057] An example of key-value data is as follows. Note that volume_name is the volume name, start_time is the start time of IOPS acquisition, end_time is the end time of IOPS acquisition, and divergence is the divergence value. Priority is a value between 1 and the number of response data (2 in this example), and when sorted by divergence value, the value with the largest divergence value is 1. volume_name:Vol1 start_time:2022 / 12 / 7:22:00 end_time:2022 / 12 / 7:22:01 divergence:1000 priority:1
[0058] The above key-value data shows that the highest deviation value was observed for IOPS observed on Vol1 between 22:00 and 22:01.
[0059] The communication unit 211 receives requests from the client 1 and transmits response data created by the display data creation unit 227 to the client 1 .
[0060] The allocation instruction unit 222 creates a volume allocation command for the business server 31 based on the parameters received from the client 1 , and transmits the command to an interface unit 223 for the storage system 3 .
[0061] The interface unit 223 issues a volume allocation command to the storage system 3 based on the parameters received from the allocation instruction unit 222. The interface unit 223 also acquires the value of performance information (in other words, IOPS) from the storage 333 at each performance information monitoring interval set by the user, and transfers it to the performance information storage unit 225 for storage.
[0062] 5, the processes indicated by symbols G1 and G2 are processes on the side of the storage management device 2, and represent the procedure of a process for acquiring the value of performance information (in other words, IOPS) of the business volume from the storage 33. The processes indicated by symbols G1 and G2 may be executed in the background in the storage management device 2 at performance information monitoring intervals (e.g., 30 seconds) set by the user.
[0063] The interface unit 223 of the storage management device 2 acquires an IOPS value for each volume from the storage 33 (see symbol G1). The interface unit 223 transfers the acquired performance information (in other words, a CSV file) to the performance information storage unit 225 (see symbol G2).
[0064] 5, the processes indicated by symbols F1 to F8 are processes in the storage management device 2, and are executed when a user issues a command in the storage management device 2 to allocate a business volume to the business server 31. The processes indicated by symbols F1 to F8 indicate the procedure of processes from an instruction to allocate a business volume by the storage management device 2 to the storage of the instruction result in the business information storage unit 224 of the storage management device 2. The processes indicated by symbols F1 to F8 are executed in the background.
[0065] The request issuer 111 of the client 1 issues a command to the storage management device 2 to allocate the business volume to the business server 31. The allocation command may include the following parameters: a storage identifier, an affinity group identifier, a business server identifier, and a port identifier (see symbol F1).
[0066] The communication unit 211 of the storage management device 2 issues an instruction to issue a command to allocate the business volume to the business server 31 based on the parameters received from the client 1 (see symbol F2).
[0067] The allocation instruction unit 222 of the storage management device 2 creates a command to allocate the business volume to the business server 31 based on the parameters received from the client 1 (see reference symbol F3). The allocation instruction unit 222 sends the created command to the interface unit 223 with the storage system 3 (see reference symbol F4).
[0068] The interface unit 223 of the storage management device 2 issues a volume allocation instruction command to the storage system 3 (see reference symbol F5). The interface unit 223 receives a response result to the issued volume allocation instruction command (see reference symbol F6).
[0069] The allocation instruction unit 222 receives information on the result (success / failure) of the business volume allocation process and the time when the operation was completed from the interface unit 223 (see symbol F7). The allocation instruction unit 222 stores pair information of the completion time, the identifier of the allocated volume, and the identifier of the server for the volume allocation operation in the business information storage unit 224 (see symbol F8).
[0070] 5, the processes indicated by symbols E1 to E9 are processes on the client 1 side, and are initiated by a user operation. The processes indicated by symbols E1 to E9 represent the procedure of the process in which the storage management device 2 calculates volumes with high deviation values from the performance information and business information held by the storage management device 2, returns the results to the client 1, and displays them on the client side.
[0071] The request issuer 111 of the client 1 issues a command to display business volumes with high IOPS deviation values (see symbol E1). The command may include parameters such as a volume ID (for example, a) and a display count (for example, 2).
[0072] The communication unit 211 of the storage management device 2 sends an IOPS deviation value calculation command together with the parameters (in other words, the volume ID and the display number) received from the client 1 to the performance information analysis unit 226 (see symbol E2).
[0073] The performance information analysis unit 226 of the storage management device 2 reads information required to calculate the IOPS acquisition start time and the IOPS acquisition end time. The performance information analysis unit 226 reads a CSV file of performance information. Details of the processing in the performance information analysis unit 226 will be described later with reference to Figs. 6 to 10.
[0074] In the above-mentioned related example, when calculating the deviation value for each business volume and each hour (in other words, the difference between the IOPS information at that time and the deviation reference value), the calculation included zero data for the time period when the business volume was not actually used. This resulted in the deviation reference value being lower than the actual value, and the deviation value being calculated to be unreasonably high.
[0075] In order to more accurately calculate the deviation value, the performance information analysis unit 226 shown in FIG. 5 narrows down the IOPS values used in calculating the deviation reference value to the section where the business volume is actually used, and calculates the deviation reference value using only the IOPS information of the narrowed down section.
[0076] Specifically, the performance information analysis unit 226 executes a deviation value calculation to extract a business volume that is a candidate for the cause of the high load of the business volume corresponding to the parameter (in other words, the volume ID) received from the communication unit 211 shown in symbol E2. In order to narrow down the IOPS information used in the deviation value calculation to the section in which each business volume allocated to the business server 31 was actually used, the performance information analysis unit 226 extracts the time when each business volume was allocated to the business server 31 and the time when it was released.
[0077] The performance information analysis unit 226 acquires the ID of the affinity group to which the business volume having the volume ID received from the communication unit 211 indicated by the reference symbol E2 belongs.
[0078] The performance information analysis unit 226 calculates the time allocated to the business server 31 (in other words, the access path setup time) and the time when the allocation was released (in other words, the access path release time) for the business volumes belonging to the acquired affinity group.
[0079] Thereafter, the performance information analysis unit 226 refers to the time information of the SCSV file of the performance information acquired from the performance information storage unit 225, extracts the IOPS value acquired in the section from the access path setting time to the access path release time, and calculates the deviation reference value for each business volume.
[0080] After calculating the deviation reference value, the performance information analysis unit 226 calculates the deviation value for each business volume and for each time period (in other words, the IOPS value acquired in that time period--the deviation reference value).
[0081] The performance information analysis unit 226 sets the deviation value of the time not included between the IOPS acquisition start time and the IOPS acquisition end time to 0.
[0082] The performance information analysis unit 226 sorts the calculated deviation values and extracts the business volumes considered to be the cause of the high load by the number of parameters (in other words, the display number) received from the communication unit 211 indicated by the symbol E2.
[0083] The performance information analysis unit 226 transmits the volume information having a high deviation value to the display data creation unit 227 (see symbol E5).
[0084] The display data creation unit 227 of the storage management device 2 stores the response data in the communication unit 211 with the client 1 (see symbol E6).
[0085] The communication unit 211 transmits the stored response data to the client 1 (see symbol E7).
[0086] The display data creation unit 227 of the client 1 receives the response data from the storage management device 2 and generates HTML for display in the browser from the response data (see reference symbol E8). The display data creation unit 227 causes the display device 131 to display the generated HTML for display (see reference symbol E9).
[0087] FIG. 6 is a diagram illustrating an example of an affinity group table 201 in the embodiment.
[0088] An affinity group is a collection of business volumes allocated to a business server 31. The storage management device 2 creates an affinity group before allocating a business volume to the business server 31, and allocates a business volume to the business server 31 in affinity group units.
[0089] When volume ID=1 is received, the affinity group table 201 that associates affinity group IDs with volume IDs is referenced, and the affinity group to which the specified business volume belongs is identified.
[0090] In the example shown in FIG. 6, the affinity group ID corresponding to volume ID=1 is 1.
[0091] FIG. 7 is a diagram illustrating an example of the access path table 202 in the embodiment.
[0092] An access path is a logical path set between the business server 31 and a storage port and affinity group. The business server 31 to which the access path is set can recognize the business volume belonging to the affinity group (in other words, volume allocation is performed).
[0093] The access path table 202 that associates affinity group IDs with business server IDs is referenced using the acquired affinity group ID (1 in this example), and the access path setup time and access path release time of the affinity group are acquired.
[0094] The access path table 202 holds affinity group allocation information for the business server 31. Taking the top of the table shown in Fig. 7 as an example, it is shown that an affinity group with affinity group ID = 1 was allocated to business server #1 with business server ID = 1 on 2022 / 12 / 23 12:00:00, and the allocation was released on 2023 / 1 / 5 11:00:00. Note that if the volume allocation has not been released, the release time is left blank.
[0095] FIG. 8 is a diagram illustrating an example of the related information table 203 in the embodiment.
[0096] The related information table 203 indicates the relationship between affinity groups and access path setup times and release times.
[0097] In the example shown in FIG. 8, the access path setup time and the access path release time for the affinity group ID=1 are extracted from the access path table 202 shown in FIG.
[0098] The IOPS information acquired in the section from the access path setup time to the access path release time shown in FIG. 8 is the IOPS value acquired when an actual business operation was being performed.
[0099] Fig. 9 is a table illustrating a performance information CSV file 204a for volume ID=1 in the embodiment. Fig. 10 is a table illustrating a performance information CSV file 204b for volume ID=5 in the embodiment.
[0100] An affinity group ID (1 in this example) is obtained from the related information table 203 shown in Fig. 8, and a performance information CSV file 204a of the business volumes belonging to the affinity group is read. Since the business volumes belonging to affinity group ID=1 are #1 and #5 according to the affinity group table 201, performance information CSV files 204a and 204b of the volumes with volume IDs=1 and 5 are read, and the IOPS value from the access path setup time to the access path release time is obtained.
[0101] In the related example described above, the deviation reference value is calculated using all of the acquired performance information, so the IOPS values (0 data) of the sections where the business volume is not actually used (outside the dashed frames in Figs. 9 and 10) are included in the calculation of the deviation reference value, and the deviation reference value (in other words, the average value) is calculated to be low. On the other hand, in this embodiment, the deviation reference value is calculated using only the IOPS values of the sections enclosed by the dashed frames in Figs. 9 and 10.
[0102] Then, the deviation reference value is calculated from the performance information CSV files 204a and 204b shown in FIG. 9 and FIG.
[0103] In the case of Volume #1, the deviation reference value is calculated from 28,500 (18,660 + 9,840) IOPS values acquired every minute from 2022 / 12 / 23 12:00 to 2023 / 1 / 5 11:00 and 2023 / 2 / 21 15:00 to 2023 / 2 / 28 11:00. Deviation reference value for Volume #1 = (100 + 80 + 60 + 120 + 150 + 50 * (28,500 - 5)) / 28,500 ≒ 50.01.
[0104] In the case of volume #5, the deviation reference value is calculated from 28,500 (18,660 + 9,840) IOPS values obtained every minute from 2022 / 12 / 23 12:00 to 2023 / 1 / 5 11:00 and 2023 / 2 / 21 15:00 to 2023 / 2 / 28 11:00. Deviation reference value for volume #5 = (30 + 10 + 50 + 20 + 150 + 10 * (28,500 - 5)) / 28,500 ≒ 10.
[0105] FIG. 11 is a flowchart illustrating the extraction process of the time when the business volume is used in the embodiment.
[0106] The storage management device 2 receives a volume ID from the client 1 (step S1).
[0107] The storage management device 2 connects to the affinity group table 201, and searches for a row having the volume ID received in the process of step S1 (step S2).
[0108] The storage management device 2 connects to the access path table 202 and acquires the access path setup time and the access path release time of the affinity group (step S3).
[0109] The storage management device 2 connects to the affinity group table 201 and acquires a list of IDs of the business volumes belonging to the affinity group (step S4).
[0110] The storage management device 2 judges whether the performance information files of the business volumes corresponding to all the acquired IDs have been read (step S5).
[0111] If the performance information files of the volumes corresponding to all the acquired IDs have not been read (see the No route in step S6), the storage management device 2 reads the performance information file of the business volume corresponding to the acquired volume ID=N (step S6). Then, the process returns to step S5.
[0112] On the other hand, if the performance information files for the volumes corresponding to all the acquired IDs have been read (see the Yes route in step S5), the storage management device 2 initializes a variable for calculating the deviation reference value (in other words, called perf_arr) for each business volume (step S7).
[0113] The storage management device 2 judges whether or not the deviation reference values of the business volumes corresponding to all the acquired IDs have been calculated (step S8).
[0114] If the deviation reference values for the volumes corresponding to all the acquired IDs have been calculated (see the Yes route from step S8), the extraction process for the time when the business volume is in use ends.
[0115] On the other hand, if the deviation standard values for the volumes corresponding to all of the acquired IDs have not been calculated (see the No route in step S8), the storage management device 2 determines whether all of the performance information from the access path setup time to the release time has been read (step S9).
[0116] If all the performance information from the access path setup time to the access path release time has been read (see the Yes route in step S9), the storage management device 2 calculates the average value of the elements of perf_arr and sets it as the deviation reference value (step S10). Then, the process returns to step S8.
[0117] On the other hand, if all the performance information from the access path setup time to the access path release time has not been read (see the No route in step S9), the storage management device 2 reads the performance information for time period i from the performance information file of volume ID=N and adds it to perf_arr (step S11).
[0118] The storage management device 2 increments the time period i (step S12), and the process returns to step S9.
[0119] FIG. 12 is a block diagram illustrating an example of a hardware configuration of the storage management device 2 illustrated in FIG.
[0120] As shown in FIG. 12, the storage management device 2 includes a CPU (Central Processing Unit) 11, a memory unit 12, a display control unit 13, a storage device 14, an input interface (IF) 15, an external recording medium processing unit 16, and a communication IF 17.
[0121] The client 1 and the business server 31 shown in FIG.
[0122] The memory unit 12 is an example of a storage unit, and is illustratively a Read Only Memory (ROM) and a Random Access Memory (RAM). Programs such as a Basic Input / Output System (BIOS) may be written in the ROM of the memory unit 12. The software programs in the memory unit 12 may be appropriately read and executed by the CPU 11. The RAM of the memory unit 12 may be used as a temporary recording memory or a working memory.
[0123] The display control unit 13 is connected to a display device 131 and controls the display device 131. The display device 131 is a liquid crystal display, an Organic Light-Emitting Diode (OLED) display, a Cathode Ray Tube (CRT), an electronic paper display, or the like, and displays various information for an operator, etc. The display device 131 may be combined with an input device, for example, a touch panel. The display device 131 displays various information for a user of the storage management device 2.
[0124] The storage device 14 is a storage device with high IO performance, and may be, for example, a dynamic random access memory (DRAM), a solid state drive (SSD), a storage class memory (SCM), or a hard disk drive (HDD).
[0125] The input IF 15 may be connected to input devices such as a mouse 151 and a keyboard 152, and may control the input devices such as the mouse 151 and the keyboard 152. The mouse 151 and the keyboard 152 are examples of input devices, and an operator performs various input operations via these input devices.
[0126] The external recording medium processing unit 16 is configured so that the recording medium 160 can be attached. The external recording medium processing unit 16 is configured so that, when the recording medium 160 is attached, the information recorded on the recording medium 160 can be read. In this example, the recording medium 160 is portable. For example, the recording medium 160 is a flexible disk, an optical disk, a magnetic disk, a magneto-optical disk, a semiconductor memory, or the like.
[0127] The communication IF 17 is an interface for enabling communication with an external device.
[0128] The CPU 11 is an example of a processor, and is a processing device that performs various controls and calculations. The CPU 11 realizes various functions by executing an Operating System (OS) and programs loaded into the memory unit 12. The CPU 11 may be a multiprocessor including multiple CPUs, a multicore processor having multiple CPU cores, or a configuration having multiple multicore processors.
[0129] The device for controlling the operation of the entire storage management device 2 is not limited to the CPU 11, and may be, for example, any one of MPU, DSP, ASIC, PLD, and FPGA. The device for controlling the operation of the entire storage management device 2 may be a combination of two or more of CPU, MPU, DSP, ASIC, PLD, and FPGA. MPU is an abbreviation for Micro Processing Unit, DSP is an abbreviation for Digital Signal Processor, and ASIC is an abbreviation for Application Specific Integrated Circuit. PLD is an abbreviation for Programmable Logic Device, and FPGA is an abbreviation for Field Programmable Gate Array.
[0130] [C] Effect According to the storage management program, the information processing system 100, and the storage management method in the above-described embodiment, the following advantageous effects can be obtained, for example.
[0131] The storage management device 2 calculates an average index value relating to communication time excluding time periods when each of the multiple volumes is not in use, based on information indicating the allocation and deallocation of multiple volumes in the storage system 3 set by the client 1. The storage management device 2 calculates a deviation value between the index value acquired at each predetermined time for each of the multiple volumes and the calculated average value. The storage management device 2 extracts and presents volumes with high calculated deviation values and time periods corresponding to the deviation values from among the multiple volumes.
[0132] This improves the accuracy of calculation of the volume deviation value, making it possible to provide the user with correct information.
[0133] The storage management device 2 sorts two or more volumes having the highest calculated deviation values from among the multiple volumes in order of deviation value and presents them to the client 1.
[0134] This allows the user to recognize the business volumes in descending order of deviation.
[0135] The index value is an IOPS value or a response value.
[0136] This makes it possible to further improve the accuracy of calculation of the volume deviation value.
[0137] [D] Other The disclosed technology is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present embodiment. Each configuration and each process of the present embodiment can be selected as necessary, or can be combined as appropriate.
[0138] [E] Notes The following supplementary notes are further disclosed regarding the above embodiment.
[0139] (Appendix 1) Calculating an average value of an index value relating to communication time excluding a time period during which each of the plurality of volumes is not in use based on information indicating the allocation and deallocation of the plurality of volumes that have been set; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; A storage management program that causes a computer to execute processes.
[0140] (Appendix 2) sorting two or more volumes having the highest deviation values calculated from among the plurality of volumes in order of the deviation values and presenting the sorted volumes to a client device; 2. The storage management program according to claim 1, which causes the computer to execute a process.
[0141] (Appendix 3) The index value is an Input Output Per Second (IOPS) value or a response value. 3. The storage management program according to claim 1 or 2.
[0142] (Appendix 4) An information processing system having a client device, a management device, and a storage device, The management device includes: calculating an average value of an index value relating to a communication time excluding a time period during which each of the plurality of volumes is not in use, based on information indicating the allocation and deallocation of a plurality of volumes in the storage device set by the client device; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; An information processing system comprising a processor.
[0143] (Appendix 5) The processor, sorting two or more volumes having the highest deviation values calculated from among the plurality of volumes in order of the deviation values and presenting the sorted volumes to the client device; 5. An information processing system according to claim 4.
[0144] (Appendix 6) The index value is an Input Output Per Second (IOPS) value or a response value. 6. An information processing system according to claim 4 or 5.
[0145] (Appendix 7) In an information processing system having a client device, a management device, and a storage device, The computer included in the management device includes: calculating an average value of an index value relating to a communication time excluding a time period during which each of the plurality of volumes is not in use, based on information indicating the allocation and deallocation of a plurality of volumes in the storage device set by the client device; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; A storage management method that performs processing.
[0146] (Appendix 8) sorting two or more volumes having the highest deviation values calculated from among the plurality of volumes in order of the deviation values and presenting the sorted volumes to the client device; 8. The storage management method according to claim 7, wherein processing is executed by the computer.
[0147] (Appendix 9) The index value is an Input Output Per Second (IOPS) value or a response value. 9. The storage management method according to claim 7 or 8. [Explanation of symbols]
[0148] 1: Client 2: Storage management device 3: Storage system 6: Client 7: Server 8: Storage 11: CPU 12: Memory section 13: Display control section 14:Storage device 16: External recording medium processing unit 31: Business server 32: Switch 33: Storage 80: Volume 100: Information processing systems 111: Request issuing department 112: Display data generation unit 131:Display device 151: Mouse 152: Keyboard 160: Recording media 201: Affinity Group Table 202: Access path table 203: Related information table 204a: Performance information CSV file 204b: Performance information CSV file 211: Communications Department 222: Allocation instruction section 223: Interface section 224: Business information storage section 225: Performance information storage section 226:Performance information analysis section 227: Display data creation unit 333: Storage 600: Storage system IF15 :Input IF17: Communications
Claims
1. Calculating an average value of an index value relating to communication time excluding a time period during which each of the plurality of volumes is not in use based on information indicating the allocation and deallocation of the plurality of volumes that have been set; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; A storage management program that causes a computer to execute processes.
2. sorting two or more volumes having the highest deviation values calculated from among the plurality of volumes in order of the deviation values and presenting the sorted volumes to a client device; 2. The storage management program according to claim 1, which causes the computer to execute a process.
3. The index value is an Input Output Per Second (IOPS) value or a response value.
3. The storage management program according to claim 1.
4. An information processing system having a client device, a management device, and a storage device, The management device includes: calculating an average value of an index value relating to a communication time excluding a time period during which each of the plurality of volumes is not in use, based on information indicating the allocation and deallocation of a plurality of volumes in the storage device set by the client device; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; An information processing system comprising a processor.
5. In an information processing system having a client device, a management device, and a storage device, The computer included in the management device includes: calculating an average value of an index value relating to a communication time excluding a time period during which each of the plurality of volumes is not in use, based on information indicating the allocation and deallocation of a plurality of volumes in the storage device set by the client device; Calculating a deviation value between the index value acquired for each of the plurality of volumes at each predetermined time interval and the calculated average value; extracting and presenting a volume with a high deviation value calculated from the plurality of volumes and a time period corresponding to the deviation value; A storage management method that performs processing.
Citation Information
Patent Citations
Storage controller, storage control program and storage control method
JP2018190055A
Storage performance monitoring device and storage performance monitoring program
JP2021190000A