CN200510113392.3
2003.08.25
CN1783027A
2006.06.07
授权
有权
授权|||实质审查的生效|||公开
G06F12/00(2006.01); G06F12/06(2006.01)
G06F12/00
国际商业机器公司;
韦恩·C.·卡尔森; 凯文·L.·基布尔; 格里高利·T.·基什; 马克·A.·诺曼; 乔纳森·W.·皮克
美国纽约
2002.08.29 US 10/230,522
中国国际贸易促进委员会专利商标事务所
李勇
在此提供一种用于在存储池中的返回处理的方法、系统和产品。多个物理卷被分配给第一存储池。确定该第一存储池是否具有大于一个阈值数目的空白物理卷。如果第一存储池具有大于阈值数目的空白物理卷,则至少一个空白物理卷被返回到第二存储池。
1. 一种用于在存储池中的返回处理的方法,该方法包括:确定第一存储池是否已经在第一经过时间周期内被更新;以及如果第一存储池没有在第一经过时间周期内被更新,则:(i)把保留在第一物理卷中的物理卷的数目设置为0;(ii)禁止从第二存储池把物理卷借用到第一存储池;以及(iii)允许物理卷从第一存储池返回。2. 根据权利要求1所述的方法,其中进一步包括:根据时间记录第一存储池已经经受空白物理卷的返回,其中记录是在耦合到第一存储池的字段中进行的,并且其中该字段还能够记录第一存储池的更新时间。3. 根据权利要求1所述的方法,其中第一存储池是数据池,其中第二存储池是临时池,以及其中第一存储池从第二存储池借用至少一个物理卷。4. 根据权利要求1所述的方法,其中通过监视第一存储池和其他存储池的一个监视应用程序定期地执行该确定步骤。5. 根据权利要求1所述的方法,其中进一步包括:如果第一存储池在第二经过时间周期中被更新则允许在第一存储池中的正常返回和借用,其中第二经过时间周期小于第一经过时间周期。6. 根据权利要求1所述的方法,其中进一步包括:确定第一存储池是否已经在第二经过时间周期内被更新,其中第二经过时间周期小于第一经过时间周期;以及如果第一存储池还没有在第二经过时间周期内被更新,则:(i)把要保留在第一存储池中的物理卷的数目设置为3;(ii)禁止从第二存储池向第一存储池借用物理卷;以及(iii)允许从第一存储池返回物理卷。7. 一种用于在存储池中的返回处理的系统,该系统包括:第一存储池;第二存储池;用于确定第一存储池是否已经在第一经过时间周期内被更新的装置;以及如果第一存储池没有在第一经过时间周期内被更新,用于把保留在第一物理卷中的物理卷的数目设置为0的装置;如果第一存储池没有在第一经过时间周期内被更新,禁止从第二存储池把物理卷借用到第一存储池的装置;以及如果第一存储池没有在第一经过时间周期内被更新,用于允许物理卷从第一存储池返回的装置。8. 根据权利要求7所述的系统,其中进一步包括:用于根据时间记录第一存储池已经经受空白物理卷的返回的装置,其中记录是在耦合到第一存储池的字段中进行的,并且其中该字段还能够记录第一存储池的更新时间。9. 根据权利要求7所述的系统,其中第一存储池是数据池,其中第二存储池是临时池,以及其中第一存储池从第二存储池借用至少一个物理卷。10. 根据权利要求7所述的系统,其中通过监视第一存储池和其他存储池的一个监视应用程序定期地执行该确定步骤。11. 根据权利要求7所述的系统,其中进一步包括:如果第一存储池在第二经过时间周期中被更新,用于允许在第一存储池中的正常返回和借用的装置,其中第二经过时间周期小于第一经过时间周期。12. 根据权利要求7所述的系统,其中进一步包括:用于确定第一存储池是否已经在第二经过时间周期内被更新的装置,其中第二经过时间周期小于第一经过时间周期;以及如果第一存储池还没有在第二经过时间周期内被更新,用于把要保留在第一存储池中的物理卷的数目设置为3的装置;如果第一存储池还没有在第二经过时间周期内被更新,用于禁止从第二存储池向第一存储池借用物理卷的装置;以及如果第一存储池还没有在第二经过时间周期内被更新,用于允许从第一存储池返回物理卷的装置。13. 一种用于在存储池中的返回处理的产品,该产品能够执行操作,该操作包括:确定第一存储池是否已经在第一经过时间周期内被更新;以及如果第一存储池没有在第一经过时间周期内被更新,则:(i)把保留在第一物理卷中的物理卷的数目设置为0;(ii)禁止从第二存储池把物理卷借用到第一存储池;以及(iii)允许物理卷从第一存储池返回。14. 根据权利要求13所述的产品,其中进一步包括:根据时间记录第一存储池已经经受空白物理卷的返回,其中记录是在耦合到第一存储池的字段中进行的,并且其中该字段还能够记录第一存储池的更新时间。15. 根据权利要求13所述的产品,其中第一存储池是数据池,其中第二存储池是临时池,以及其中第一存储池从第二存储池借用至少一个物理卷。16. 根据权利要求13所述的产品,其中通过监视第一存储池和其他存储池的一个监视应用程序定期地执行该确定步骤。17. 根据权利要求13所述的产品,其中进一步包括:如果第一存储池在第二经过时间周期中被更新则允许在第一存储池中的正常返回和借用,其中第二经过时间周期小于第一经过时间周期。18. 根据权利要求13所述的产品,其中进一步包括:确定第一存储池是否已经在第二经过时间周期内被更新,其中第二经过时间周期小于第一经过时间周期;以及如果第一存储池还没有在第二经过时间周期内被更新,则:(i)把要保留在第一存储池中的物理卷的数目设置为3;(ii)禁止从第二存储池向第一存储池借用物理卷;以及(iii)允许从第一存储池返回物理卷。
用于返回物理卷的方法、系统和产品 本申请是申请号为03154959.4,申请日为2003年8月25日,发明名称为“用于返回物理卷的方法、系统和产品”的申请的分案申请。 技术领域 本发明涉及用于返回物理卷的方法、系统和产品。 背景技术 在现有的虚拟磁带存储系统中,硬盘驱动存储器模拟磁带驱动器和盒式磁带。例如,主机系统通过对模拟磁带库的一组硬盘驱动器执行I/O操作,主机系统对一个磁带库执行输入/输出(I/O)操作。在现有的虚拟磁带存储系统中,例如国际商业机器公司(IBM)Magster**虚拟磁带服务器,至少一个虚拟磁带服务器(VTS)耦合到一个磁带库,其中包括多个磁带驱动器和盒式磁带。VTS还耦合到直接存取存储器(DASD),其中包括多个互连的硬盘驱动器。 DASD作为1个用于磁带库中的卷的高速缓冲存储器。在VTS操作中,VTS处理主机访问磁带库中的卷的请求,并且如果可能的话从高速缓冲存储器返回用于该请求的数据。如果该卷不在高速缓冲存储器中,则VTS从磁带库中把该卷再调用到高速缓冲存储器,即,VTS把来自磁带库的数据传输到高速缓冲存储器。VTS可以比对必须从磁带库再调用到高速缓冲存储器的卷的请求快得多地响应主机对的存在于高速缓冲存储中的卷的请求。但是,由于高速缓冲存储器的容量与磁带库的容量相比相对较小,因此并非所有卷可以被保持在高速缓冲存储器中。因此,VTS预先把卷从高速缓冲存储器转移到磁带库,即,VTS把数据从高速缓冲存储器传送到在磁带库中的盒式磁带。 磁带库可以包括多个存储池。每个存储池可以包括零个、1个或多个盒式磁带。来自主机的请求可以识别将被写入特定数据的存储池。 虽然使用在虚拟磁带库中的存储池,在本领域中需要用于在虚拟磁带库系统中管理存储池的改进技术。 发明内容 在此提供一种用于在存储池中的返回处理的方法、系统和产品。多的物理卷被分配到第一存储池。判断该第一存储池是否具有大于空白物理卷的阈值数目。如果第一存储池具有大于空白物理卷的阈值数目,则至少一个空白物理卷被返回到第二存储池。在特定的应用中,返回的物理卷比存在于第一存储池中的其他空白物理卷得到更多的使用。 在进一步的应用中,第一存储池是一个数据池,第二存储池是一个临时池(scratch pool),第一存储池能够从第二存储池借用在第一存储池中的附加物理卷,并且阈值数目是3。 附加的应用提供用于在存储池中的返回处理的一种方法、系统和产品。判断第一存储池是否已经在第一经过时间周期中被更新。如果第一存储池还没有被在第一经过时间周期中更新,则在第一存储池中保留的多个物理卷被设置为0,并且禁止从第二存储池向第一存储池借用物理卷,并且允许从第一存储池返回物理空间。 在进一步的应用中,如果第一存储池已经在第二经过时间周期中被更新,则允许在第一存储池中的正常返回和借用,其中第二经过时间周期小于第一经过时间周期。 在更进一步的应用中,判断第一存储池和是否已经在第二经过时间周期中被更新,其中第二经过时间周期小于第一经过时间周期。如果第一存储池还没有在第二经过时间周期中被更新,则保留在第一存储池中的物理卷的数目被设置为3,禁止从第二存储池向第一存储池借用物理卷,并且允许从第一存储池返回物理卷。 该应用通过提供在物理卷已经被使用并且为空时把物理卷返回到临时池的改进技术而基本上均匀地利用物理卷。在特定的应用中,至少三个已经被使用的空白物理卷被保留在每个存储池中。特定的应用还通过限制要被最近的有效池所使用的借用和返回处理而减少不必要的物理卷的借用和返回。另外,当一个池已经在一段延长的时间周期中被无效时,来自该无效池的空白物理卷可以被返回到该临时池。因此,物理卷被数据池所共享和更加经常地重复使用,并且被基本上均匀地使用。 附图说明 现在参照附图,其中相同的参考标号由相应的部分所表示: 图1示出根据本发明的特定所述方面的计算环境的方框图; 图2示出根据本发明的特定所述应用的被分为多个池的物理卷的方框图; 图3示出根据本发明的特定所述应用的池数据结构的方框图; 图4示出根据本发明的特定所述应用地物理卷数据结构的方框图; 图5通过一个流程图和相应的表格示出根据本发明的特定所述应用的一个物理卷在相同池中的整个寿命周期的处理; 图6通过一个流程图和相应的表格示出根据本发明的特定所述应用的从一个池借用一个物理卷然后返回到该原始池的处理; 图7通过一个流程图和相应的表格示出根据本发明的特定所述应用的一个物理磁带卷被借用到一个池、用于该池中、然后在相同词中被重新使用的处理; 图8示出根据本发明的特定所述应用更新用于在该池数据结构中的有效数据时间标记的逻辑; 图9示出根据本发明的特定所述应用用于借用和返回用于一个池的物理卷的逻辑; 图10示出根据本发明的特定所述应用用于返回物理卷的处理的逻辑; 图11示意地示出根据本发明的特定所述应用用于借用物理卷的处理的逻辑; 图12示出根据本发明的特定所述应用可以应用于物理卷的借用规则的表格; 图13示出根据本发明的特定所述应用根据特定借用规则的用于物理卷的借用处理的逻辑;以及 图14示出应用本发明的特定所述方面的计算机构架的方框图。 具体实施方式 在下文的描述中,参照形成本申请文件的一部分并且说明几个应用的附图。应当知道可以利用其他实现方式,并且可以作出结构和操作的改变而不脱离本发明应用的范围。 图1示出使用虚拟磁带服务器(VTS)100的计算环境。可以配置其他VTS,但是为了说明的目的,仅仅示出一个VTS100。VTS 100是本领域所公知的任何服务器计算设备,并且包括任何本领域中所公知的操作系统。例如,在本发明的特定应用中,VTS 100可以被应用于一个或多个包括IBM RS/6000**系统和包括IBM AIX**操作系统的计算机中。 多个主机102a、102b、...、102n连接到VTS 100。主机102a...102n可以通过一个主机数据接口103通道连接到VTS 100,例如企业系统连接(ESCON)**通道或者任何其他直接连接和本领域所控制的交换机制(例如,光纤通道、存储区域网络(SAN)、互连等等)。主机102a...102n可以是本领域所公知的任何计算设备,例如个人计算机、工作站、服务器、大型机、手持计算机、掌上型计算机、电话设备,网络应用设备等等。主机102a...102n可以包括本领域所公知的任何操作系统,例如IBMOS/390**操作系统。 VTS 100包括至少一个中央处理单元(CPU)104以及一个应用设备,例如管理存储器的存储管理器105。该存储管理器105可以作为一个独立应用设备或作为一个或多个其他应用设备的一部分而实现。存储管理器105管理例如DASD文件缓冲器这样的高速缓冲存储器106,以及例如磁带库这样的物理库108。在特定的应用中,存储管理器105可以包括利用一个磁带库的软件,例如IBM Magster**虚拟磁带服务器,以及IBM ADSTAR分布式管理(ADSM)软件或者Tivoli**存储管理器。存储管理器105可以执行或管理在主机102a...102n、高速缓冲存储器106和物理库108之间的数据移动操作。VTS技术的进一步细节在IBM的出版物“Magster**对等虚拟磁带服务器规划和应用指南”,IBM文档号SG24-6115-00(IBM版权所有,2000),该出版物的全部内容被包含于此以供参考。 物理库108可以包括一个IBM Magster**磁带库,例如Magster**3494磁带库、或者任何其它本领域所公知的磁带库系统。在特定的应用中,物理库108包括多个物理设备110a、110b、...110n,例如磁带驱动器、CD ROM驱动器、DVD ROM驱动器、等等。该物理库108除了包括物理设备110a...110n此外还包括物理卷114a...114n。一个物理卷可以被安装在任何物理设备110a...110n上。物理卷114a...114n可以是各种媒体类型,例如盒式磁带、CD ROM、DVD等等。在特定的应用中,物理卷114a...114n可以通过机械安装到物理设备110a...110n。物理卷114a...114n的数目比物理设备110a...100n的数目更大。 高速缓冲存储器106可以包括多个互连的硬盘驱动器。高速缓冲存储器106通过允许从主机102a...102n到物理库108的主机I/O请求由相对于较慢存取的物理库108较快的存取高速缓冲存储器106所服务而提高性能。在高速缓冲存储器中的盘可以被设置为直接存取存储器(DASD)、Just a Bunch of Disks(JBOD)、冗余阵列磁盘机(RAID)等等。存储管理器105把该高速缓冲存储器106映射到多个逻辑(虚拟)设备(未示出)。主机102a...102n通过VTS100访问在逻辑设备中的逻辑(虚拟)卷116a...116n而执行I/O操作。该存储管理器105把逻辑卷116a...116n映射到物理卷114a...114n。因此,在高速缓冲存储器106中的逻辑卷116a...116n对应于在物理库108中的物理卷114a.114n。驻留在高速缓冲存储器106中的逻辑卷116a...116n可以随着时间而改变。该存储管理器105尝试保持更加倾向于使用在高速缓冲存储器中的逻辑卷116a...116n。尽管主机102a...102n可以通过逻辑卷存取数据,但是该数据被实际存储在可安装在物理设备110a...110n上的物理卷114a...114n中。 当主机102a...102n把一个逻辑卷写入到VTS 100中时,该数据被作为一个文件存储在该高速缓冲存储器106中。该高速缓冲存储的数据随后被转移到物理卷114a...114n。该原始逻辑卷被保留在高速缓冲存储器106中用于高速缓存命中。当该高速缓冲存储器106被填充到一个预定阈值时,用于所选择逻辑卷116a...116n的逻辑卷数据被从该高速缓冲存储器中删除,以获得更多的逻辑卷。在特定的应用中,该存储管理器105从高速缓冲存储器106中删除一个所选择的逻辑卷(从逻辑卷116a...116n选择),其在该高速缓冲存储器106中的驻留时间最长。 当主机102a...102n请求来自VTS 100的逻辑卷时,如果该逻辑卷驻留在该高速缓冲存储器106中,则出现一个高速缓存命中。如果该逻辑卷不驻留在该高速缓冲存储器中,则该存储管理器105确定该相应的物理卷114a...114n是否被安装在一个物理设备110a...110n上。如果该相应的物理卷114a...114n不被安装,则存储管理器105把该相应的物理卷114a...114n安装在物理设备110a...110n之一上。用于逻辑卷的数据然后被传送回去,即,从该相应的物理卷114a...114n重新调用。 物理卷114a...114n可以被逻辑地分为一个或多个存储池(在下文中被称为池)120a...120n,其中每个池120a...120n具有零个、一个或多个物理卷114a...114n。该主机102a...102n可以指定一个特定池120a...120n,并且通过存取逻辑卷116a...116n而经VTS 100读写数据。在特定的应用中,使用VTS 100的每个客户可以具有存储在一个分离池120a...120n上的客户数据,从而把每个客户数据分割在物理卷114a...114n的不同子集上。由于各种其他原因可以把物理卷114a...114n分割为池120a...120n,该原因包括在不同池中存储不同类型的数据,等等。 例如库管理器122这样应用设备耦合到VTS 100,用于管理包括池120a...120n的物理库108。在另一个应用中,库管理器122可以耦合到物理库108或者耦合到任何其他计算设备(未示出)。库管理器122可以是一个独立应用设备或者是任何其他应用设备或子系统的一部分,例如,存储管理器105、VTS 100、物理库108等等。该库管理器122可以与例如物理卷数据结构124和池数据结构126这样的各种数据结构相互作用。该物理卷数据结构124包括与物理卷114a...114n相关的数据结构的属性,并且池数据结构126包括与池120a...120n相关的数据结构的属性。该物理卷数据结构124和池数据结构126可以按照任何本领域所公知的任何方式应用于VTS 100中,例如通路表、链接列表等等。库管理器122与库管理器数据库130相互作用,其中库管理器数据库130可以存储关于池120a...120n和物理卷114a...114n的信息。在特定的应用中,库管理器数据库130包括物理卷数据结构124和池数据结构126的各种实例。库管理器数据库130可以是本领域所公知的任何数据库,例如关系、层级或面向对象数据库管理系统。例如物理卷监视器132这样的一个应用设备还可以包括在VTS 100中,其中物理卷监视器132可以监控物理卷114a...114n的功能。一个表格或等效数据结构,例如借用规则表134,也可以包含在VTS 100中。该借用规则表132可以包括用于从一个池向另一个池借用物理卷114a...114n的规则。在另一个应用中,包含在借用规则表132中的信息可以被包含在另一个数据结构中,例如在池数据结构126中,并且该借用规则表132可以缺省。在另一个应用中,库管理器数据库130、物理卷数据结构124、池数据结构126、物理卷监视器132和借用规则表132可以耦合到物理库108或者耦合到任何其他计算设备(未示出)。 用于来自VTS 100的数据的客户输入136可以被通过主机102a...102n传送到VTS 100(为了说明的目的,该客户输入136被示出为耦合到主机102n)。该客户输入136可以包括用于读取或写入数据的请求,其中该请求被主机102a...102n传送到VTS 100。在另一个应用中,该客户输入136可以直接对VTS 100进行,而不涉及主机102a...102n。客户输入136可以指定一个池120a...120n,其与该数据相关。在这样一种情况中,VTS 100可以满足来自特定池120a...120n的客户请求。在特定的另一个应用中,即使当该特定客户输入136不指定任何特定池120a...120n时,该VTS 100或库管理器122也可以把一个特定池120a...120n与一个特定客户输入136相关。 与所示的计算环境不符合的存储系统的另一个应用还可以被用于本发明的实现。例如,不同于VTS的存储系统可以用于本发明的另一个应用。只要存储池120a...120n可以从多个物理卷构造,即可以在各种计算环境中应用本发明。 图2为示出根据本发明的特定应用物理卷(例如物理卷114a...114n)如何被分为池120a...120n的方框图。尽管把物理卷114a...114n分为池的具体例子被示出,但是把物理卷114a...114n按照不同方式分为池120a...120n的其他变型被包含在本发明的应用范围内。 池120a还是一个临时池120a,并且可以包括选自物理卷114a...114n的大量物理卷114a...114s。在特定的应用中,该临时池120a可以包括超过一千个物理卷。临时池120a包括两种不同类型的物理卷-类型“J”(由参考标号114a...114j所示)和类型“K”(由参考标号114k...114s所示)。类型“J”和类型“K”具有不同的特性。例如,与其他类型相比,一类物理卷能够存储较大量的数据。但是,对于能够存储教大量数据的类型的存取时间可能比其他类型的存取时间更慢。尽管在此仅仅示出两种物理卷,但是临时池120a可以包括更少或更多的物理卷类型数。包含在临时池120a中的该物理卷114a...114s没有有效数据,即,该物理卷114a...114i为空白、数据已经过期或者包含可能被主机102a...102n所改写的数据。 在本发明的特定应用中,多个池120b...120n可以把物理卷借用或返回到临时池120a。多个池120b...120n还可以被称为数据池或者有效池,由于在物理卷存在于池120b...120n中时,数据可能被写入到物理卷中。在图2,池120b具有类型J和类型K的物理卷,池120c仅仅具有类型J的物理卷,并且池120n仅仅具有类型K的物理卷。当附加数据需要被写入不能够包含到池120b...120n中现存的物理卷内时,池120b...120n可以从临时池120a借用一个物理卷。当池120b...120n不再需要一个物理卷时,该物理卷可以被返回到临时池120a。 该临时池120a允许在池120b...120n中共享大量物理卷114a...114s。当池120b...120n需要一个物理卷用于写入附加数据时,新的物理卷可以从临时池120a借用。一个物理卷可以在已经被池120b...120n所使用之后返回到临时池120a。在没有临时池120a的情况中,每个池120b...120n可能需要被永久地分配一组固定的物理卷。 图3示出根据本发明的特定所述应用的池数据结构126的方框图。该池数据结构126可以驻留在虚拟磁带服务器100中。该池数据结构126与每个池120a...120n相关,即,每个池120a...120n具有池数据结构126的一个实例。在特定的应用中,用于每个池120a...120n的池数据结构126可以由库管理器128所构造,并且存储在库管理器数据库130中。在另一个应用中,在VTS 100中的其他处理可以构造池数据结构126的实例,并且在不同于库管理器数据库130的位置处存储该实例。 池数据结构126的第一字段是“用于借用的第一媒体选择”字段302。用于特定池的该字段302的条目表示物理卷114a...114n的优选类型,其中特定池可以从临时池120a借用。在特定的应用中,用于字段302的条目的优选类型可以从(i)“无”、(ii)类型“J”、(iii)类型“K”、(iv)类型“J”或类型“K”中选择,其中“J”和“K”是用于不同类型的物理卷的媒体类型。如果“用于借用的第一媒体选择”字段302对于一个特定池是“无”,则该特定池不允许借用任何类型的物理卷。否则,字段302的条目反映可以被一个池所借用的物理卷的类型。 池数据结构126的第二字段是“用于借用的第二媒体选择”字段304。用于特定池的字段304的条目表示物理卷114a...114n的类型的第二选择,即,该特定池可以从临时池120a借用。在特定的应用中,用于字段302的条目的优选类型可以从(i)非J或K、(ii)类型J、(iii)类型K中选择,其中J和K是用于不同类型的物理卷的媒体类型。 池数据结构126的第三字段是“把借用的物理卷返回到临时池”字段306。如果字段306对于一个特定池为“是”,则该特定池可以在物理卷114a...114n为空白时,把一个物理卷114a...114n返回到临时池120a。如果字段206对于一个特定池为“否”,则该特定池可能不把一个物理卷返回到临时池120a,即,该物理卷是该特定池的一个永久部分。 池数据结构126的第四字段是“有效数据时间标记”字段308。用于一个特定池的字段308包括为了任何目的当在该特定池上的数据被存取时的时间,包括从主机102a...102n对读或写请求的响应。该“有效数据时间标记”字段可以被复位为零。 图4示出根据本发明的特定应用的物理卷数据结构124的方框图。每个物理卷114a...114n具有耦合到物理卷114a...114n的物理卷数据结构124的一个实例。在特定的应用中,用于每个物理卷114a...114n的物理卷数据结构的实例可以由库管理器128所构造,并且存储在与库管理器数据库130中。在另一个应用中,在VTS 100中的其他处理可以构造该物理卷数据结构126的实例,并且把该实例存储在不同于库管理器数据库130的位置中, 物理卷数据结构124的第一字段是“永久分配给一个池”字段402。如果用于一个特定物理卷的“永久分配给一个池”字段402表示特定池120a...120n,则该特定物理卷被永久分配给该特定池120a...120n。在特定应用中,这样的永久分配可以在该特定物理卷要被一个用户或者一个特定应用设备所专用时出现。在物理卷114a...114n被第一次插入到该物理库108的过程中,该特定物理卷到一个存储池120a...120n的永久分配可以使用与库管理器128相关的一个用户接口而实现。 如果特定物理卷被永久分配给一个池,并且该池不是一个临时池,则该特定物理卷在一些时间点处使得数据被写入到该特定物理卷。即使在写入到特定物理卷中的所有数据已经过期或者已经被删除之后,该物理卷仍然保持被分配给该池。 该物理卷数据结构124的第二字段是“当前池”字段404,其表示物理卷114a...114n当前所在的池。例如,如果特定物理卷的“当前池”字段是池120b,则该特定物理卷当前存在于池120b中。 物理卷数据结构124的第三字段是“主池”字段406,其表示在任何时候一个特定物理卷114a...114n为空时,该物理卷114a...114n被返回到的池。在本发明的特定应用中,用于物理卷114a...114n的主池字段406是临时池120a。例如,如果一个特定物理卷的“主池”字段是临时池120a,则在该特定物理卷已经在除了该临时池120a之外的一些池中之后,该特定物理卷可以被返回到临时池120a。 在本发明的特定应用中,“永久分配给池”字段402不被使用,并且如果该物理卷的“主池”字段406等于物理卷的“当前池”字段404,则一个物理卷被假设为永久分配给该物理卷的当前池。 物理卷数据结构124的第四字段是“临时计数值”字段408,其表示已经被借用和使用的物理卷114a...114n的倍数。由于该物理卷114a…114n为新的,因此用于一个特定物理卷的在“临时计数值”字段408中的数值是已经被使用的特定物理卷的总倍数。在另一个应用中,用于一个特定物理卷的“临时计数值”字段408反映被返回的特定物理卷的倍数。 物理卷数据结构124的第五字段是“空白或有效”字段410。如果字段410对于一个特定物理卷被标记为“有效”,则在该特定物理卷上具有有效数据,并且该物理卷被使用。如果字段408对于一个特定物理卷被被标记为“空白”,则在该特定物理卷上没有有效数据,并且新数据可以被写入在该物理卷上。 物理卷数据结构124的第六字段是“由处理保留”字段412。该字段412可以包括具有与为该处理保留的物理卷数据结构124相关的物理卷一个处理的标识。 物理卷数据结构124的第七字段是”由线程锁定”字段414。该字段414可以包括具有与由一个线程所锁定的物理卷数据结构124相关的物理卷的该线程的标识。当与该物理卷数据结构124相关的物理卷被更新时,这种锁定可能是必要的。还可能有用于锁定一个物理卷的其他原因。 物理卷数据结构124的第八字段是“错误条件”字段416。该字段416可以包含一个错误代码,其反映与对应于物理卷数据结构124的物理卷的处理相关的一个错误条件。 物理卷数据结构124的第九字段是“退出处理标志”字段。该字段418可以表示为了退出处理而标记对应于物理卷数据结构124的物理卷。 本发明的另一个应用可以合并或者不使用这九个字段402、404、406、408、410、412、414、416、418中的特定字段,或者在不同的存储设备中使用这九个字段402、404、406、408、410、412、414、416、418的一个子集。 图5通过流程图500和对应表502示出根据本发明的特定应用的一个物理卷在同一个池中消耗该物理卷的整个寿命周期的处理。在图5的流程图中所示的操作可以由库管理器122所执行,或者由耦合到VTS100的任何其他处理所执行。 流程图500示出一个池N 504,其中池N 504可以是池120a...120n中的一个池。池N 504具有一个物理卷,其中该物理卷具有名称PV0001。当前池404和该物理卷的主池406总是池N。用于该物理卷的“把借用的物理卷返回到临时池”标志306被永久分配未“否”。在步骤A 506,该物理卷为空白。在表格502的行502a中示出在执行步骤A 506的过程中,该物理卷的物理卷数据结构124和池N 504的池数据结构126的各个字段。 在步骤A之后,在步骤B 508的过程中数据被写入到该物理卷,并且该物理卷变为充满,即,没有其他空间可以把数据写入到该物理卷。在步骤B 508结束时,在物理卷数据结构124和池数据结构126中的各个字段在表格502的行502b中示出。 在步骤B之后,物理卷经过步骤C 510并且变为空白。在特定的应用中,当在该物理卷中的数据过期或者由于一些其他原因不再需要该数据时,物理卷经过步骤C 510。在另一个应用中,保留在该物理卷(初始物理卷)上的小数据量可以被传送到另一个物理卷,清空该初始物理卷。在表格502的行502c中示出,在步骤C 508结束时,在该物理卷数据结构124和池数据结构126中的各个字段。 图5示出一个物理卷在同一个池中消耗该物理卷的寿命周期的状态。由于该物理卷的当前池和主池是池N,并且池N不返回物理卷,因此该物理卷在同一个池(即,在池N 504)中消耗该物理卷的整个寿命周期。该物理卷在池N 504内部在空白和充满状态之间交替。 图6通过流程图600和一个对应表602示出根据本发明的特定所述应用从临时池借用一个物理卷然后返回到该临时池的处理。在图6的流程图中所示的操作可以由库管理器122或耦合到VTS 100的任何其他处理所执行。 流程图600示出一个池M 604和池N 606,其中该池M 604和N606可以选自池120a...120n,具有名称PV0002的物理卷可以在池M604和池N 606之间移动。该物理卷的主池606总是池M 604。用于池N 606的“把借用的物理卷返回到临时池”标志306被永久分配为“是”。 在步骤A 608,物理卷为空白,并且出现在池M 604中。在步骤A608中,在用于该物理卷的物理卷数据结构124和用于池N的池数据结构126中的各个字段在表格602的行602a中示出。 在步骤A之后,在步骤B 610过程中,空白物理卷被池N 606从池M 604借用。在步骤B 610结束时,在物理卷的物理卷数据结构124和池N 606的池数据结构126中的各个字段在表格602的行602b中示出。由于物理卷从池M 604移动到池N 606的结果,物理卷的“当前池”字段404在行602b中变为池N(在步骤A过程中,物理卷的当前池404是池M,如行602a中所示)。 在步骤B之后,在步骤C 612过程中,空白物理卷被写入到池M中,并且在步骤C 612结束之后变为充满。在步骤C 612结束时在用于物理卷的物理卷数据结构124以及在用于池N的池数据结构126中的各种字段在表格602的行602c中示出。 在步骤C之后,在步骤D 614过程中,充满的物理卷被清空,并且在步骤D 614结束时,该物理卷在池N 606中处于空白状态。在步骤D614结束时,在用于物理卷的物理卷数据结构124和用于池N的池数据结构126中的各个字段在表格602的行602d中示出。 在步骤D之后,在步骤E 616过程中,该空白物理卷被从池N 606返回到“主池”406,即,空白物理卷被返回到池M 604。在步骤E 616结束时,物理卷在池M 604中处于空白状态。在步骤E 616结束时,在物理卷的物理卷数据结构124和用于池N的池数据结构126中的各个字段在表格602的行602e中示出。由于物理卷的主池是池M 604,并且在池N 606中,用于池N 606的“把借用的物理卷返回到临时池”标志306被永久分配为“是”,该物理卷被从池N 606返回到主池406(即,池M 604)。 在VTS 100中,池M 604为临时池120a。因此,图6示出物理磁带被从一个临时池借用到一个池、在该池中使用并且在该池为空白时返回到该临时池的处理。 图7通过流程图700和对应表702示出根据本发明的特定所述应用,一个物理磁带卷被借用到一个池、在该池中使用然后在该池中被再次使用的的处理。在图7中所示的操作可以由库管理器122或者由任何其他耦合到VTS 100的处理来执行。 流程图700示出一个池M 704和池N 706,其中池M 704和N706可以从池120a...120n中选择。具有名称PV0003的物理卷可以在池M604和池N 606之间移动。该物理卷的主池706总是池M 704。用于池N 706的“把借用的物理卷返回到临时池”标志306被永久分配为“否”。 在步骤A 608,该物理卷为空白,并且该物理卷存在于池M 704中。在步骤A 708过程中,在用于物理卷的物理卷数据结构124和用于池N706的池数据结构126中的各个字段在表格702的行702a中示出。 在步骤A之后,在步骤B 710过程中,空白物理卷被池N 706从池M 704借用。在步骤B 710结束时,在用于物理卷的物理卷数据结构124和用于池N 706的池数据结构126中的各个字段在表格702的行702b中示出。由于物理卷从池M 704移动到池N 706的结果,物理卷的“当前池”字段404在行602b中变为池N(在步骤A708过程中,物理卷的当前池404是池M,如行702a中所示)。 在步骤B之后,在步骤C 712过程中,在池M704中的空白物理卷被写入,并且在步骤C 712结束之后该空白物理卷变为充满。在步骤C712结束时在物理卷数据结构124以及在池数据结构126中的各种字段在表格702的行702c中示出。 在步骤C之后,在步骤D 714过程中,充满的物理卷被清空,并且在步骤D 714结束时,该物理卷在池N 706中处于空白状态。在步骤D714结束时,在用于物理卷的物理卷数据结构124和用于池N706的池数据结构126中的各个字段在表格602的行702d中示出。池M 706不把该物理卷返回到池M 704(或者任何其他池),因为用于池N 706的“把被借用的物理卷返回到临时池”标志306被永久地分配为“否”。因此,该空白物理卷被在池N 706一次又一次地重复使用。 在VTS 100中,池M 704为临时池120a。因此,图7示出物理卷被从一个临时池借用到一个池、在该池中使用而不把该物理卷返回到该临时池的处理。 为了管理存储池,可以在多物理卷池系统中指定借用和返回规则,并且该规则可以包括把物理卷分配给各个池。一个临时池可以被保持使得物理卷可以在多个有效池之间共享。当一个有效池没有任何可用物理卷时,该有效池可以从该临时池借用一个物理卷。然后,在该有效池已经使用该物理卷并且不再需要该物理卷之后,该有效池可以把该物理卷返回到该临时池。数据可以被分割为不同的存储池。另外,通过允许物理卷在多个有效池之间共享和重复使用,用于管理存储池的机制允许更加有效地使用物理卷。 确定何时返回物理卷 一个有效池是包含至少一个已经被更改的物理卷的池,即,新数据已经被写入在该物理卷中,或者在该物理卷中存在的数据已经被删除。在任何时候,一些数据池120b...120n可以是无效的池。在特定的应用中,仅仅有由作为有效池的那些数据池120b...120n执行物理卷的借用和返回。 图8示出根据本发明的特定所述应用用于在该池数据结构中更新“有效数据时间标记”字段308,以促进物理卷的借用和返回的逻辑。该逻辑可以通过物理卷监视器132、库管理器122、VTS 100或者通过耦合到VTS 100的任何其他处理(例如存储管理器105)来执行。 该处理在方框802开始,其中对于每个数据池120b...120n,在在线处理过程中,用于池数据结构126的“有效数据时间标记”字段308被初始化为“零”。在在线处理过程中,每个数据池被处理,使得对每个数据池借用和返回适当的物理卷。 控制进行到方框804,其中VTS 100对用于预先转移到在物理库108中的所选择池120b...120n的队列排序。因此,在物理库108中的所选择池120b...120n中的最后更新时间是VTS 100排队用于预先转移到所选择池120b...120n的文件的时间。在方框806,对应于所选择池120b...120n的池数据结构126的“有效数据时间标记”字段308在VTS排队用于预先转移的文件时被更新。在方框806结束时,用于所选择池120b...120n的“有效数据时间标记”字段308包含池120b...120n被最后更新的时间。控制返回到方框804,并且由于VTS 100保持对用于预先转移的附加文件排队,因此方框804和806的逻辑被重复执行。 图9示出根据本发明的特定所述应用用于对一个池借用和返回物理卷的逻辑。该逻辑由物理卷监视器132所执行。在另一个应用中,该逻辑可以由库管理器122、VTS 100或者由耦合到VTS 100的任何其他处理(例如存储管理器105)所执行。该物理卷监视器132处理每个数据池120b...120n,使得每个数据池120b...120n根据在图9中所示的逻辑返回和借用物理卷。 在方框900,其中物理卷监视器132开始检查所选择的数据池120b...120n,用于返回和借用处理。控制进行到方框902,其中物理卷监视器132确定对应于所选择数据池120b...120n的池数据结构126的“有效数据时间标记”字段308是否为“零”。如果为是,由于该最后在线处理(即,返回和借用处理),则在所选择的数据池120b...120n没有发生改。因此,不需要从临时池120a借用或返回到临时池120a.控制进行到方框904,其中物理卷监视器132禁止用于所选择的数据池120b...120n的借用和返回,并且该处理对所选择的数据池120b...120n停止(在方框920)。 如果在方框902,物理卷监视器132确定对应于所选择的数据池120b...120n的池数据结构126的“有效数据时间标记”字段308不为“零”,然后控制进行到方框906。在方框906,物理卷监视器132确定“有效数据时间标记”字段308是否比当前时间落后“72小时”,即方框906确定“有效数据时间标记”字段308是否在当前时间之后超过72小时。 如果方框906确定“有效数据时间标记”字段308比当前时间落后时间大于阈值N,则该控制进行到方框908,其中物理卷监视器132把保留在所选择的数据池120b...120n中的空白物理卷的数目设置为零,禁止对所选择的数据池120b...120n借用空白物理卷,并且允许从所选择的数据池120b...120n把物理卷返回到临时池120a。对于这些设置的基本原理如下。所选择的数据池120b...120n在一个延长的时间周期N还没有被激活。所选择数据池需要一个空白物理卷的可能性较低(当与其他数据池相比)。因此,通过限制借用,更多的物理卷被在该临时池120a中释放。由于如果在所选择的数据池120b...120n中的数据过期,则允许返回,物理卷应当为返回到临时池120a。由于在所选择的数据池120b...120n中的更新的可能性较低,因此不需要在所选择的数据池120b...120n中保留任何空白卷。 控制进行到方框910,其中物理卷监视器132确定所选择的数据池120b...120n中是否有数据。如果为是,则控制进行到方框920,其中该处理停止。 如果在方框910,物理卷监视器132确定在所选择的数据池120b...120n中没有数据,则控制进行到方框912,其中物理卷监视器132把所选择的数据池120b...120n中的“有效数据时间标记”字段308复位为“零”。方框900、902、906、908、910和912的序列可以保证在所选择的数据池120b...120n中的空白物理卷被返回到临时池120a,并且把所选择的数据池120b...120n的“有效数据时间标记”308复位为“零”。 如果方框906,物理卷监视器132确定“有效数据时间标记”308落后当前时间的时间段不超过阈值N,控制进行到方框914。在方框914,物理卷监视器132确定“有效数据时间标记”字段308是否比当前时间落后阈值M,其中M<=N。在特定的应用中,当N为72小时时,M可以为48小时。如果为是,控制进行到方框916,其中物理卷监视器132把保留在所选择的数据池120b...120n中的空白物理卷的数目设置为3,禁止借用所选择的数据池120b...120n,以及允许返回所选择的数据池120b...120n。用于这些设置的基本原理如下。尽管所选择池120b...120n在M和N之间的一些时间周期中已经被激活(其中M<=N),但是所选择池120b...120n至少对于周期M被无效。因此,所选择的数据池120b...120n在最近的过去被无效。从而,允许多达3个空白卷保留在所选择的数据池120b...120n中,在此可能有足够的空间用于所选择的数据池的更新,并且通过限制借用,更多的物理卷被在临时池120a中释放。控制进行到方框920,其中该处理停止。 如果在方框914,物理卷监视器132确定“有效数据时间标记”字段308没有比当前时间落后阈值M,其中M<=N,则控制进行到方框918,其中所选择的数据池120b...120n可以执行正常的返回和借用处理,如图2、5、6和7中所述。在方框918,物理卷监视器132对所选择池120b...120n把要保留的空白物理卷设置为3,并且允许对所选择池120b...120n的借用和返回。用于这些设置的基本原理如下。所选择的数据池120b...120n最近已经被激活。因此,通过允许多达3个空白卷保留在所选择的数据池120b...120n中,在此可能有足够大的空白物理卷114a...114n的缓冲器,用于在所选择的数据池上更新,并且通过允许借用,更多的物理卷114a...114n可以根据需要从临时池120a借用。在918结束时,控制进行到方框920,其中该处理结束。 该应用通过调节由数据池使用的借用和返回处理而减少对物理卷的不必要借用和返回。当数据池已经对延长的时间周期被激活时,来自无效池的空白物理卷可能被返回到临时池,并且禁止对数据池的借用。当数据池最近被激活时,多达3个物理卷可以被保持为用于该数据池的缓冲器,并且该数据池可以根据需要从临时池借用附加卷。当数据池最近没有被激活,但是对于一个延长的时间周期还没有被无效,则禁止对该数据池的借用,但是数据池仍然被允许保持3个空白物理卷的缓冲。因此,对临时池上的空白物理卷的空白物理卷的需求减小,并且物理卷被在整个系统中的数据池共享和重新使用。 存储池的返回处理 当物理卷被重新使用时,可以更好地平均地重新使用物理卷,即,所有物理卷被使用近似相同的时间量。通过使得每个物理卷重新使用近似相同的时间量,通过重新使用而导致在特定物理卷中出现错误的可能性被减小。特定的应用在物理卷已经被使用和清空之后,通过提供用于把物理卷返回到临时池120a的改进技术,实现基本上平均地对物理卷的使用。 图10示出根据本发明的特定所述应用用于物理卷的返回处理的逻辑。该逻辑流程由物理卷监视器132所执行。在另一个应用中,该逻辑流程可以由库管理器122、VTS 100或通过耦合到VTS 100的任何其他处理(例如存储管理器105)所执行。该物理卷监视器132根据图10中所示逻辑处理每个数据池120b...120n,使得每个数据池120b...120n把物理卷返回到临时池120a。 该逻辑从方框1000开始,使得物理卷监视器132等待一个消息。尽管物理卷监视器132可以执行其他功能,但是物理卷监视器132的一个特定线程可以专用于可能潜在地触发物理卷114a...114n的返回的消息。根据该消息,控制可以进行到任何方框1002、1004和1006。在方框1002,物理卷监视器132接收一个消息,表明已经经过特定固定的时间量。在特定应用中,这样一个消息可能在每个小时内被接收。在方框1004,物理卷监视器132接收一个消息,其表示出现全系统的更新(即,在VTS 100上协调)。一个全系统更新导致在VTS 100、高速缓冲存储器106和物理库108中的所有数据的协调,使得物理库108具有所有数据的最新更新副本。在方框1006,物理卷监视器132从另一个处理接收一个特定物理卷已经变为空白的通知。 控制从方框1002或1004进行到方框1008,其中表示进入数据池120b...120n的一个索引的一个变量“POOL”被分配整数“一”。该索引表示在物理卷监视器132所执行的返回处理之下的所选择的数据池120b...120n。数据池120b...120n的总数为N,因此进入数据池120b...120n的有效索引在从1至N的范围内。 控制进行到方框1010,其中物理卷监视器132确定变量“POOL”是否大于N,其中N为数据池120b...120n的总数。如果为是,则控制返回到方框1000,因为所有数据池120b...120n已经被用于返回处理而处理。否则,控制进行到方框1012,其中物理卷监视器132可以确定通过执行图9中的方框900-920所示的逻辑而被当前处理的数据池是否允许物理卷的返回。在方框900-920所示的处理中,特定的数据池禁止物理卷的返回,并且特定的数据池根据该数据池的“有效数据时间标记”字段308允许物理卷的返回。另外,在方框900-920中所述的处理还确定要保留的空白物理卷的数目R。因此,在方框1012,作为确定是否允许对当前处理的数据池返回物理卷的一部分,要被保留的空白物理卷的数目也被确定。如果在方框1012,确定允许对当前处理的数据池返回物理卷,则控制进行到方框1014。在方框1014,物理卷监视器132可以记录要保留在当前处理的空白物理卷的数目R(作为方框900-920的处理的一部分,在执行方框1012的逻辑时已经确定该数目R)。 控制进行到方框1016,其中对每个数据池,该物理卷监视器132创建候选物理卷的一个列表,用于返回到临时池120a。该候选物理卷被从物理卷114a...114n中选择,其中每个候选物理卷满足如下5个条件。第一个条件是一个候选物理卷的“主池”字段406是临时池120a(因此,该候选物理卷可以返回到临时池120a)。第二个条件是候选物理卷的当前池对于“把借用的物理卷返回到临时池标志”字段306为“是”(因此,候选物理卷的当前池允许把候选物理卷返回到临时池120a)。第三条件是对于物理卷数据结构124的“由处理保留”字段412没有有效项目(因此,候选物理卷不被任何特定处理所保留)。第四条件是对于物理卷数据结构124的“错误条件”字段416没有有效项目(因此,没有与候选物理卷相关的错误条件)。第五条件是对于“由线程锁定”字段414没有有效项目(因此,候选物理卷不被任何线程锁定)。 在候选物理卷的列表已经在方框1016中创建之后,控制进行到方框1018,其中候选物理卷被根据每个物理卷的“临时计数”408而排序。“临时计数”字段408表示已经被借用和使用的物理卷114a...114n的倍数。由于物理卷114a...114n是新的,因此在用于一个特定物理卷的“临时计数”字段408是已经被使用的特定物理卷的总倍数。因此,候选物理卷的排序列反映该候选物理卷的以前使用的频率。 控制进行到方框1020,其中对于每个数据池120b...120n,物理卷监视器132从以具有最高临时计数值的物理卷为开始的排序候选物理卷返回物理卷,直到仅仅R个物理卷保留在每个数据池120b...120n中时为止,如方框1014中所确定,根据要保留在被处理的数据池中的物理卷数目R,R可以为0或3。请注意,方框900-920的逻辑流程把R限制为0或3。物理卷被返回到临时池120a。 在每个数据池120b...120n中保留3个物理卷,即使在存储管理器105以在数据池120b...120n中的空白物理卷为开始,当图10的逻辑流程被完全执行时,也可以保证在每个数据池120a...120n中仍然有至少两个空白物理卷。使得在每个数据池中具有至少3个空白物理卷可以保证一个物理卷的缓冲区,以减少从临时池120a重复借用物理卷的情况。在另一个应用中,在每个数据池120b...120n中剩余的物理卷的数目可以小于或大于3。在另一个应用中,在完成方框1020的逻辑流程之后,不同数据池120b...120n可能剩余不同数目的物理卷。在特定情况中,当R为0时,由于数据池被无效的时间太长,因此没有物理卷被遗留在被处理的数据池中。 在方框1020结束时,控制进行到方框1022,其中该物理卷监视器132可选地增加不返回到方框1020中的临时池120a的物理卷的“临时计数”字段408。在另一个应用中,“临时计数”字段408可能在别处被增加。 控制进行到方框1024,其中物理卷监视器132增加“池”变量,使得来自数据池120b...120n的下一个池可以被考虑用于返回处理。控制返回到方框1010,其中下一个数据池120b...120n被考虑用于返回处理。 如果在方框1012,物理卷监视器132确定数据池的返回被禁止,则控制进行到方框1024。并且,在方框1006结束时,控制进行到方框1026,其中在方框1006中变为空白的特定物理卷被返回到临时池120a。在方框1016,仅仅一个物理卷被返回到临时池120a。控制返回到方框1000。 在物理卷已经被使用并且为空白之后,通过提供用于把物理卷返回到临时池120a,返回处理实现基本上平均地利用物理卷。在返回处理的特定应用中,至少3个已经被使用的空白物理卷被遗留在每个存储池中。返回处理的特定应用还通过限制要由最近有效池所使用的借用和返回处理,而减少物理卷的不必要借用和返回。另外,当一个池已经在延长的时间周期中无效,则来自该无效池的空白物理卷可以返回到该临时池。因此,物理卷被数据池所共享并且更加频繁地重新使用,并且被基本上平均地使用。 存储池的借用处理 为了保证在数据存储池120b...120n中的信息的处理,数据存储池120b...120n可以包含一个保留的空白物理卷。该物理卷监视器132可以管理物理卷114a...114n向数据存储池120b...120n的借用,以有助于保证每个数据存储池120b...120n具有适当的空白物理卷数目。在特定的应用中,该空白物理卷被从临时池120a借用。 在数据池120b...120n中保留少量的空白物理卷保证当对数据池120b...120n的附加更新需要额外的存储空间时,这种额外的存储空间可以在已经被借用到数据池120b...120n的空白物理卷上获得。如果这样的空白物理卷还没有被借用,当对存储池120b...120n进行更新时,必须消耗额外的时间来从临时池120a借用该空白物理卷。在借用处理过程中,通过预期在数据存储池120b...120n中对空白物理卷114a...114n的需求,该物理卷监视器132把适当数目的空白物理卷114a...114n借用到池120b...120n。 图11示出根据本发明的特定应用,用于物理卷的借用处理的逻辑流程。该逻辑流程由物理卷监视器132所执行。在另一个应用中,该逻辑流程可以由库管理器122、VTS 100或者由耦合到VTS 100的任何其他处理(例如,存储管理器105)所执行。物理卷监视器132处理每个数据池120b...120n,使得每个数据池120b...120n根据图11中所示的逻辑流程从临时池120a借用物理卷。 处理在方框1100以物理卷监视器132等待可能潜在地触发从临时池120a借用物理卷114a...114n的一条消息为开始。尽管物理卷监视器132可以执行附加功能,但是物理卷监视器132的特定线程可以专用于等待可能潜在地触发物理卷114a...114n的借用的消息。在方框1100,所有数据池120b...120n还被物理卷监视器132标记为“没有为借用而被处理”。 在方框1100所述的逻辑流程结束时,控制可以进行到方框1102或1104。在方框1102,物理卷监视器132接收一个消息,其表示自从接收最后的这种消息已经经过特定的固定时间量。在特定的应用中,这一消息可由物理卷监视器132在每两分钟内接收。在方框1104,物理卷监视器132接收表示已经发生物理卷114a...114n的读写量的消息。 控制从方框1102或1104进行到方框1106,其中其中表示进入数据池120b...120n的一个索引的一个变量“POOL”被分配整数“一”。该索引表示在物理卷监视器132所执行的借用处理之下的所选择的数据池120b...120n。数据池120b...120n的总数为N,因此进入数据池120b...120n的有效索引在从1至N的范围内。 控制进行到方框1108,其中物理卷监视器132确定变量“POOL”是否大于N,其中N为数据池120b...120n的总数。如果为是,则控制返回到方框1100,因为所有数据池120b...120n已经被用于返回处理而处理。否则,控制进行到方框1110,其中物理卷监视器132可以确定是否允许对所选择数据池的借用(方框900-920的逻辑流程禁止特定数据池120b...120n的借用)。如果对所选择的数据池允许借用,则不应当对所选择的数据池执行借用处理,并且控制进行到方框1116,其中变量“POOL”被增加(即,下一个数据池120b...120n被选择用于潜在的借用处理)。控制返回到方框1108。 如果在方框1110,物理卷监视器132确定允许所选择的数据池借用,则控制进行到方框1112,其中该物理卷监视器132确定所选择的数据池是否具有至少两个空白物理卷满足如下四个条件。第一个条件是至少两个空白物理卷是读写卷,即,数据从该物理卷读出并且写入到该物理卷中。第二个条件是物理卷数据结构124的“退出处理标志”字段418没有对退出处理标记(即,至少两个空白物理卷没有对退出处理标记)。第三个条件是对于物理卷数据结构124的″错误条件″字段416没有有效项目(因此,没有与至少两个空白物理卷相关的错误条件)。第四条件是对于“由线程锁定”字段414没有有效项目(因此,至少两个空白物理卷被任何线程所锁定)。 如果在方框1112,确定该数据池没有满足这四个条件的至少两个空白物理卷,则控制进行到方框1114。在方框1114,该物理卷监视器132把本身包含借用规则(该借用规则将在图12和13中描述)的空白物理卷借用到所选择的数据池,使得在方框1114结束时,数据池具有两个空白物理卷。另外,用于方框1114中的借用技术的具体细节将在图13中描述。另外,如果该数据池没有满足这四个条件的任何空白物理卷,则该数据池把从临时池120a借用两个空白物理卷。如果数据池具有满足四个条件的一个空白物理卷,则该数据池从临时池120a借用一个空白物理卷。控制进行到方框1116。 如果在方框1112,物理卷监视器132确定该数据池具有至少两个空白物理卷,则控制进行到方框1116,因为在此不需要把任何附加空白物理卷借用到该数据池。 图11的逻辑流程保证每个数据池120b...120n具有至少两个空白物理卷,从而保证当最数据池120b...120n的附加更新需要额外的存储空间时,这样的额外存储空间可以在已经被借用到数据池120b...120n的至少两个空白物理卷上获得。 图12示出根据本发明的特定应用的借用规则表134,其表示可以应用于借用物理卷114a...114n的借用规则。借用规则表134包含由物理卷监视器132所使用来确定哪一个物理卷114a...114n被从临时池120a借用到数据池120b...120n的规则。 在特定应用中,存在两种不同类型的物理卷114a...114n。该两种不同类型的物理卷是“J”媒体类型和“K”媒体类型。从临时池120a借用的物理卷114a...114n可以根据特定的借用规则而借用。在对应于数据池120b...120n的池数据结构126中的“用于借用的第一媒体选择”字段302和“用于借用的第二媒体选择”字段304可以用于与借用规则表134相关联,以确定哪一种物理卷被借用到数据池120b...120n。该“用于借用的第一媒体选择”字段302和“用于借用的第二媒体选择”字段304可以设置到表示相应数据池可以借用的媒体类型的四个数值之一。该四个数值是(1)“J”媒体类型;(2)“K”媒体类型;(3)“任何一种类型”;和(4)“无”。该借用规则表示出具有意义的“用于借用的第一媒体选择”字段302和“用于借用的第二媒体选择”字段304的设置的六个组合1202、1204、1206、1208、1210、1212。该借用规则表134示出这六个组合1202、1204、1206、1208、1210、1212,其具有对应于六个组合1202、1204、1206、1208、1210、1212中的每个组合的“借用的第一媒体类型”1214、“借用的第二媒体类型”1216、“解释”1218和“借用优先权”1220。在“借用优先权”1216中,具有较低数值的项目表示用于借用的较高的较高优先权,即“1”具有最高优先权,并且“3”具有最低优先权。在借用规则表132中,用于“借用的第一媒体类型”1214、“借用的第二媒体类型”1216和“解释”1218被示出以便于描述,并且这些项目可以在该应用的借用规则表134中省略。 作为在借用规则表134中的项目的一个例子,对于借用情况“J-K”1206,该“借用的第一媒体类型”1214为“J”,该“借用的第二媒体类型”1216为“K”。该“解释”1218是第二媒体类型“K”仅仅在临时池120a中不能获得第一媒体类型“K”的媒体类型时才被借用。该“借用优先权”1220对于借用情况“J-K”1206为“2”。 图13示出根据本发明的特定应用,基于该借用规则表134,用于物理卷的借用处理114a...114n的逻辑流程。该逻辑流程由物理卷监视器132所执行。在另一个应用中,该逻辑流程可以由库管理器122、VTS 100或者耦合到VTS 100的任何其他处理(例如存储管理器105)所执行。该物理卷监视器132处理每个数据池120b...120n,使得每个数据池120b...120n根据图13中所示的逻辑流程把物理卷返回到临时池120a。 在方框1300开始的处理,其中物理卷管理器132对用于可以被在数据池120b...120n中执行读取和写入的空白物理卷的存储管理器105进行排队。控制进行到方框1302,其中物理卷监视器132根据来自存储管理器105的响应对在每个数据池120b...120n中的这种空白物理卷的数目进行计数。在另一个应用中,该物理卷监视器132可以确定能够被执行读写的空白物理卷132的数目,而不需要存储管理器105的帮助。 控制进行到方框1304,其中物理卷监视器132把具有小于两个空白物理卷的数据池120b...120n分类为借用规则表134的六种借用情况1202、1204、1206、1208、1210、1212之一。该物理卷监视器132根据对应于每个数据池的数据池结构126的“用于借用的第一媒体选择”302字段和“用于借用的第二媒体选择”字段304对每个数据池执行分类。例如,如果对于一个数据池,“用于借用的第一媒体选择”302字段为“J”,并且“用于借用的第二媒体选择”字段304为“K”,则该数据池被分类在借用情况“J-K”1206中。 在方框1304的逻辑流程结束时,具有小于两个空白物理卷的所有数据池是六个借用情况1202、1204、1206、1208、1210、1212之一的一部分。例如,物理卷114c、114d、114e、114g可以都分类在借用情况“K-J”1208之下。 控制进行到方框1306,其中物理卷监视器132开始处理被分类在具有最高优先权的借用情况下的数据池。控制进行到方框1308,其中通过被分类在该借用情况之下数据池执行第一循环,以选择没有空白物理卷的数据池。对于没有空白物理卷的数据池,该物理卷监视器132根据在借用规则表134中的借用规则对于被处理的数据池的借用情况借用适当媒体类型的一个物理卷114a...114n。如果在此有可以从该临时池120a借用的一个以上的适当媒体类型的物理卷,则具有最低“临时计数值”408的物理卷被借用,即,最少使用的物理卷被借用,从而提供基本上平均的对所有物理卷的使用。在方框1308结束时,在方框1308开始没有空白物理卷的所有数据池具有一个空白物理卷,在方框1308开始具有一个空白物理卷的所有数据池具有一个空白物理卷。 控制进行到方框1310,其中通过被分类在该借用规则之下的数据池执行第二循环,该物理卷监视器132根据在该借用规则表134中的借用规则,为该数据池被处理直到需要空白物理卷的借用情况借用适当媒体类型的一个物理卷114a...114n。如果从临时池120a可以借用一个以上的适当媒体类型的物理卷,则具有最低“临时计数值”408的物理卷被借用。方框1310的结束完成被分类为一个借用情况的数据池的处理。 在两个循环中借用空白物理卷的优点是在第一循环中,仅仅没有空白物理卷的数据池借用一个空白物理卷。仅仅当每个数据池具有至少一个空白物理卷时,该数据池才能够尝试借用第二个物理卷。具有两个循环在临时池120a没有特定类型的物理卷时是有利的。 控制进行到方框1312,其中物理卷监视器132确定对应于所有借用情况的数据池是否已经被处理。如果为否,则控制返回到方框1306,其中物理卷监视器132开始处理在被分类为具有最高优先权借用情况之下剩余的未处理池。由方框1306、1308、1310、1312所形成的循环可以被执行六次,对应于六个借用情况1202、1204、1206、1208、1210、1212。 如果在方框1312,确定对应于所有情况1202、1204、1206、1208、1210、1212的数据池已经被处理,则控制进行到方框1314,其中物理卷监视器132等待一个消息,以通过所有数据池120b...120n执行另一个循环的借用处理。 在本发明的特定应用中,在执行图13的逻辑流程的过程中,该临时池120a可能用完某种媒体类型的物理卷。在这种情况中,仍然对可以借用其他媒体类型的数据池执行借用。如果临时池120a用完这两种媒体类型,则借用处理停止。该库管理器122被通知该临时池120a何时用完特定媒体类型的物理卷。图8的逻辑流程保证物理卷被根据在借用规则表134中的规则而从临时池120a中借用。通过适当的借用策略在数据池120b...120n中保持两个空白物理卷。 借用处理保证为每个数据池120b...120n保留小量的空白物理卷。当数据池120b...120n没有至少两个空白物理卷时,物理卷114a...114n被从临时池120a借用。在借用时,最少被使用的物理卷被从临时池120a借用,从而保证基本上平均地利用该数据池。通过借用和返回机制,本发明的应用在每个数据池中保留不太少也不太多的空白物理卷。并且,借用优先权和满足对所有池的第一次借用在对所有池的第二次借用之后的条件相组合可以保证把有限数目的特定媒体类型在最需要该媒体类型的那些池之间公正地分配。 附加应用的详细情况 所述的技术可以被用作为一种方法、装置或使用标准编程和/或工程技术来制造软件、固件、硬件或其任何组合的产品。在此所用的术语“产品”是指在硬件逻辑电路中实现的代码或逻辑(例如,集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等等)或者计算机可读介质(例如,磁性存储介质,例如硬盘驱动器、软盘驱动器、磁带)、光存储器(例如,CD-ROM、光盘等等)、易失性和非易失性存储设备(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、固件、可编程逻辑电路等等)。在计算机可读介质中的代码被访问并且由处理器所执行。可以实现应用的代码可以进一步通过传送媒体访问或者从文件服务器通过为了访问。在这种情况中,其中采用该代码的产品可以包括传送介质,例如网络传输线、无限传输介质、通过空间传播的信号、无线电波、红外信号等等。当然本领域的普通技术人员应当认识到可以对该配置做出许多变型,而不脱离该应用的范围,并且该产品可以包括本领域所公知的任何信息承载介质。 图14示出一种计算机构架的方框图,其中实现本发明的特定方面。图14示出VTS 100和主机102a...102n的一个应用。该VTS 100和主机102a...102n可以实现具有处理器1402(例如,CPU104这样的微处理器)的计算机构架1400、内存1404(例如,易失性存储设备)、以及存储器1406(例如,非易失性存储器、磁盘驱动器、光盘驱动器、磁带驱动器,等等)。存储器1406可以包括内部存储设备、附加存储设备或者网络访问存储设备。在存储器1406中的程序可以被装载到内存1404中,并且由按照本领域所公知的方式由处理器1402所执行。该构架可以进一步包括用于与网络进行通信的网卡1408。该构架还可以包括至少一个输入1410例如键盘、触摸屏、笔、语音激活的输入等等以及至少一个输出1412,例如显示设备、扩音器、打印机等等。 图5-11和13的逻辑流程示出在按照特定的次序出现的特定操作。另外,该操作可以并行和顺序地执行。在另一个应用中,可以按照不同的次序执行、更改或删除特定的逻辑操作,并且仍然能够实现本发明。另外,可以在上述逻辑流程中添加步骤,并且仍然符合该实现方式,还可以通过单个处理或分布式的处理来执行进一步的步骤。 尽管主机102a...102n和VTS 100在所述应用中在客户机-服务器模式内进行通信,但是主机102a...102n和VTS 100还可以在对等或本领域所公知的任何其他模式中进行通信。另外,许多软件和硬件部件已经按照分离模块的方式进行描述,用于说明的目的。但是这种部件可以被集成到少数部件中,或者被分为更多的部件。另外,由特定部件所执行的所述的特定操作可以由其他部件所执行。 尽管已经通过临时池描述本发明的应用,但是可以构造另一个应用,其中有效池可以借用和返回在该有效池中的物理卷(而不涉及一个临时池),以重新使用和共享物理卷。另一个应用还可以用一个以上的临时池来构造。在另一个应用中,可以通过一个有效池来执行临时池的功能。 图3和4中所示的数据结构示出具有特定信息类型的数据结构。在另一个应用中,该物理卷数据结构124和池数据结构126可以具有比图中所示更少、更多或不同的字段。借用规则表134还可以用不同方式构造,并且可以包括与图12中所示不同的信息。 在该图中所示的特定元件组已经用具有相同数字前缀之后接着后缀“a”、后缀“b”或者后缀“n”来标记。例如,该物理卷被标记为114a、114b、...114n,并且该逻辑卷被标记为116a、116b、...116n。按照这种方式标记的元件组并不是意味着不同的元件组在每个组中包含相同数目的元件。例如,物理卷114a...114n的数目不一定与逻辑卷116a...116n的数目相同。 因此,上述应用的描述被给出用于说明的目的。它不是要穷尽或把本发明限制为所公开的具体形式。在上述思想的启示之下,可以有许多变型和变化。本发明的范围不由所述的内容限制,而是由所附加的权利要求限制。上述说明书、实例和数据对本发明的部件的制造和使用提供完整的说明。由于本发明可以做出许多实现方式而不脱离本发明的精神和范围,因此本发明由所附权利要求限定。 **IBM、Tivoli、RS/6000、AIX和Magster、ESCON、OS/390是国际商业机器公司的商标。
《用于返回物理卷的方法、系统和产品.pdf》由会员分享,可在线阅读,更多相关《用于返回物理卷的方法、系统和产品.pdf(50页珍藏版)》请在专利查询网上搜索。
在此提供一种用于在存储池中的返回处理的方法、系统和产品。多个物理卷被分配给第一存储池。确定该第一存储池是否具有大于一个阈值数目的空白物理卷。如果第一存储池具有大于阈值数目的空白物理卷,则至少一个空白物理卷被返回到第二存储池。 。
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有经营许可证编号:粤ICP备2021068784号-1