The present invention generally relates to the management of removable media. The present invention specifically relates to managing removable media in a manner that achieves a high availability of the removable media to client applications, an effective load balancing of the removable media, and an efficient error recovery of removable media.
A Media Management System (“MMS”) is a distributed, multi-platform system for managing removable media either in the form of computer media (e.g., magnetic tape, optical disk, and CD-ROM) or in the form of non-computer media (e.g., audiotape, video tape, file, audio CDs and videodiscs). IEEE standards for the MMS define a software component model for working with the removable media as well as a number of protocols that define interfaces between the various software components of the MMS. These standards enable vendors to construct applications that use removable media as well as components of a MMS that interoperate with other MMS components.
MMSs are more and more becoming the central interface for accessing removable media in a storage networking environment. As such, a MMS has to be highly available in order to provide access to the removable media whenever it is needed. This can be achieved with various known techniques (e.g., load balancing and error recovery). A challenge therefore for the removable media storage industry is to implement a highly available removable media storage network environment employing a MMS in accordance with the IEEE standards.
One form of the present invention is signal bearing medium tangibly embodying a program of machine-readable instructions executable by at least one processor to perform operations to enhance a management of a removable media system by a media management system. The operations comprise a determination of an operational state of the removable media system, and an enhancement of an availability and a performance of the removable media system as managed by the media management system, wherein one or more one error recovery techniques are conditionally initiated based on the determined operational state of the removable media system and wherein the media management system is conditionally reconfigured based on the determined operational state of the removable media system.
A second form of the present invention is a system comprising at least one processor and at least one memory storing instructions operable with the processor(s) for enhancing a management of a removable media system by a media management system. The instructions are executed for determining an operational state of the removable media system, and an enhancing an availability and a performance of the removable media system as managed by the media management system, wherein one or more one error recovery techniques are conditionally initiated based on the determined operational state of the removable media system and wherein the media management system is conditionally reconfigured based on the determined operational state of the removable media system.
A third form of the present invention is method comprising a determination of an operational state of the removable media system, and an enhancement of an availability and a performance of the removable media system as managed by the media management system, wherein one or more one error recovery techniques are conditionally initiated based on the determined operational state of the removable media system and wherein the media management system is conditionally reconfigured based on the determined operational state of the removable media system.
The forgoing forms and other forms, objects, and aspects as well as features and advantages of the present invention will become further apparent from the following detailed description of the various embodiments of the present invention, read in conjunction with the accompanying drawings. The detailed description and drawings are merely illustrative of the present invention, rather than limiting the scope of the present invention being defined by the appended claims and equivalents thereof.
In one embodiment, as is well known in the art, media management system 20 employs one or more software managers serving a central repository for metadata that describes the tape drives of tape system(s) 60, the tape cartridges of tape system(s) 60, client application(s) 10, libraries 62 of tape system(s) 60, and the usage history of media management system 30. Additionally, the software manager(s) of media management system 20 facilitate access by client application(s) 10 to tape system(s) 60, and arbitrate competing demands by client application(s) 10 for tape system(s) 60.
An operation of media management agent 30 will now be described herein in connection with
Referring to
A stage S74 of flowchart 70 encompasses media management agent 30 enhancing the availability and performance of the assigned tape system 60 for client application(s) 10 as managed by media management system 20. In one embodiment of stage S74, media management agent 30 conditionally initiates one or more error recovery techniques of the tape drives and/or the tape cartridges of the assigned tape system 60 based on the determined operational state of the assigned tape system 60. For example, media management agent 30 can use the operational information OINFO to detect trends and/or faults in the assigned tape system 60 that is resulting or may result in an unacceptable availability and/or performance of the assigned tape system 60 to thereby initiate error recovery techniques of the tape drives and/or the tape cartridges of the assigned tape system 60 in response to a detection of such trends and/or faults.
Additionally, media management agent 30 conditionally issues reconfiguration commands RECON as illustrated in
In practice, the manner by which media management agent 30 executes this embodiment of stage S74 is without limit. Thus, the following description in connection with
If media management agent 30 decides during a stage S88 of flowchart 80 that the tape drive is operationally ready to be accessed by a client application 10 after an implementation of the error recovery technique, then media management agent 30 proceeds to a stage S90 of flowchart 80 to command media management system 20 to enable the error recovered tape drive in media management system 20, and subsequently terminates flowchart 80 or returns to stage S82 to test the readiness of another tape drive of the assigned tape system 60. Otherwise, during a stage S92 of flowchart 80, media management agent 30 performances any necessary administrative tasks to facilitate a repair of the disabled tape drive, such as, for example, contact a storage network administrator.
Referring to
After conditionally executing or not executing stages S126 and S128, media management agent 30 will command media management system 20 to adjust the priority of the tape drive. In one embodiment, the priority of the tape drive is adjusted by a calculating the priority as a difference between a maximum priority (“maxpriority”) of the tape drive and a mount factor of the tape drive, which is based on a difference of the maximum priority of the tape drive and a ratio of the number of recorded mounts of the tape drive to a maximum allowable number of mounts of the tape drive (“maxpriority−(mounts/maxmounts)”). Thereafter, media management agent 30 terminates flowchart 120.
Referring to
After conditionally executing or not executing stage S146, media management agent 30 will command media management system 20 to adjust the priority of the tape drive. In one embodiment, the priority of the tape drive is adjusted by a calculating the priority as a difference between a maximum priority (“maxpriority”) of the tape drive and an error factor of the tape drive, which is based on a difference of the maximum priority of the tape drive and a ratio of the number of recorded errors of the tape drive to a maximum allowable number of errors of the tape drive (“maxpriority−(errors/maxerrors)”). Thereafter, media management agent 30 terminates flowchart 120.
Referring to
If media management agent 30 decides during a stage S158 of flowchart 150 that one or more visible alternate routes from one of the servers 40 via SAN fabric 50 to the tape drive TD of the assigned tape system 60 does exist, then media management agent 30 proceeds to a stage S162 of flowchart 160 to notify media management system 20 of the visible alternative route(s). Otherwise, media management agent 30 proceeds to a stage S160 of flowchart 150 to disable the tape drive in media management system 20 and perform any necessary administrative tasks. After executing either stage S160 or stage S162, media management agent 30 terminates flowchart 150 or returns to stage S152 to obtain access route statistics on another tape drive of the assigned tape system 160.
Referring to
Furthermore, media management agent 30 can implement the various methods of the present invention on a continual basis, a periodic basis, an intermittent basis, or an event basis. For example, media management agent 30 can register with media management system 20 to be notified when a tape cartridge has been unmounted from an assigned tape system 60 whereby media management agent 30 will sequentially implement flowchart 80 (
Referring to
While the embodiments of the present invention disclosed herein are presently considered to be preferred embodiments, various changes and modifications can be made without departing from the spirit and scope of the present invention. The scope of the invention is indicated in the appended claims, and all changes that come within the meaning and range of equivalents are intended to be embraced therein.
This application is a continuation of U.S. patent application Ser. No. 11/125,709, filed on May 10, 2005, which patent application is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4769782 | Iwanaga | Sep 1988 | A |
5212772 | Masters | May 1993 | A |
5347407 | Solhjell et al. | Sep 1994 | A |
5546533 | Koyama | Aug 1996 | A |
5630076 | Saulpaugh et al. | May 1997 | A |
5802365 | Kathail et al. | Sep 1998 | A |
5832522 | Blickenstaff et al. | Nov 1998 | A |
6038379 | Fletcher et al. | Mar 2000 | A |
6154850 | Idleman et al. | Nov 2000 | A |
6279074 | Pence | Aug 2001 | B1 |
6334195 | DeKoning et al. | Dec 2001 | B1 |
6401214 | Li | Jun 2002 | B1 |
6487644 | Huebsch et al. | Nov 2002 | B1 |
6604160 | Le et al. | Aug 2003 | B1 |
6728831 | Bridge | Apr 2004 | B1 |
6763438 | Ogawa et al. | Jul 2004 | B2 |
6766412 | Bolt | Jul 2004 | B2 |
6925530 | Busser et al. | Aug 2005 | B2 |
6957291 | Moon et al. | Oct 2005 | B2 |
6963958 | Linder | Nov 2005 | B2 |
7075874 | Rushton et al. | Jul 2006 | B2 |
7171671 | Snead et al. | Jan 2007 | B2 |
7366800 | Flynn, Jr. | Apr 2008 | B2 |
20030074378 | Midgley et al. | Apr 2003 | A1 |
20040044770 | Messick et al. | Mar 2004 | A1 |
Number | Date | Country |
---|---|---|
2004061642 | Jul 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20090113129 A1 | Apr 2009 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11125709 | May 2005 | US |
Child | 12258333 | US |