A method and apparatus for maintaining information in one or more virtual volume aggregates comprising a plurality of virtual volumes. The method maintains a plurality of virtual volumes in a first information storage medium, and forms one or more virtual volume aggregates, where each of the of virtual volumes is assigned to one of the virtual volume aggregates. The method further provides a plurality of second information storage media. The method then identifies the least recently used virtual volume, and writes the virtual volume aggregate comprising that least recently used virtual volume to one or more second information storage media. Thereafter, the method determines if space is required on said first information storage medium. If space is required on said first information storage medium, the method selects the virtual volume aggregate comprising the least recently used virtual volume and removes from said first information storage medium each virtual volume in that selected virtual volume aggregate that has been written to one or more second information storage media.
Drawings
Claims24
A method for maintaining information in one or more virtual volume aggregates, comprising the steps of:
maintaining (N) virtual volumes in a first information storage medium comprising a direct access storage device file buffers;
N≧1
forming one or more virtual volume aagregates, wherein each of said plurality of virtual volumes is assigned to one of said one or more virtual volume aggregates;
providing a plurality (M) of second information storage media;
identifying the least recently used virtual volume;
and
writing the virtual volume aggregate comprising said least recently used virtual volume to one or more second information storage media;
generating (M) identifiers, wherein (M) is greater than 1;
assigning an identifier (j) to one or more of said (N) virtual volumes, wherein (j) is greater than or equal to 1 and less than or equal to (M);
assigning one of said (M) identifiers to each of said plurality of second information storage media;
and
writing one or more least recently used virtual volumes assigned the identifier (j) to one or more second information storage media assigned the identifier (j).
9 more elements
A method for maintaining information in one or more virtual volume aggregates, comprising the steps of:
maintaining a plurality of virtual volumes in a first information storage medium;
forming one or more virtual volume aggregates, wherein each of said plurality of virtual volumes is assigned to one or more virtual volume aggregates;
providing a plurality of second information storage media;
identifying the least recently used virtual volume;
writing the virtual volume aggregate comprising said least recently used virtual volume to one or more second information storage media;
determining if space is required on said first information storage medium;
operative if space is required on said first information storage medium;
selecting the virtual volume aggregate comprising the least recently used virtual volume;
removing from said first information storage medium each virtual volume in said selected virtual volume aggregate that has been written to one or more second information storage media.
6 more elements
An article of manufacture comprising a computer useable medium having computer readable program code disposed therein to maintain a plurality of virtual volumes in one or more virtual volume aggregates, the computer readable program code comprising a series of computer readable program steps to effect:
maintaining (N) virtual volumes in a first information storage medium comprising a direct access storage device file buffers;
N≧1
forming one or more virtual volume aggregates, wherein each of said plurality of virtual volumes is assigned to one of said one or more virtual volume aggregates;
providing a plurality (M) of second information storage media;
identifying the least recently used virtual volume;
and
writing the virtual volume aagregate comprising said least recently used virtual volume to one or more second information storage media;
generating (M) identifiers, wherein (M) is greater than 1;
assigning an identifier (j) to one or more of said (N) virtual volumes, wherein (j) is greater than or equal to 1 and less than or equal to (M);
assigning one of said (M) identifiers to each of said plurality of second information storage media;
and
writing one or more least recently used virtual volumes assigned the identifier (j) to one or more second information storage media assigned the identifier (j).
9 more elements
An article of manufacture comprising a computer useable medium having computer readable program code disposed therein to maintain a plurality of virtual volumes in one or more virtual volume aggregates, the computer readable program code comprising a series of computer readable program steps to effect:
maintaining a plurality of virtual volumes in a first information storage medium;
forming one or more virtual volume aggregates, wherein each of said plurality of virtual volumes is assigned to one or more virtual volume aggregates;
providing a plurality of second information storage media;
identifying the least recently used virtual volume;
writing the virtual volume aggregate comprising said least recently used virtual volume to one or more second information storage media;
determining if space is required on said first information storage medium;
operative if space is required on said first information storage medium;
selecting the virtual volume aggregate comprising the least recently used virtual volume;
removing from said first information storage medium each virtual volume in said selected virtual volume aggregate that has been written to one or more second information storage media.
6 more elements
A computer program product usable with a programmable computer processor having computer readable program code embodied therein to maintain a plurality of virtual volumes in one or more virtual volume aggregates, comprising:
computer readable program code which causes said programmable computer processor to maintain (N) virtual volumes in a first information storage medium comprising a direct access storage device file buffers;
N≧1
computer readable program code which causes said programmable computer processor to form one or more virtual volume aggregates, wherein each of said plurality of virtual volumes is assigned to one of said one or more virtual volume aggregates;
computer readable program code which causes said programmable computer processor to identify the least recently used virtual volume;
and
computer readable program code which causes said programmable computer processor to write the virtual volume aagregate comprising said least recently used virtual volume to one or more (M) second information storage media;
computer readable program code which causes said programmable computer processor to generate (M) identifiers, wherein (M) is greater than 1;
computer readable program code which causes said programmable computer processor to assign an identifier (j) to one or more of said (N) virtual volumes, wherein (j) is greater than or equal to 1 and less than or equal to (M);
computer readable program code which causes said programmable computer processor to assign one of said (M) identifiers to each of said plurality of second information storage media;
and
computer readable program code which causes said programmable computer processor to write one or more least recently used virtual volumes assigned the identifier (j) to one or more second information storage media assigned the identifier (j).
8 more elements
A computer program product usable with a programmable computer processor having computer readable program code embodied therein to maintain a plurality of virtual volumes in one or more virtual volume aggregates, comprising:
computer readable program code which causes said programmable computer processor to maintain a plurality of virtual volumes in a first information storage medium;
computer readable program code which causes said programmable computer processor to form one or more virtual volume aggregates, wherein each of said plurality of virtual volumes is assigned to one of said one or more virtual volume aggregates;
computer readable program code which causes said programmable computer processor to provide a plurality of second information storage media;
computer readable program code which causes said programmable computer processor to identify the least recently used virtual volume;
computer readable program code which causes programmable computer processor to write the virtual volume aggregate comprising said least recently used virtual volume to one or more second information storage media;
computer readable program code which causes said programmable computer processor to determine if space is required on said first information storage medium;
computer readable program code which, if space is required on said first information storage medium, causes said programmable computer processor to select the virtual volume aggregate comprising the least recently used virtual volume, and to remove from said first information storage medium each virtual volume in said selected virtual volume aggregate that has been written to one or more second information storage media.
12 Mar 2023Estimated · howhide20 years from earliest known nonprovisional domestic filing plus recorded patent term adjustment, including 195 days of adjustment. Maintenance-fee lapses, terminal disclaimers and statutory extensions have not been checked. The continuity chain may be incomplete; this is not an enforceability determination.
Assigned to International Business Machines Corporationassignment of assignor's interest
PublishedUS 2004/0044860 A1
GrantedUS 6,889,302 B2
Term endedEstimated, includes 195 days of adjustment
Description4,981 words
Summary476 words
#Applicant's invention relates to an apparatus and method to maintain computer files in one or more virtual volume aggregates, where each of those virtual volume aggregates includes a plurality of individual virtual volumes.
#In hierarchical computer storage systems, intensively used and fast storage is paired with arrays of slower and less frequently accessed data devices. One example of high-speed, expensive memory is a direct access storage device file buffer (DASD). Slower storage devices include tape drives and disk drive arrays, which are less expensive than a DASD.
#One such hierarchical storage system is a virtual tape storage system. Such a virtual tape storage system may include, for example, one or more virtual tape servers (“VTS”) in combination with one or more data storage and retrieval systems, such as the IBM TotalStorage® 3494 Enterprise Tape Library. During operation, the virtual tape storage system is writing data from a host to the numerous data storage devices disposed in the one or more data storage and retrieval systems.
Brief description of the drawings10 figures
#The invention will be better understood from a reading of the following detailed description taken in conjunction with the drawings in which like reference designators are used to designate like elements, and in which:
#FIG. 1 is a perspective view of a first embodiment of Applicant's data storage and retrieval system;
#FIG. 2 is a perspective view of a second embodiment of Applicant's data storage and retrieval system;
Detailed description4,297 words
#Referring to the illustrations, like numerals correspond to like parts depicted in the figures. The invention will be described as embodied in a virtual tape server in combination with an automated data storage and retrieval subsystem for use in a data processing environment. The following description of Applicant's apparatus and method is not meant, however, to limit Applicant's invention to either data storage and retrieval systems, or to data processing applications, as the invention herein can be applied to data storage in general.
#FIG. 3 illustrates the hardware and software environment in which preferred embodiments of the present invention are implemented. Virtual tape server (VTS) 300 is pictured, operatively coupled to a host computer 390. In certain embodiments, host computer 390 comprises a single computer. In alternative embodiments, host computer 390 comprises one or more mainframe computers, one or more work stations, one or more personal computers, combinations thereof, and the like.
#Host computer 390 communicates with VTS 300 via communication link 392 with a host-to-data interface 380 disposed within the virtual tape server 300. Communication link 392 comprises a serial interconnection, such as an RS-232 cable or an RS-432 cable, an ethernet interconnection, a SCSI interconnection, a Fibre Channel interconnection, an ESCON interconnection, a FICON interconnection, a Local Area Network (LAN), a private Wide Area Network (WAN), a public wide area network, Storage Area Network (SAN), Transmission Control Protocol/Internet Protocol (TCP/IP), the Internet, and combinations thereof. In certain embodiments, the host-to-data interface 380 comprises an IBM Enterprise Systems Connection (ESCON) and communication link 392 comprises a fiber optic local area network used to link mainframes to disk drives or other mainframes.