Method and system for reporting disk utilizations for disk subsystems

The present invention provides a method and system for reporting disk utilization in a computer system. The method includes collecting at least one parameter pertaining to a disk array in a disk subsystem by a processor in the disk subsystem; transferring the at least one parameter from the processor to an open system host; and calculating disk utilization based upon the at least one parameter. The method and system is able to provide disk utilization which is understandable to the open system host. In a preferred embodiment, the disk utilization is provided by collecting the relevant parameters from the microcode in the processor of the disk subsystem, and then calculating the average disk utilization per disk based upon the parameters. Thus, an open system host is able to obtain a useful characteristic for determining the performance of the disk subsystem.

FIELD OF THE INVENTION

The present invention relates to computer systems, and more specifically to disk subsystems in computer systems.

BACKGROUND OF THE INVENTION

Mainframe disk subsystems are well known in the art. FIG. 1 illustrates a mainframe computer system with a conventional disk subsystem. The computer system 100 includes a disk subsystem 102 and a host 104 . The disk subsystem 102 includes a disk array 106 , a cache 108 , and a processor 110 which controls the functioning of the disk subsystem 102 . The host 104 comprises software specifically for communication with the disk subsystem 102 , and does so by interfacing with the processor 110 . One of the functions of the processor 110 is to provide statistics and other characteristics of the disk array 106 to the host 104 . Examples of disk characteristics of interest to the host 104 include a table of ownership, the amount of space used on the disks 106 , and performance characteristics. An important performance characteristic is disk utilization, which tells the host 104 how busy are each disk in the array 106 . In a mainframe environment, as illustrated in FIG. 1 , obtaining the disk utilization characteristic is well known in the art. However, a problem arises when the disk subsystem attempts to communicate with open system hosts, such as hosts which run UNIX, Windows NT, or some other type of open operating system. The parameters relevant to disk characteristics sent from the processor 110 to the host 104 is not in a format which is understandable by the open system host. Thus, in an open systems environment, the open system host is unable to obtain disk characteristics, including the disk utilization characteristic.

Accordingly, there exists a need for a method and system for providing parameters for a disk subsystem to an open system host. The method and system should be able to provide disk utilization which is understandable to the open system host. The present invention addresses such a need.

SUMMARY OF THE INVENTION

The present invention provides a method and system for reporting disk utilization in a computer system. The method includes collecting at least one parameter pertaining to a disk array in a disk subsystem by a processor in the disk subsystem; transferring the at least one parameter from the processor to an open system host; and calculating disk utilization based upon the at least one parameter. The method and system is able to provide disk utilization which is understandable to the open system host. In a preferred embodiment, the disk utilization is provided by collecting the relevant parameters from the microcode in the processor of the disk subsystem, and then calculating the average disk utilization per disk based upon the parameters. Thus, an open system host is able to obtain a useful characteristic for determining the performance of the disk subsystem.

DETAILED DESCRIPTION

To more particularly describe the features of the present invention, please refer to FIGS. 2 through 4 in conjunction with the discussion below.

FIG. 2 illustrates a preferred embodiment of a computer system with a disk subsystem in accordance with the present invention. The computer system 200 comprises a disk subsystem 202 and an open system host 204 . Traditional mainframe hosts (not shown) may be communicating with the disk subsystem 202 as well. The disk subsystem 202 comprises a disk array 206 , a cache 208 , and a processor 210 which controls the functioning of the disk subsystem 202 . The open system host 204 communicates with the disk subsystem 202 by interfacing with the processor 210 via an Internet connection. Software resides in the processor 210 and the open system host 204 to facilitate this communication; the processor 210 comprises the specialist software 212 , and the open system host 204 comprises the expert software 214 . One of the functions of the specialist 212 is to gather certain parameters from the microcode (not shown) within the processor 210 which pertain to disk characteristics and transfers them to the expert 214 in the open system host 204 . One of the functions of the expert 214 is to receive the parameters from the specialist 212 and to generate reports concerning disk characteristics based upon the parameters. The reports may be in tabular or graphical form. For the computer system 200 , microcode within the processor 210 does not provide disk utilization directly. Thus, the expert 214 comprises a software routine 216 which calculates disk utilization from the parameters provided by the microcode via the specialist 212 . An example of a disk subsystem which may be used in the computer system 200 is the ENTERPRISE STORAGE SERVER (ESS) disk subsystem developed by INTERNATIONAL BUSINESS MACHINES CORPORATION. In the ESS disk subsystem, the disk array 206 is a RAID array, which is well known in the art.

FIG. 3 is a flow chart illustrating a preferred embodiment of reporting disk utilization in accordance with the present invention. First, the specialist 212 in the processor 210 of the disk subsystem 202 collects the parameters, via step 302 . Next, the parameters are transferred from the specialist 212 to the expert 214 in the open system host 204 , via step 304 . Then, the expert 214 calculates the disk utilization from the parameters, via step 306 . In the preferred embodiment, the calculation is performed with a disk utilization routine 216 in the expert 214 . The disk utilization, along with other disk characteristics, may be displayed by the expert 214 in the form of a report.

FIG. 4 is a flow chart illustrating in more detail the reporting of disk utilization in accordance with the present invention. First, once the user logs into the open system host 204 , the user requests disk characteristics for the disk subsystem 202 , via step 402 . This request may be in the form of a schedule. For example, the user may request that certain disk characteristics be collected from the disk subsystem 202 every 10 minutes, or every hour. One of the disk characteristics which may be requested by the user is disk utilization. Next, the expert 214 sends a request to the specialist 212 for the disk characteristics, via step 404 . When the user requests disk utilization, the expert 214 requests that the parameters in the microcode which is relevant to disk utilization be collected. For a computer system 200 which uses the ESS disk subsystem, the relevant microcode parameters comprise the following:

T time interval in seconds

N number of disks in a RAID array

MR milliseconds of read time in the time interval

MW milliseconds of write time in the time interval

W total number of writes in the time interval

S number of stride write destages in the time interval

The specialist 212 then collects the parameters from the microcode according to the request, via step 406 . Next, the specialist 212 transfers the parameters to the expert 214 , via step 408 . Thus if the user requests that disk characteristics be collected every 10 minutes, then at 10 minute intervals, the parameters would be collected from the microcode and sent to the expert 214 . Each time the expert 214 receives the parameters, they are stored in a database (not shown) on the open system host 204 , via step 410 . When the user is ready to view the disk characteristics, the user requests a report from the expert 214 , via step 412 . The expert 214 then calculates disk utilization for each disk in the array 206 from the parameters stored in the database, via step 414 , using the disk utilization routine 216 . For a computer system 200 which uses an ESS disk subsystem, the formula for the average disk utilization per disk is as follows:

The formula is derived based upon the fields which are provided by the microcode and their meaning, and an understanding of the internal working of the hardware of the disk subsystem 202 . For example, the formula takes into account how a read, write, and stride write destages are performed by the disk subsystem 202 , and how the cache 208 and the disk array 206 are involved. For this formula, U is a number between 0 and 1. Once calculated, the expert 214 then displays the report, which includes disk utilization, via step 416 . The report may be in a tabular or graphical form. Disk utilization for each disk in the array 206 may be displayed as a percentage, representing the amount of time a disk is in use during the interval of time, T.

The parameters of the microcode described above is part of a proposed standard currently before the Storage Network Industry Association (SNIA). If the parameters are adopted as the standard, then the method and system of the present invention may be used to conform disk utilization reporting to this standard.

A method and system for providing parameters for a disk subsystem to an open system host has been disclosed. The method and system is able to provide disk utilization which is understandable to the open system host. The disk utilization is provided by collecting the relevant parameters from the microcode in the processor of the disk subsystem, and then calculating the average disk utilization per disk based upon the parameters. Thus, an open system host is able to obtain a useful characteristic for determining the performance of the disk subsystem.