Abstract:
A method for balancing workloads in media library access systems that provide multiple accessors disposed within a library. Each of the accessors is assigned a given zone of primary access wherein each of the zones of primary access has at least one boundary. Accessor usage is calculated by adding a score for each access to total accesses for each accessor. The totals are evaluated to determine that one or more of the boundaries requires adjustment and the boundaries are adjusted in accordance with the evaluation. By changing the average span of each accessor dynamically, the method can equalize the use of each accessor, minimizing library latency.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention generally relates to computer media libraries, and more particularly to a library access system with workload balancing and a method for improving the performance of media libraries by balancing the workload between accessors. 
     2. Description of Related Art 
     Library access systems are used to house large quantities of data. The data are stored on media such as magnetic tapes, optical or magnetic discs, or other suitable long-term storage. 
     Conventional library access systems use multiple accessors, essentially dedicated robots, to move media between storage locations and mounting locations, often known as “drives” where the media can be read from and/or written to. These accessors are typically mounted on tracks alongside the media storage locations and are controlled by computer algorithms developed for positional control and indexing of the media. Specific portions of the library can be accessed by looking up the specific media containing desired data, moving an accessor to the location, using the accessor to move the media to the mounting location, and mounting the media in a drive. When the use of the media is complete, the accessor retracts the media and returns it to its storage cell. 
     Library access systems organize the cells in frames, which may have one or more drives located in them. The frames typically contain hundreds of storage cells and the access systems may contain tens of frames. 
     Various control algorithms have been developed for optimizing the operation of library access systems, and various schemes for the relationship of accessors to drives have been devised. In some systems, the accessors are assigned to a specific, fixed zone in which one or more drives are located. This has a disadvantage in that when all of the drives in the zone are busy, data located in the zone is inaccessible. 
     More sophisticated techniques have been used, in which accessors are allowed access to the full library, but either the entire control of the library is integrated in one control system to avoid collisions or the accessors inter-communicate for this purpose. The library is typically divided into zones, where a particular zone is accessed by one accessor, but when that accessor is busy or the drives in that zone are busy, another accessor or another drive can be used to accomplish the retrieval and mount of the media. 
     A primary access zone is the zone primarily assigned to an accessor. Under low use conditions, an accessor will just operate in its primary zone. But, as system use increases, accessors will increasingly need access to drives or media outside of their primary access zone. Systems using the above techniques must provide a means for avoiding collisions. The typical collision avoiding means is to move another accessor out of the way of an accessor that needs access to a drive or media. 
     The above techniques improve the performance of the library, but they do not solve a particular problem: some zones of the library may see more use than other zones, and this affects the potential throughput of the system. If all drives can be used equally, this will maximize the use of the system and will also make maintenance more uniform while simultaneously increasing reliability. 
     Umegaki (JP Kokai 4-313854) describes a method for balancing “shifting mechanism” workloads to increase reliability, and accomplishes this by shutting down one of the accessors when the use of one accessor is greater than the use of a second accessor by a threshold. This will increase reliability, but does not improve performance over the single accessor design, since only the accessor with a lower action count will be operated. 
     It would, therefore, be desirable to provide a method for balancing the workloads of accessors in library access systems in order to improve performance. This would also tend to equalize the mechanical wear of the accessors, so as to provide faster throughput and increased reliability, but allowing two or more accessors to operate at the same time. 
     SUMMARY OF THE INVENTION 
     It is therefore one object of the present invention to provide an improved method for balancing workloads in library access systems. 
     It is another object of the present invention to provide such a method which makes more efficient use of accessors which retrieve storage media. 
     The foregoing objects are achieved in a method for balancing workloads in a media library access system and further in embodiments of a media library access system that provides a plurality of accessors disposed within a library wherein each of said accessors is assigned a given one of a plurality of zones of primary access each having at least one boundary, calculates accessor use by adding a score for each access to a plurality of totals, evaluates the plurality of totals to determine that one of the boundaries requires adjustment and adjusts that boundary in response to the evaluation. 
     The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives, and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein: 
     FIG. 1 is a schematic diagram of a library access system in which the present invention may be practiced. 
     FIG. 2 is a flow diagram of one method for balancing workloads in library access systems in accordance with the present invention. 
     FIG. 3 is a functional block diagram of the control system in one embodiment of a library access system in accordance with the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     With reference now to the figures, and in particular with reference to FIG. 1, one embodiment of a library access system is depicted in accordance with the present invention. 
     The library access system comprises a media storage  14 , which contains Frames  26  which contain columns  25  for the storage of media, such as tapes, optical or magnetic disks, and other storage media. Columns  25  contain individual cells for each media item, disposed along the axis perpendicular to rail  12 . The Frames  26 , may also contain drives for reading and writing the media. Accessors  16  and  18  move along a rail  12  positioned such that they can remove and replace media from the columns  25  in a Frame  26 . Control connections  28 , which may be flexible harnesses, may be replaced by other suitable means such as an infrared or radio communications links. Drive  17  and  19  are positioned so that accessors  16  and  18  can insert or remove media. Controller  20  provides control signals for moving and operating accessors  16  and  18 . The controller may be a general purpose computer, a dedicated computer control system or may be embodied in one or more integrated circuits. Controller  20  may also comprise an individual controller for each accessor  16 ,  18  or a group of accessors. 
     The library access system may use input/output stations, where media is deposited for mounting in a drive or for later return to storage cells. Accessors may uniformly perform all tasks of mounting, retrieving and restoring, or these tasks may be assigned to specific accessors. Types of access include mounting, which is the mounting of media in a drive in order that the media can be read or written, insertion, which is placing the media in a storage cell after retrieving it from an input/output station, or ejection, which is retrieving that media from a storage cell and taking it to an input/output station. Demounting is removal of the media from the mounted state on a drive. 
     Within the library access system, accessors may have the ability to travel to any location or column within the axis of motion. However, to avoid collisions, and for efficiency considerations, the range of motion for an accessor is generally limited to a zone of primary access, and the accessor operates outside this zone only infrequently as compared to the primary access zone. By limiting the accessors primarily to one zone, efficiency rises as accessors do not have to move out of the way for other accessors, and computation to avoid collision can be reduced. 
     The Controller  20  keeps track of the accesses that are performed by computing totals. These totals are a running representation of accessor workload, and in one embodiment of the present invention they are computed by adding values or “scores” corresponding to the priority of the particular access task performed. By evaluating these access score totals periodically, the zones of primary access for each accessor  16 , 18 , can be adjusted so that an accessor which has been in demand for high priority tasks will be assigned less primary access space, and will thus have its workload balanced with the other accessors in the system. 
     Controller  20  keeps track of the zones of primary access for accessors  16  and  18  and prevents collisions between them. Zone boundary location  24  is the initial boundary between the zone of primary access for first accessor  16  and second accessor  18 . When the ratio of the access score total for second accessor  18  to the access score total of the first accessor  16 , is greater than a threshold, the controller  20  moves the zone boundary from location  24  to location  22 . This reduces the size of the zone of primary access for accessor  18  which has the effect of reducing the workload of accessor  18 . Thus, this is a closed-loop system that will maintain an appropriate sizing of the zones in a multiple accessor system, to maintain an approximately equal use of the accessors. 
     Referring now to FIG. 2, a method for balancing workloads in a library access system is shown. Initially, the size of all zones is partitioned so that the number is of drives in the zones are generally equal ( 52 ). The zones may not have an exactly equal number of drives if, for example, there are an odd number of drives in the system. But, other initial zone assignments might be made without departing from the spirit and scope of the invention. As the accessors are used, access values are added to accumulated totals for each accessor ( 54 ). In the exemplary method, the score is 1 for a ejection of media, 2 for insertion of media and 3 for mounting media in a drive. Demounting is given a score of 0 (not counted). This by way of example and does not limit the possible ways to calculate an access score that are contemplated by the essence of this invention, including providing a score for the demount operation. This exemplary scoring system has the effect of giving more weight to operations which are higher priority, so that the totals more closely represent the use in order of importance of the accesses than would a mere tally of accesses. The access score total for one accessor is periodically compared to the access score total for a second accessor by ratio ( 56 ). This comparison is conditioned on watching the total of all access scores accumulated by the system, but could be conditioned on other events such as a fixed time interval. If the ratio exceeds 1:1.5, zone size of the accessor with the higher score is reduced by one frame ( 58 ). The ratio threshold is not limited to 1:1.5, and the decision to adjust the boundary can be made on another condition, such as when the ratio of an individual accessor score to the average score of all accessors exceeds a threshold. 
     Further, it is not necessary that the zone size adjustment always be by one frame, or that only one side of a zone in a system comprising three or more accessors be adjusted. For example, in a system with a large number of accessors, ratiometrically exceeding an average score may condition a reduction of zone size by shrinking both sides of an accessor&#39;s zone of primary access by one frame. Adjustment of zone size may be made in increments of a number of columns or may be as fine as a fraction of a column in some implementations. 
     Referring to FIG. 3, a functional block diagram of the control electronics in the improved library access system is shown. The blocks and elements shown may be implemented in an electronic circuit, or embodied in a process running on a general purpose microcomputer. Accessors  42  and  44  provide access type info (ejection, insertion, or mount) to the Controller  20 , and the controller  20  provides control signals to move and otherwise control accessors  42  and  44 . The access type info is not necessary as feedback from accessors  42  and  44 , if the controller internally keeps track of the accesses and access types that it has directed. This is the case where the controller is embodied in a software program. 
     The access type info is fed to score calculators  32 A and  32 B, which assign values for each type of access and provide them to total accumulators  34 A and  34 B which maintain access scores for each accessor  42  and  44 . Evaluator  36 , compares the ratio of the totals accumulated by total accumulators  34 A and  34 B and if the ratio exceeds a threshold, signals boundary control  38  to adjust the zone boundary in the direction of the accessor  42  or  44  with the higher score. The total accumulators  34 A and  34 B are cleared after the boundary is moved, or if the sum of all the totals reaches a predetermined maximum. Position control  40 A and  40 B provide the control information to move accessors  42  and  44 , constrained by the zone boundaries maintained by boundary control  38 . 
     Although the invention has been described with reference to specific embodiments, this description should not be construed in a limiting sense. Various modifications of the disclosed embodiments, as well as alternative embodiments of the invention, will become apparent to persons skilled in the art upon reference to the description of the invention. For example, the invention may be used in a three-dimensional media storage array. It is therefore contemplated that such modifications can be made without departing from the spirit or scope of the present invention as defined in the appended claims.