存储信息的装置和方法

文档序号:6561028阅读:152来源:国知局
专利名称:存储信息的装置和方法
技术领域
本发明涉及在数据存储设施中存储数据的装置和方法。
背景技术
现有技术的分层存储管理(“HSM”)系统将数据从一种存储技术例如RAM存储器移植到另一种存储技术,诸如磁盘。例如,可以将数据从磁盘移植到磁带。这种现有技术的方法一定需要大量的数据处理开销。
需要的是不需要将数据从第一存储技术移植到第二存储技术的HSM装置和方法。申请人的装置和方法提供了监视历史数据访问请求,并且预测将来的数据访问请求,并且基于这些历史的和预测的分析,在申请人的数据存储设施内的适当位置布置数据存储介质的HSM方法。与将数据从一种存储技术移植到另一种存储技术的现有技术的HSM装置和方法不同,申请人的装置和方法将数据存储介质移动到申请人的数据存储设施内的适当位置。

发明内容
申请人的发明包括存储数据的装置和方法。申请人的方法提供了自动数据资料库,其包括一个或多个数据存储设备、(N)个数据存储介质、第一多个存储单元、以及机器人访问机构,所述机器人访问机构可以将每个数据存储介质从第一多个存储单元中的至少一个传输到数据存储设备中的至少一个。申请人的方法还提供包括第二多个存储单元但是不包括数据存储设备的存储储存库。
申请人的方法选择第(i)个信息存储介质,其中(i)大于或等于1并且小于或等于(N),并且设置第(i)个数据状态,其中从包括在线、离线和库存的组中选择第(i)个数据状态。如果申请人的方法将第(i)个数据状态设置为在线,则该方法可移动地将该第(i)个数据存储介质放置在数据存储设备中的一个内。如果申请人的方法将第(i)个数据状态设置为离线,则该方法将第(i)个数据存储介质可移动地放置到第一多个存储单元中的一个上。如果申请人的方法将第(i)个数据状态设置为库存,则该方法将第(i)个数据存储介质可移动地放置到储存库内的第二多个存储单元中的一个上。


通过结合附图阅读下面的详细描述将更好地理解本发明,其中相同的标号用于指示相同的元件,并且其中图1是分层存储管理(“HSM”)的图形概观;图2是示出了HSM实现的方框图;图3A是示出申请人的数据存储系统的一个实施例的方框图;图3B是申请人的自动数据资料库的一个实施例的立体视图;图3C是申请人的机器人访问机构的一个实施例的立体视图;图4包括示出了包括入库的HSM系统内的状态转变的方框图;图5示出了示例的SCSI写命令;图6示出了示例的SCSI读命令;图7示出了示例的SCSI模式选择命令;图8示出了示例的SCSI模式感测命令;图9示出了示例的SCSI模式页;图10A示出了HSM策略和相关联的准则的某种映射;图10B示出了HSM策略和相关联的准则的附加映射;图11示出了示例的SCSI移动介质命令;图12示出了数据库的存储介质参数字段;图13示出了确定存储介质使用率特性的处理;图14示出了关联多个存储介质使用率的处理;图15示出了预测安装分析的处理;
图16示出了确定重新安装次数的处理;和图17是给出了申请人的方法的概观的流程图。
具体实施例方式
参考其中以相同的标号和符号指示相同的部分的附图,图1是现有技术的分层存储管理(“HSM”)系统100的图形概观。在示出的图1的实施例内,HSM100包括存储器106、硬盘107、光盘108和磁带109。在某些实施例中,存储器106包括固态存储器,固态存储器某些时候被称为随机存取存储器(“RAM”)。硬盘107包括以例如吉字节(GB)计量的不同容量和以每秒兆字节(MB/sec)计量的数据速率。
对于硬盘107和光盘108,数据速率取决于盘介质上的记录密度和每分钟的旋转圈数(“RPM”)。对于带109,数据速率取决于I/O头同时读取的记录道数、记录密度和所述带越过I/O头的线性速度。
在某些实施例中,从包括相变(“PC”)、磁光(“MO”)、一次写多次读(“WORM”)、压缩盘(“CD”)、数字通用盘(“DVD”)、高清晰度DVD(“HD-DVD”)、UDO、蓝光、全息术的组中选择光盘108。在某些实施例中,磁带109包括,例如,诸如IBM的LinearTape Open(“LTO”)或IBM3592的单卷轴盒式磁带。
本领域的技术人员应当理解,存储层级结构100不限于图1中提出的技术。存储层级结构100中可以包括其它技术,诸如聚合物表面内的毫微大小的刻痕,并且可以基于以$/GB为单位的标准化成本和以MB/秒为单位的性能将这些其它技术定位于存储层级结构100内。
性能102尤其是对数据的访问时间和I/O速度的函数。一般地,固态存储器106的性能最高,并且带109的性能最低。本领域的技术人员应当理解,带存储固有地包括长的对于随机检索的寻找时间。标准化价格104包括存储数据的标准化成本,诸如$/吉字节,并且带存储器109的标准化价格最低而固态存储器106的标准化价格最高。
因此,性能与价格成反比例。用户通常希望低价格和高性能两者,这需要价格104和性能102间的折衷。申请人的方法被设计以执行这种折衷。
图2示出了使用数据处理基础设施200的现有技术的HSM实现。在图2的示出的实施例中,盘系统204被通过链路连接208连接到带系统206。可以使用控制链路210通过存储管理系统202将数据从盘系统204直接移动到带系统206。存储管理系统202管理数据传输。还可以通过链路210间接地将数据从盘系统204移动到存储管理系统202,并且再通过链路210从存储管理系统202移动到带206。存储管理系统202管理这种间接移动。
现有技术的分层存储管理系统的目标是使用最适当的存储技术存储数据,随时地在数据价值和数据存储的成本之间进行平衡。随时地在某些时候将组成HSM系统的数据从一种存储技术移植到另一种存储技术。例如,频繁读取和/或更新的数据最初被存储在诸如盘的快速存储介质上。然而随着时间的变化,当不再频繁地使用该数据时,可以将数据移植到较慢但是较便宜的介质诸如带上。因此,移植指通过包括数据链路208和210的基础设施的数据移动。带存储比硬盘存储更便宜,因为带设备在空闲时不消耗能源。另外,盒式磁带没有I/O头、记录通道、伺服系统等。在某些实施例中,将有价值的数据存储在独立盘冗余阵列(“RAID”)上。虽RAID存储可能在$/GB上更贵,但这种存储提供了比带好得多的I/O性能。
在其它现有技术的HSM方法内,将有价值的数据存储在提供高可靠性和灾难保护的企业盘系统上,而较低价值的数据被写到中等范围盘系统上,中等范围盘系统不提供企业盘系统的可靠性、容量或性能,但是更便宜。本领域的技术人员应当理解,任意种类的从一种存储介质到另一种存储介质的数据移动一定需要互连不同类型的存储技术的基础设施。
相反,申请人的发明不同地实现HSM协议。现在参考图3A,申请人的系统300包括资料库90、储存库50和连有存储器的网络(“SAN”)10。不是使用包括存储管理器102、不同的存储技术104和106以及控制/通信链路108的基础设施,而是,申请人的装置和方法包括统一的系统300,其包括资料库90、储存库50和SAN10。在图3A的示出的实施例中,SAN10包括构造66、交换机67和连有网络的存储器40。本领域的技术人员应当理解,在其它实施例中,SAN10可以包括不同的元件。
不是将数据从第一层级层诸如盘204通过链路208或210移植到第二层级层诸如带206,而是,申请人的装置和方法物理地将包含数据的存储介质98移动到自动数据存储资料库90内的适当位置或移到储存库50。
图3A是示出了根据本发明的一个实施例的示例的存储区域网络(“SAN”)10的诸方面的方框图。SAN10被设计为交换访问网络,其中交换机67用于创建交换构造66。在本发明的该实施例中,使用运行在光纤信道(“FC”)物理层上的小型计算机系统接口(SCSI)协议实现SAN10。然而,可以使用其它协议诸如Infiniband、FICON、TCP/IP、以太网、吉比特以太网或iSCSI实现SAN10。交换机67具有主机62-65、控制器80的主机接口86和I/O接口87、储存库50的储存库控制器53以及连有网络的存储器(NAS)40的地址。
主机计算机62,63,64,65分别使用I/O接口72,73,74,75连接到构造66。I/O接口72-75可以是任意类型的I/O接口;例如,FC环路,到构造66的直接连接,或由主机计算机62-65用来分别向和从构造66传输信息的一个或多个信号线。构造66包括,例如,用于连接两个或多个计算机网络的一个或多个FC交换机67。在一个实施例中,FC交换机67是传统的路由器交换机。
交换机67将主机计算机62-65跨过到主机接口86的I/O接口79互连到资料库控制器80。I/O接口79可以是任意类型的I/O接口,例如,光纤信道、Infiniband、吉比特以太网、以太网、TCP/IP、iSCSI、SCSI I/O接口,或由FC交换机67用来分别通过主机接口86向和从控制器80和随后的I/O单元91传输信息的一个或多个信号线。I/O单元91是允许出于从该存储介质98读数据和向该存储介质98写数据的目的安装和卸下存储介质98的系统。交换机67通过链路77互连I/O接口87。链路77可以是任意类型的I/O接口,例如,光纤信道,Infiniband、吉比特以太网、以太网、TCP/IP、iSCSI、SCSI I/O接口。链路77在主机计算机62-65和I/O单元91之间提供直接连接。
现在参考图3A、3B和3C,资料库90包括控制器80、I/O单元91、盒式访问机构92、导入/导出(I/E)站93、存储单元97和多个存储介质98。在图3B中示出的实施例中,资料库90包括I/O单元91A、91B和91C。在某些实施例中,I/O单元91A包括磁带数据存储设备,其中设备91A可以从被可移动地布置在其内的磁带读取数据并向其写数据。在某些实施例中,I/O单元91B包括硬盘数据存储设备,其中设备91B可以从被可移动地布置在其中的硬盘读取数据,并且向其写数据。在某些实施例中,I/O单元91C包括光盘数据存储设备,其中设备91C可以从被可移动地布置在其中的光盘读取数据,并且可选择地向其写数据。
在图3C的示出的实施例中,机器人访问机构92沿着轨道系统54双向地移动。在某些实施例中,轨道系统54延伸到储存库50。
访问机构92包括垂直梁95,升降伺服部分沿着垂直梁95双向地移动。升降伺服部分包括一个或多个夹持机构96,以便把握住并承载数据存储介质98。
当存储介质98被安装到I/O单元91中的一个内时,其是“在线”状态。资料库90内的存储单元97被用于在“离线”状态的中间时段搁置存储介质98。储存库50内的存储单元52用于在“入库”状态的长的时段搁置存储介质98。
存储介质98是封装有可移动存储介质诸如硬盘的盒式存储器,并且在资料库90内,存储介质98被“离线”地存储在存储单元97内,或它被“在线”地安装在I/O单元91内。当被安装在I/O单元91内时,可由主机系统62-65通过I/O接口87经由I/O链路94向和从存储介质98读出和写入数据。当存储介质98被存储在存储单元97内时,主机系统62-65不能立即得到数据,并且存储介质98的该状态被称为“离线”。控制器80通过I/O接口87并且通过连接链路95指挥机器人盒式存储器访问机构92。如果I/O接口87是SCSI接口,控制器80可以通过给I/O单元91和盒式存储器访问机构92中的每一个分配唯一的逻辑单元号(LUN)区分它们。
盒式存储器访问机构92在存储单元97、存储I/O单元91和导入/导出(I/E)站93之间传输存储介质98。使用数据库85,控制器80还监视并且存储存储介质98和其数据的使用率,其物理位置(I/O单元91、存储单元97或储存库存储单元52、I/E站93或储存库I/E站51),以及存储介质98是否是可写的或WORM。
导入/导出(I/E)站93是可物理地访问的外部接口,其允许将存储介质98导出到储存库50以便长时间存储。基于主机系统62-65中的一个的请求,或根据控制器80的请求,控制器80指示自动盒式存储器访问机构92将存储介质98移动到I/E站93中以便进行导出操作,或从I/E站93移动到存储单元97或I/O单元91以便进行导入操作。
资料库90包括一个或多个控制器80,其尤其控制自动盒式存储器访问机构92的操作。在某些实施例中,控制器80包括嵌入的系统。在其它的实施例中,控制器80包括分布式的控制系统。在其它实施例中,控制器80包括个人计算机。在其它实施例中,控制器80包括工作站。
在图3A示出的实施例中,控制器80包括处理器82、随机存取存储器(“RAM”)84、非易失存储器83、专用电路81和I/O接口87。可替换地,可以在主机62-65中的一个主机内完全以软件实现控制器80。
在某些实施例中,RAM84和/或非易失存储器83被布置在处理器82内。在某些实施例中,专用电路81和I/O接口87被布置在处理器82内。处理器82可以包括现有微处理器、定制的处理器、FPGA、ASIC或其它形式的离散逻辑。
在某些实施例中,RAM84用于高速缓存正被主机62-65写或正为主机62-65而读的数据、和/或保持计算的数据、堆栈数据、可执行指令等。非易失存储器83可以包括任意类型的非易失存储器,诸如电可擦可编程只读存储器(“EEPROM”)、闪速可编程只读存储器(“PROM”)、电池后备RAM、硬盘驱动器或其它类似的设备。
在某些实施例中,非易失存储器83用于存储可执行固件和任意非易失数据。I/O接口87包括一个或多个通信接口,其允许处理器82与I/O单元91、盒式存储器访问机构92和I/E站93通信。主机接口89允许处理器82与构造66、交换机67、储存库50的导入/导出站52和主机62-65通信。I/O接口87的例子包括串行接口,诸如RS-232、通用串行总线、小型计算机系统接口、光纤信道、吉比特以太网、它们的组合等。在某些实施例中,I/O接口87包括无线接口,诸如射频(“RF”)或红外线。
在某些实施例中,专用电路81包括专用硬件、固件、和/或软件,以便使得控制器80能够执行独特的功能,诸如用于控制器80的环境冷却的风扇控制。在某些实施例中,专用电路81包括提供脉宽调制(PWM)控制、模数转换(ADC)、数模转换(DAC)等的硬件、固件和/或软件。在某些实施例中,专用电路81的全部或部分可置于控制器80的外部。
时钟89包括用于控制器80的系统时钟。在某些实施例中,时钟89给出本地日期和时间。在其它实施例中,时钟89参考格林威治标准时间给出日期和时间。
交换机67通过I/O接口78将主机计算机62-65互连到连有网络的存储器40。在某些实施例中,从包括光纤信道、Infiniband、吉比特以太网、TCP/IP、iSCSI、SCSI I/O接口、或由FC交换机67用来分别向和从连有网络的存储器40传输信息的一个或多个信号线的I/O设备的组中选择I/O接口78。连有网络的存储器40可以包括带存储器、盘存储器或光存储器。
SAN10包括储存库50。在各种调整的和/或专门实现的数据保持体系下,顾客可能需要将数据保持很长一段时间,在某些情形下多至几十年。为了保持存储单元97可用于对时间要求严格的数据,可以将多个存储介质转移到储存库50。储存库50还包括用于将盒式存储器转移到和转移出储存库的储存库I/E站51。
在某些实施例中,布置储存库50和资料库90,使得储存库50位于资料库90邻近。在这些布置的实施例的某些实施例中,一个或多个机器人访问机构92能够在资料库90和储存库50之间双向行进。在这些实施例中,申请人的储存库50和资料库90通过轨道系统54互连。
在其它实施例中,储存库50不与资料库90布置在一起,从而自然灾害较少可能破坏储存库50和资料库90两者。在这些实施例中,使用传统的媒介传输在资料库90和储存库50之间传输存储介质98。在某些实施例中,可能只能手动地访问存储单元52。在某些实施例中,储存库50不包括I/O单元,因而不能向或从储存库50电子地传输顾客数据。
在某些实施例中,储存库50包括储存库控制器53,其中该储存库控制器通过构造66与控制器80通信。在这些实施例中,数据库85给出哪些存储介质在资料库90中以及哪些存储介质在储存库50中。
在申请人的装置和方法的某些实施例中,各个数据存储介质被放置在便携的壳体内。在某些实施例中,该壳体还包括RFID标签,该RFID标签包括分配给被放置在该壳体内的数据存储介质的卷号。本领域技术人员应当理解,“RFID”代表射频识别。RFID包括自动识别技术,从而由读取器使用无线电波捕捉在RFID标签或“智能签条”内编码的数字数据,诸如卷号。因此,RFID类似于条形码技术,但是它使用无线电波从标签捕捉数据而不是光学地扫描签条上的条形码。RFID不需要看到所述标签或签条就能读出其存储的数据。
在这些RFID实施例中,储存库控制器53包括RFID阅读器,RFID阅读器可以无线地读出布置在储存库中的各个数据存储介质的卷号。在某些实施例中,该储存库控制器与资料库控制器80通信。在这些实施例中,储存库控制器53向资料库控制器报告存储在该储存库内的各个数据存储介质的卷号。资料库控制器更新数据库85,以便反映数据存储介质进入和离开储存库50的移动。
申请人的方法评估对编码到被布置在申请人的数据存储设施300内的多个数据存储介质的数据的访问要求。图17概述了申请人的方法的步骤。现在参考图17,在步骤2005,该方法提供(N)个存储介质,每个包括在其内被编码的数据。在某些实施例中,(N)大约是100。在其它实施例中,(N)大约是1000。在其它实施例中,(N)大约是10,000。在其它实施例中,(N)大于10,000。
步骤2005还包括提供自动数据资料库,诸如资料库90,其中该资料库包括控制器诸如控制器80、一个或多个数据存储设备诸如设备(多个)91、第一多个存储单元诸如存储单元93。步骤2005还包括提供储存库,诸如储存库50。
在步骤2010,申请人的方法就对编码到所选择的数据存储介质内的数据即第(i)个数据的数据访问请求,评估所述(N)个数据存储介质中的一个,即,第(i)个数据存储介质。在某些实施例中,由资料库控制器诸如控制器80执行步骤2010。
在步骤2020,申请人的方法确定是否需要或很可能立即访问第(i)个信息。如果申请人的方法在步骤2020确定或是立即需要或是很可能立即访问第(i)个信息,则该方法从步骤2020转到步骤2030,在步骤2030该方法将第(i)个数据存储介质可移动地布置到被布置在申请人的自动资料库内的适当的数据存储设备内,如果这个设备可用的话。在某些实施例中,步骤2030还包括由资料库控制器80向机器人访问机构诸如访问机构92发出指令/命令,以便将第(i)个数据存储介质放置在指定的数据存储设备内。
申请人的方法从步骤2030转到步骤2040,在步骤2040该方法将第(i)个数据存储介质的数据状态,即,第(i)个数据状态,设置为“在线”。在某些实施例中,由资料库控制器诸如控制器80执行步骤2040。申请人的方法从步骤2040转到步骤2010,并且如此处描述的那样继续。
如果申请人的方法在步骤2020确定既不需要也不是很可能立即访问第(i)个数据存储介质,则该方法从步骤2020转到步骤2050,在步骤2050,该方法确定是否很可能频繁访问第(i)个信息。在某些实施例中,由资料库控制器诸如控制器80执行步骤2050。
如果申请人的方法在步骤2050确定频繁访问第(i)个信息是很可能的,则该方法从步骤2050转到步骤2060,在步骤2060,该方法将第(i)个数据存储介质可移动地布置在被布置在申请人的自动资料库内的第一多个存储单元内的一个上,如果这个存储单元可用的话。在某些实施例中,步骤2060还包括由资料库控制器80向机器人访问机构诸如访问机构92发出指令/命令,以便将第(i)个数据存储介质放置在申请人的自动数据资料库90内的指定的存储架97上的指定位置处。
申请人的方法从步骤2060转到步骤2070,在该步骤该方法将第(i)个数据存储介质的数据状态,即,第(i)个数据状态,设置为“离线”。在某些实施例中,由资料库控制器诸如控制器80执行步骤2070。申请人的方法从步骤2070转到步骤2010,并且如此处描述的那样继续。
如果申请人的方法在步骤2050确定不是很可能频繁访问第(i)个信息,则该方法从步骤2050转到步骤2080,在该步骤中该方法将第(i)个数据存储介质可移动地布置在被布置在申请人的储存库内的第二多个存储单元内的一个上,如果这个存储单元可用的话。在某些实施例中,步骤2080还包括由资料库控制器80向机器人访问机构诸如访问机构92发出指令/命令,以便将第(i)个数据存储介质放置在申请人的数据储存库内的指定存储架上的指定位置处。
申请人的方法从步骤2080转到步骤2090,在该步骤中该方法将第(i)个数据存储介质的数据状态,即,第(i)个数据状态,设置为“库存”。在某些实施例中,由资料库控制器诸如控制器80执行步骤2090。申请人的方法从步骤2090转到步骤2010,并且如此处描述的那样继续。
对(N)个数据存储介质的访问要求的评估包括连续处理。申请人的确定哪个存储介质分配有数据状态在线、或是数据状态离线、或是数据状态库存的方法在下面更详细地阐述。
控制器80监视布置在系统300内的全部(N)个存储介质的位置。在某些实施例中,控制器80使用数据库85保持这些位置。数据库85包括“存储介质地图”。在某些实施例中,数据库85包括DB2数据库。在其它实施例中,数据库85包括Microsoft Excel数据库。在某些实施例中,数据库85被编码到非易失存储器83内,以便在控制器80电源故障的情况下防止数据丢失。在某些实施例中,在主机62-65的一个或多个中保持数据库85的一个或多个拷贝。
图12给出了构成申请人的数据库85的字段。现在参考图12,第一列给出了表示布置在储存库50或资料库90内的存储介质的卷序列号的卷号(volser)1550-1552。存储介质的卷号-或卷序列号是分配给存储介质的唯一的号码。在某些实施例中,卷号被印在布置在容纳有该存储介质的盒式存储器上的条形码标签上。可由连接于盒式存储器访问机构92的适当的条形码阅读器读取这种条形码。在某些实施例中,卷号被写到介质本身上以便允许交叉检查。
列1104给出了每个卷号的应用类型。可以不为所有卷号设置应用类型1104,尤其是不为仍未被使用的介质设置应用类型1104。在收到模式选择命令900(图7),并且指定了具有用于卷号1106的应用类型1104的模式页1100之后,由资料库控制器80在数据库内设置应用类型1104。
列1510给出每个编目的存储介质的安装数目。使用申请人的方法,每次将特定的存储介质安装到I/O单元91中时,由资料库控制器80递增用于该存储介质的安装数1510,并且将该递增后的计数写到数据库85。
列1512给出了以前发生的安装的最近日期和时间。在某些实施例中,给出2到5个以前的安装。每次安装存储介质时,资料库控制器80从时钟89获得当前的日期和时间,并且将此信息存储在列1512内。如果存储的日期和时间的数目超过了2到5,则删除最早的日期和时间。
列1514给出了使用期,其指出该卷被频繁使用的特定日期和时间。由方法1600更新该字段(图13)。列1516给出相关联的介质关系,该介质关系指示被在与该卷号相同时间附近安装的那些存储介质的卷号。由方法1700更新该字段(图14)。
列1518指定重新安装次数,其指示介质最近被安装的次数。由方法1900(图16)更新该字段。
列1520指示根据图4的介质的数据状态。从包括在线锁定数据402、在线未锁定数据404、离线锁定数据406、离线未锁定数据408、离线未锁定以便入库423、入库未锁定424和入库锁定426的组中选择数据状态,在线锁定数据402包括必须保持为在线的数据,并且相关联的存储介质98被安装在I/O单元91内,在线未锁定数据404包括保持为在线并且可以被卸下的数据,并且相关联的存储介质98被安装在I/O单元91内,但是可以被卸下并且移到存储单元内,离线锁定数据406包括保持为离线并且未被要求访问的数据,离线未锁定数据408包括保持为离线并且被要求访问的数据。由资料库控制器80连续地更新数据库85,以便反映布置在储存库50和资料库90内的各个存储介质的当前数据状态1520。
资料库90连续地分析数据状态,以便确定存储介质是否应当保持安装(在线数据)在I/O单元91内,或被卸下(离线数据)到存储架97,或入库到储存库50。为了确定是否在较昂贵的位置保持数据,申请人的方法检查下面的准则最后访问的时间、在特定存储介质上存储数据的应用的类型、未解决的数据访问请求数和可用驱动器数的对比、访问类型(读、写、定位)、预定的时间间隔内的重新安装次数、以及卸下请求。
当安装的存储介质98被从I/O单元91卸下到存储单元97时,数据对于主机62-65中的应用30来说将成为离线的。卸下可以是通常由主机系统62-65和/或应用30给出的明确的或隐含的卸下请求。隐含的卸下请求的例子包括一段时间未访问存储介质。明确的卸下请求的例子包括SCSI-3移动介质命令1400(图11),其指挥资料库90从I/O单元91卸下存储介质98。
图11中的移动介质命令1400包括xA5的操作代码1402,逻辑单元号1403相应于资料库90对于主机系统62-65来说的地址。传输元件1404指定用于移动存储介质98的盒式存储器访问机构92。源元件地址1406指示I/O单元91,目的地元件地址1408指定分配给将被卸下的存储介质的存储单元97。
当卸下的存储介质98被安装到I/O单元91时,数据对于主机62-65内的应用30成为在线的。由主机系统62-65或应用30向资料库控制器80给出安装指令,并且该安装指令可以是明确的或隐含的安装请求。由SCSI-3移动介质命令1400(图11)示例地给出明确的安装请求。移动介质命令1400的源元件地址1406指定将要安装的存储介质98的存储单元97,目的地地址指定I/O单元91。由SCSI写命令700(图5)或由SCSI读命令800(图6)给出隐含的安装请求。更具体地,在收到从主机62-65或应用通过主机接口86或I/O接口87向I/O单元发送的SCSI读或写命令之后,资料库控制器通过将存储介质从存储单元移动到I/O单元将离线存储介质98的状态改变为在线。
图5示出了包括SCSI写命令的写命令700,其中该命令包括开始逻辑块地址(LBA)702、传输长度703和逻辑单元号(LUN)704。LUN704可用于指定由写命令700将数据写到哪个I/O单元91。开始LBA702指示存储介质98上的用于接收数据的第一个逻辑块地址,并且传输长度703指示传输多少数据。可以跨过SCSI或光纤通道接口实现写命令700。写命令700包括一个可能的写命令。其它SCSI写命令包括写加验证,例如,在写命令成功结束之前验证所写数据的情形。
图6示出了包括SCSI读命令的读命令800,SCSI读命令包括开始逻辑块地址(LBA)802、传输长度803和逻辑单元号(LUN)804。LUN804可用于指定由读命令800从哪一个I/O单元91读该数据。开始LBA802指示用于将要读取的数据的存储介质98上的第一个逻辑块的地址,并且传输长度803指出传输多少数据。可以跨过SCSI或光纤信道接口实现读命令800。读命令800仅为一种可以使用的可能的读命令。
图4给出了驻留在存储介质98内的数据的状态转变400。资料库控制器80对被编码到布置在系统300内的数据存储介质的数据进行分类。基于该数据分析,这些存储介质将被在线、离线或入库存储。
申请人的方法包括数据状态402,404,406,408,423,424和426。在在线锁定数据状态402下,数据必须保持为在线,并且因此相关联的存储介质98被安装在I/O单元91内。在在线未锁定数据状态404下,数据被保持安装在I/O单元91内,但是可以被卸下并移到存储单元97。在离线锁定数据状态406下,数据保持为离线,并且不需要立即访问。在离线未锁定数据状态408下,数据被离线存储但是需要进行访问,并且因此,需要将相关联的存储介质98从存储单元97移动到I/O单元91,并且申请人的系统等待I/O设备成为可用。
在离线未锁定以便入库状态423下,数据被离线存储,其中不需要对数据进行访问,并且其中包括该数据的存储介质可被移到储存库50。在某些实施例中,通过储存库连接54将数据存储介质传输到储存库。在其它实施例中,手动地将数据存储介质传输到储存库。
在入库未锁定状态424下,数据被存储在储存库50内,但是需要在资料库90中进行访问,并且因此必须将以该数据编码的数据存储介质从储存库50移到资料库90。在某些实施例中,通过储存库连接54将数据存储介质从储存库50传输到资料库90。在其它实施例中,手动地将数据存储介质从储存库50传输到资料库90。在入库锁定状态426下,数据被存储在储存库50内,并且不需要在资料库90中进行访问。
控制器80实现申请人的策略,并且因此通过容纳该数据的存储介质98的适当的移动,执行该数据的状态转变。申请人的策略逻辑地组合图10A和10B中给出的准则。图10A和10B在表的主体中给出根据策略1302针对每个准则1304检查的逻辑。
现在参考图4、10A和10B,策略410管理从在线锁定数据状态402到在线未锁定数据状态410的转变。策略410检查参数(上次访问的时间>TA1 AND请求数与可用驱动器的比=0)OR(应用类型是备份AND上次访问时间>TA2 AND上次访问类型=读)OR(应用类型是备份AND上次访问时间>TA3 AND上次访问类型=写)OR(应用类型是归档AND上次访问时间>TA4 AND上次访问类型=读)OR(应用类型是归档AND上次访问时间>TA5 AND上次访问类型=写)OR(明确的卸下请求)。
在某些实施例中,时间间隔TA1-TA5包括分钟。在某些实施例中,时间间隔TA1被设置为大约30分钟到大约60分钟之间。在某些实施例中,时间间隔TA2大于TA3,因为备份应用在读数据上要比在写数据上可能具有更多的延迟。如本领域的技术人员应当理解的,备份应用通常在相对短的时间间隔内写数据。在另一方面,多个读操作可能需要30-60分钟的时间间隔。这与归档应用类似,归档应用中TA4典型地小于TA5,因为来自归档应用的读请求通常在一个时间发生,但是写操作可能散布于30-60分钟上。
策略411管理从在线锁定数据状态402到离线未锁定数据状态408的转换。策略411检查参数(上次访问时间>TA13)AND(待处理请求数与安装数之比>0)并且(重新安装计数器=0)AND(安装的预测分析=中等)AND(数据访问请求=NO)。该策略411将导致由盒式存储器访问机构92从I/O单元91卸下存储介质98。当对该数据存储介质的上次访问时间大于时间间隔TA13时,策略411的实现临时使得一个驱动器成为是可用的。在某些实施例中,时间间隔TA13大于时间间隔TA1。
策略412管理从在线锁定数据状态402到离线锁定数据状态406的转变。策略412检查参数((上次访问时间>TA11)AND(重新安装次数=0))OR((待处理请求数与可用驱动器的比>1)AND(安装的预测分析=低))。在某些实施例中,上次访问时间TA11小于策略410中使用的时间间隔TA1。实现策略412导致由访问机构92将存储介质98从I/O单元91卸下并且移到存储单元97。
策略413管理从在线未锁定数据状态404到在线锁定数据状态402的转变,在所述在线锁定数据状态402中数据被访问以便进行读或写。此时存储介质98仍然安装在I/O单元91内,并且可以快速地用于数据访问。在策略413下不需要存储介质的物理移动。
策略414管理从在线未锁定数据状态404到离线锁定数据状态406的转变。策略414检查参数((上次访问时间>TA6)AND(安装的预测分析=低))OR(请求数与可用驱动器之比>0)OR(重新安装计数器频率<=1)。时间间隔TA6大于TA1,并且在某些实施例中在大约60分钟到大约90分钟之间。在某些实施例中,414的策略类似于策略410,其中分析应用类型和上次访问时间(应用类型是备份AND上次访问时间>TA7 AND上次访问类型=读)OR(应用类型是备份AND上次访问时间>TA8 AND上次访问类型=写)OR(应用类型是归档AND上次访问时间>TA9 AND上次访问类型=读)OR(应用类型是归档AND最后访问时间>TA10 AND最后访问类型=写)。实现策略414导致由访问机构92将存储介质98从I/O单元91上卸下,并且移到存储单元97。
策略415管理从在线未锁定数据状态404到离线未锁定数据状态408的转变。策略415检查参数(数据访问请求=NO AND重新安装计数器=0)AND((上次的访问时间>TA12 AND待处理请求数与可用驱动器之比>0)OR(卸下请求AND安装的预测分析=中等))。除了在策略415下必须有中等的重新安装的可能性并且重新安装计数器是0之外,策略415类似于策略414。这是为了防止频繁的重新安装。如果该策略是真的,它导致由盒式存储器访问机构92将存储介质98从I/O单元91卸下,并且将该存储介质物理地移动到存储单元97。
策略416管理从离线锁定数据状态406到在线未锁定数据状态404的转变。策略416利用下面描述的申请人的预测分析,其中(安装的预测分析=中等)AND(待处理请求数与可用驱动器数之比=0)。该转变导致将存储介质98安装在I/O单元91内。
策略417管理从离线锁定数据状态406到离线未锁定数据状态408的转变。策略417检查(请求的数据访问=YES)并且(待处理请求数与可用驱动器之比>0)。该转变使得资料库管理器80让I/O单元成为是可用的。
策略418管理从离线锁定数据状态406到在线锁定数据状态402的转变。策略418检查(待处理请求数与可用驱动器数之比=0)AND(需要数据访问)。该转变导致将存储介质98安装在I/O单元91内。
策略419管理从离线未锁定数据状态408到离线锁定数据状态406的转变。策略409确定是否(数据访问请求=NO)AND(安装的预测分析=低)。当例如主机系统62-65或应用30取消了数据访问请求或安装时调用策略419。
策略420管理从离线未锁定数据状态408到在线锁定数据状态402的转变。策略确定是否(需要数据访问=YES)AND(待处理请求数与可用驱动器数之比<=0)。当由准则“待处理请求数与可用驱动器数之比<=0”指示I/O单元可用时执行该转变。如果策略420是真的,该转变导致将存储介质98安装在I/O单元91内。
策略421管理从离线未锁定数据状态408到在线未锁定数据状态404的转变。策略4112检查参数(安装的预测分析=高)AND(待处理请求数与可用驱动器之比<=0)。该转变导致将存储介质98安装在I/O单元91内。
现在参考图10B,策略430管理从离线锁定数据状态406到离线-入库数据状态423的转变。策略430确定是否(上次访问时间>TA20)AND(安装的预测分析=低)。时间阈值TA20包括存储介质98未被使用的最小时间间隔。在某些实施例中,系统用户可以配置该时间阈值。在某些实施例中,TA20被设置为185天,即,如果已经185天未使用存储介质,则将该存储介质移动到储存库中。该转变使得存储介质成为被移到储存库中的候选。由策略438管理存储介质的物理移动。
策略436管理从离线入库数据状态423到离线锁定数据状态406的转变。策略436确定是否(需要数据访问=YES)OR(安装的预测分析>低)。在该转变中,将存储介质的状态改变为离线锁定,不发生物理移动。
策略438管理从离线入库数据状态423到入库锁定数据状态426的转变。策略438确定是否(上次访问时间>TA 21)AND(安装的预测分析=低)。时间阈值TA21必须大于TA20。在某些实施例中,用户设置TA21的值。在某些实施例中,TA21被设置为200天。策略438的实现使得存储介质98物理地从自动资料库90的存储单元97移到储存库50。
在某些实施例中,策略438的实现包括使用机器人访问机构92。在其它实施例中,策略438的实现包括手动的处理和传输导出的数据存储介质。无论怎样,通过I/E站93从自动资料库90导出存储介质98,将其移到储存库I/E站51,由储存库控制器53导入到储存库,并且存储在储存库存储单元52内。储存库控制器53可以通过RFID标签或条形码阅读器读取卷号,并且通过链路71将其报告给资料库控制器80。资料库控制器相应地更新数据库85的状态字段1520(图12)中的存储介质状态。
策略440管理从入库锁定数据状态426到入库未锁定数据状态424的转变。策略440确定是否(需要数据访问=YES)OR(安装的预测分析>低)。该转变确定需要储存库50内的存储介质98以便进行访问。在该转变中,准备存储介质以便通过储存库I/E站51从储存库50导出。
策略444管理从入库未锁定数据状态424到入库锁定数据状态426的转变。策略444确定是否(需要数据访问=NO)AND(安装的预测分析=低)。该策略将存储介质98保持在适当的储存库存储单元52内。
策略446管理从入库未锁定数据状态424到离线锁定数据状态406的转变。策略446确定是否(需要数据访问=YES)OR(安装的预测分析>低)。策略446的实现使得储存库控制器53通过储存库I/E站51从储存库50导出存储介质98,例如通过访问机构92沿着轨道系统54将导出的存储介质98移到自动资料库90,通过资料库I/E站93将存储介质98导入资料库90,并且在适当的存储单元97中存储存储介质98。
为了实现上述策略,控制器80检测哪个I/O单元91内安装有存储介质98,检测哪个存储介质98被安装在每个I/O单元91内,获得关于安装在I/O单元91内的存储介质98的上次访问时间的信息,并且从I/O单元91获得关于对安装在其内的存储介质98的上次访问的类型的信息。
由通信链路94将控制器80互连到各个I/O单元91。通信链路94可以实现标准协议,诸如IBM3584-RS422驱动器/资料库接口规范。控制器80将获得的数据写到数据库85。
另外,资料库控制器80从主机系统62-65以及各个应用30获得信息,其中这种信息包括指示应用的类型,卸下请求和数据访问请求。使用已有的协议交换该信息。例如,在某些实施例中,采用SCSI-3介质更换器命令集,以便将该信息从主机62-65中的一个传输到控制器80。
现在参考图7,在某些实施例中,使用模式选择命令900,以便将应用类型发送到资料库控制器80。新模式页可以,例如,包括模式页代码0Eh,并且不必是实现时所使用的一个。使用现有技术的方法,存在现在未使用的多于10个的模式页代码。申请人的模式选择命令900指定参数列表长度904。该长度相应于被顺序传递的字节即模式页1100(图9)的数目。现在参考图9,模式页1100包括模式页代码1102,在图9示出的实施例中为0Eh,并且在1104中指示应用类型。
在某些实施例中,使用8比特指示应用类型,其中每个值相应于一种应用类型。可以指示共256个不同的应用类型。在某些实施例中,使用下面的值(1)x01-备份/恢复应用;(2)x02-归档应用;(3)x03-关键应用。
可以基于新应用类型的定义对其进行扩展。字段1106指定与应用类型1104相关联的存储介质98的卷号。如本领域技术人员应当理解的,卷号或卷序列号包括布置在自动数据存储资料库90内的各个存储介质98的唯一的标识符。当主机62-65访问介质上的数据时,主机向资料库90提供模式选择命令900,从而使用模式页的字段1104和1106将请求安装的应用30的类型通知给控制器80。
资料库控制器80在数据库85中存储与每个安装在I/O单元91内的存储介质98相关联的应用类型。现在参考图12,将由卷号1501指示的每个存储介质98的应用类型1104永久地存储在数据库85内以便进行后续的分析。现在参考图8,应用30还可以利用具有命令代码x1A的1002的SCSI-3命令模式感测1000确定应用类型。字段1004指定被查询的页的页代码,必须将其设置为页0Eh,它返回要求的信息。在后续模式页0Eh(图9)中,资料库控制器80在字段1104中返回存储介质的指定卷号1106的应用类型。
基于资料库控制器80与I/O单元和主机系统交换的信息,控制器80确定存储介质98的使用特性,将多个存储介质之间的使用特性进行相关,并且对重新安装计数计分。所述使用特性指示特定存储介质是否在某些时间段中被使用,并且在图13中详细示出。多个存储介质之间的使用特性的相关性指示一个介质的使用是否与另一个存储介质的使用一致,并且在图14中详细示出。
使用由图14和13的步骤产生的结果,资料库控制器80执行图15中提出的预测安装分析,以便预测安装或数据访问请求和卸下。另外如图16中详细所示,资料库控制器80还确定重新安装次数。这种重新安装次数包括一种记分算法,它对特定介质在一个时间段内被重新安装的频率记分。在某些实施例中,由用户定义该时间段。在其它实施例中,图16的时间段被设置为60分钟。这种重新安装次数被用作卸下的准则。申请人的算法从错误中“学习”,所述错误诸如过早地从I/O单元91卸下介质98,以及过于经常试图卸下正确的介质。
现在参考图13,通过监视存储介质的安装和卸下活动,并且将其与特定的时间段相关联,资料库控制器80确定各个存储介质98(由卷号1501指示)的使用特性。以这种方式,资料库管理器能够确定是否在一天或一个星期或一个月或一年的某些时间访问了特定存储介质。为了实现图13中示出的处理,资料库控制器在资料库控制器数据库85内存储关于(a)安装数目1510,(b)安装请求的最近日期和时间1512,以及(c)安装请求的确定的时期1514的信息。图12就这个方面示出了数据库格式85。安装数目是计数器1510,根据针对各个存储介质的安装请求连续地递增计数器1510。安装请求的最近日期和时间1512是最后的2-5个安装请求的日期和时间列表。项目时期1514指出存储介质最可能被请求安装的日期和时间段。数据库85中的该字段是图13中的处理的结果。
图13示出了在资料库控制器80中实现以便确定使用特性的处理1600。在步骤1604,从主机系统62-65和/或应用30接收安装请求。安装请求等同于数据访问请求,并且通常包括要访问的存储介质98的卷号1501。
在步骤1606,通过比较存储在数据库85中的参数安装数目1510是否大于1,资料库控制器80确定该存储介质以前是否已被安装。如果控制器80在步骤1606确定以前未安装过该数据存储介质,则申请人的方法从步骤1606转到步骤1616。
可替换地,如果控制器80在步骤1606确定以前安装的数目大于1,申请人的方法从步骤1606转到步骤1608,在该步骤资料库控制器确定本地日期和时间。可以通过作为资料库控制器的一部分的时钟89获得本地时间。
申请人的方法从步骤1608转到步骤1609,在该步骤资料库控制器确定该安装请求的日期和时间是否与存储在数据库85内的时期1514匹配。如果控制器确定该安装请求的日期和时间与存储在数据库85内的时期1514匹配,则该方法从步骤1609转到步骤1616。
可替换地,如果控制器确定该安装请求的日期和时间不与存储在数据库85内的时期1514匹配,则该方法从步骤1609转到步骤1610,在该步骤从数据库85中删除时期1514。申请人的方法从步骤1610转到步骤1611,在该步骤从数据库85确定最近安装的日期和时间1512。
申请人的方法从步骤1611转到步骤1612,在该步骤资料库控制器确定最近安装的日期和时间1512与在步骤1608确定的当前日期和时间之间是否存在相关性。例如,如果卷1501一天中被请求安装某些次,或在每星期内被请求或安装一星期中的若干天,则存在相关性。换言之,相关性确定请求安装卷1501的某些时期。如果库控制器确定在最近安装1512的日期和时间与当前日期和时间之间不存在相关性,则该方法从步骤1612转到步骤1616。
可替换地,如果资料库控制器确定在最近安装的日期和时间1512与当前日期和时间之间存在相关性,申请人的方法从步骤1612转到步骤1614,在该步骤将该相关时期作为项目1514存储在数据库85内。这种相关时期可以包括例如在每天的上午11:00,或在每个星期五下午5点。
申请人的方法从步骤1614转到步骤1616,在该步骤资料库控制器递增安装数目1510,并且在数据库85内存储该递增后的数目。在步骤1618,资料库控制器将在步骤1608确定的当前日期和时间作为一个用于最近的安装的日期和时间1612存储在数据库85中。注意,作为项目1512被存储的最近日期和时间的数目可以在2到5之间,如果必要则丢弃最早的日期和时间。处理在步骤1620结束。
在图14中详细示出的申请人的方法1700将多个存储介质的介质使用关联在一起。资料库控制器80通过监视特定存储介质的安装或卸下是否在另一个存储介质的安装或卸下之前或之后进行,将多个存储介质的使用特性关联在一起。这种关联被不断地执行,并且由安装或数据访问请求触发。
申请人的使用关联基于表示与对特定存储介质的关系权重的整数,其中越高的数字反映存储介质间越高的相关性。申请人的方法在数据库85中的字段“相关联介质关系”1516中存储该关系权重。
现在参考图14,在步骤1702从主机系统62-65接收存储介质的安装请求和被请求的卷号1501。在步骤1704,资料库控制器80确定该安装请求中引用的卷号是否已具有与其它存储介质的关系。使用数据库85的字段“相关联介质关系”1516进行该确定。空的字段表示不存在与另一个卷号的关系。
如果资料库控制器80在步骤1704确定被请求的卷号和其它卷号之间不存在联系,则该方法从步骤1704转到步骤1714,其中该方法确定是否检查到新的卷号联系的存在。这种新的卷号联系包括,例如,恰好在接收到本请求之前被安装的另一个卷号。在某些实施例中,步骤1714还包括建立关系时间间隔,并且其中步骤1714包括确定是否在以收到安装被请求的卷号的请求的日期和时间结束的关系时间间隔内接收到安装对另一个卷号的请求。
如果资料库控制器80在步骤1714确定不存在新的卷号联系,则该方法从步骤1714转到步骤1720。可替换地,如果资料库控制器80在步骤1714确定存在新的卷号联系,则该方法从步骤1714转到步骤1716,在该步骤资料库控制器80识别相关存储介质的卷号。申请人的方法从步骤1716转到步骤1718,在该步骤将在步骤1716识别出的卷号的关系计数器递增1。申请人的方法从步骤1718转到步骤1720。
如果资料库控制器80在步骤1704确定已存在卷号联系,则申请人的方法从步骤1704转到步骤1706,在该步骤资料库控制器80识别与被请求安装的存储介质有联系的一个或多个卷号。在某些实施例中,步骤1706包括检查数据库字段1516,该字段给出相关的卷号以及关系权重。
申请人的方法从步骤1706转到步骤1708,在该步骤资料库控制器确定在步骤1702的接收请求之前是否安装过在步骤1706识别出的卷号。在某些实施例中,步骤1708包括检查包括最近安装日期和时间的数据库字段1512。
如果资料库控制器确定在步骤1702的接收请求之前已安装过在步骤1706识别出的卷号,则该方法从步骤1708转到步骤1710,在该步骤资料库控制器将关系权重增加1申请人的方法从步骤1710转到步骤1720。
可替换地,如果资料库控制器确定在步骤1702的接收请求之前未安装过在步骤1706识别出的卷号,则该方法从步骤1708转到步骤1712,在该步骤资料库控制器将相关联的关系减1。如果关系权重等于或小于0,则从字段1516中删除该关系。
申请人的方法从步骤1712转到步骤1720,在该步骤该方法将更新后的关系写到数据库的字段1516内。在某些实施例中,申请人的方法采用语法卷号<关系权重>,其中卷号包括相关的卷号,并且关系权重是计算出的数。
图15概述了申请人的执行预测安装分析的方法的步骤,在该步骤资料库控制器80确定由卷号表示的特定存储介质的安装的可能性。图15中给出的申请人的方法的实施例在从主机系统62-65和/或应用30实际接收安装请求之前预测这种请求,从而在接收安装请求之前安装该介质。在某些实施例中,申请人的方法同时地为(N)个不同的存储介质执行(N)次图15的步骤。
在进行这种预测时,资料库控制器检查图12中的数据库85的某个字段,诸如分配给存储介质的应用类型1104、存储介质的使用时期1514、以及相关联的介质关系1516。由主机系统62-65和应用30以采用模式页1100(图9)的模式选择命令900(图7)将应用类型信息传递给资料库控制器80。为各个安装使用图13中给出的步骤连续地确定存储介质的使用时期,并且将结果作为项目1514存储在数据库85内。为各个安装使用图14中给出的步骤确定相关联的介质关系,并且将结果作为项目1516存储在数据库85内。
参考图15,在步骤1804,资料库控制器选择进行预测分析的存储介质,其中例如该存储介质包括卷号-11550。在步骤1806,资料库控制器使用时钟89确定当前日期和时间。在步骤1808,资料库控制器为卷号-1从数据库85(图12)检索使用时期1514。
在步骤1810,资料库控制器确定当前日期和时间是否与步骤1808的使用时期基本匹配。对于“基本匹配”,申请人的意思是在大约30分钟内。如果资料库控制器80在步骤1810确定当前日期和时间与使用时期1514基本匹配,则控制器将可能性设置为高,表示资料库控制器80很可能接收到针对该卷1550的安装请求。
可替换地,如果资料库控制器确定当前日期和时间基本不与步骤1808的使用时期匹配,则该方法从步骤1810转到步骤1814,在该步骤资料库控制器确定最近例如最后30分钟被安装的存储介质的卷号。从而资料库控制器可以为所有的卷分析数据库85的字段1512。
在步骤1815,申请人的方法利用数据库85的卷1550分析字段1516确定在步骤1814确定的所有卷的关系权重。申请人的方法从步骤1815转到步骤1816,在该步骤资料库控制器为在步骤1815确定的任意卷检查大于0的关系权重。如果任意卷的关系权重大于0,申请人的方法转到步骤1817,在该步骤该方法确定该关系权重是否大于1。
如果申请人的方法在步骤1817确定关系权重大于1,则该方法从步骤1817转到步骤1812,在该步骤将可能性设置为高。可替换地,如果申请人的方法在步骤1817确定关系权重不大于1,则该方法从步骤1817转到步骤1822。
如果在步骤1816资料库控制器确定没有关系权重大于0,则该方法从步骤1816转到步骤1818,在该步骤资料库控制器确定指定的安装评估期间内安装的所有存储介质的应用类型。在某些实施例中,步骤1820包括检查数据库85中的字段1104(图12)。
申请人的方法从步骤1818转到步骤1820,在该步骤资料库控制器确定卷号-1的应用类型是否与最近安装的介质的应用类型匹配。如果资料库控制器确定卷号-1的应用类型与最近安装的介质的应用类型匹配,则该方法从步骤1820转到步骤1822,在该步骤资料库控制器将可能性设置为中等。可替换地,如果资料库控制器确定卷号-1的应用类型不与最近安装的介质的应用类型匹配,则该方法从步骤1820转到步骤1824,在该步骤资料库控制器将可能性设置为低。
在某些实施例中,只要超过一个指定的空闲时间阈值未安装I/O单元,申请人的方法就调用图15的步骤。在某些实施例中,由用户设置该空闲时间阈值。在某些实施例中,将该空闲阈值设置为30分钟。
使用图16中详细给出的申请人的方法1900,资料库控制器80根据安装或数据访问请求确定存储介质的重新安装次数。重新安装次数包括由某个重新安装间隔内的安装数目确定的整数。在某些实施例中,由系统用户设置该重新安装间隔。在某些实施例中,重新安装间隔被设置为大约60分钟。
现在参考图16,在步骤1902主机系统62-65和/或应用30向资料库控制器80提供数据访问/安装请求,其包括被请求的存储介质的卷号。申请人的方法从步骤1902转到步骤1904,在该步骤资料库控制器使用时钟89确定当前日期和时间。申请人的方法从步骤1904转到步骤1906,在该步骤资料库控制器确定正被安装的卷号的最近安装的日期和时间。在某些实施例中,步骤1906包括使用数据库85(图12)的字段1512。
申请人的方法从步骤1906转到步骤1908,在该步骤资料库控制器将最近安装的日期和时间与当前日期和时间进行比较,并且确定该存储介质是否被在指定的重新安装间隔内重新安装。如果资料库控制器确定该存储介质被在指定的重新安装间隔内重新安装,则该方法从步骤1908转到步骤1910,在该步骤资料库控制器递增重新安装次数参数。重新安装次数参数包括数据库85(图12)中的字段1518。申请人的方法从步骤1910转到步骤1914。
如果资料库控制器确定在指定的重新安装时间内没有重新安装该存储介质,则该方法从步骤1908转到步骤1912,在该步骤资料库控制器将该卷号的重新安装次数参数重置为0,指示在指定的重新安装时间段内没有重新安装该卷号。申请人的方法从步骤1912转到步骤1914,在该步骤资料库控制器在数据库85中存储更新的重新安装次数参数1518。
申请人的资料库控制器80从未正在使用的驱动器数目中减去待处理安装或数据访问请求的数目。未正在被使用的驱动器的数目等于运行中的未安装存储介质的驱动器的数目。如果该结果小于0,则有多于需要I/O单元的I/O单元91可用。如果该结果大于0,则有多于可用I/O单元91的安装请求。
在某些实施例中,资料库90包括虚拟数据服务器系统。该虚拟数据服务器使用高速缓存和适当的高速缓存算法,其中将用于立即访问的数据写到高速缓存中,并且其中不进行立即访问的数据被存储在可移动介质诸如资料库90内的存储介质98上。使用这种虚拟数据服务器,将立即需要的数据以在线状态写到存储介质98上。包括不是立即需要的数据的存储介质或是以离线状态置于资料库存储单元97内,或以入库状态置于储存库存储槽52内。
此处描述的实施例可以采取完全硬件实施例、完全软件实施例、或包含硬件和软件元件两者的实施例的形式。在某些实施例中,以软件实现本发明,所述软件包括但不限于固件、驻留软件、微代码和它们的组合。
在某些实施例中,可由存储服务提供商采用申请人的装置和方法,以便给一个或多个数据存储服务顾客提供增强的数据存储服务。在这些存储服务实施例中,存储服务提供商接收顾客数据和顾客存储策略。存储服务提供商将顾客数据写到(N)个数据存储介质,其中这些(N)个数据存储介质包括多个可用数据存储介质中的全部或部分。基于顾客的存储策略,数据存储提供商给(N)个数据存储介质中的每一个分配数据状态,其中从包括在线、离线和库存的组中选择该数据状态。基于分配的数据状态,如此处描述的那样存储(N)个数据存储介质中的每一个。
在某些申请人的存储服务提供商实施例中,该方法包括收取不同费用。在某些实施例中,为安装在数据存储设备内的每个数据存储介质收取第一价格,并且为存储在自动资料库内的存储单元内的每个数据存储介质收取第二价格,并且为存储在储存库中的各个数据存储介质收取第三价格。在某些实施例中,第一价格大于第二价格,并且第二价格大于第三价格。
图13,14,15,16和/或17中给出的申请人的方法的实施例可被单独地实现。另外,在某些实施例中,可以组合、消除或重新排序图13,14,15,16和/或17中给出的各个步骤。
在某些实施例中,申请人的发明包括驻留在存储器诸如存储器83(图3A)内的指令,其中由控制器80(图3A,3B)执行这些指令,以便执行图13,14,15,16和/或17中给出的步骤。
在其它实施例中,申请人的发明包括驻留在任意其它计算机程序产品内的指令,其中由系统300外的或内的计算机执行这些指令,以便执行图13,14,15,16和/或17中给出的步骤。在任意情况下,指令可被编码在信息存储介质中,所述信息存储介质包括,例如,磁信息存储介质、光学信息存储介质、电子信息存储介质等。对于“电子存储介质”,申请人的意思是,例如,诸如PROM、EPROM、EEPROM、闪速PROM、Compactflash、Smartmedia等的器件。
虽然已详细给出了本发明的优选实施例,但很明显,本领域的技术人员可对这些实施例进行修改和调整,而不脱离下面的权利要求中提出的本发明的范围。
权利要求
1.一种用于存储数据的方法,包括步骤提供多个数据存储介质;提供自动数据资料库,其包括数据库、一个或多个数据存储设备、第一多个存储单元和机器人访问机构,所述机器人访问机构可以将所述多个数据存储介质中的每一个从所述第一多个存储单元中的至少一个传输到所述一个或多个数据存储设备中的至少一个;提供包括第二多个存储单元的存储储存库;选择第(i)个数据存储介质,其中所述第(i)个数据存储介质是所述多个数据存储介质中的一个;设置第(i)个数据状态,其中所述第(i)个数据状态选自包括在线、离线和库存的组;如果所述第(i)个数据状态被设置为在线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述一个或多个数据存储设备中的一个内;如果所述第(i)个数据状态被设置为离线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第一多个存储单元中的一个内;以及如果所述第(i)个数据状态被设置为库存,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第二多个存储单元中的一个内。
2.如权利要求1的方法,还包括步骤接收从第(j)个数据存储介质读数据和/或向第(j)个数据存储介质写数据的请求,其中第(j)个数据存储介质包括所述多个数据存储介质中的一个;确定第(j)个数据存储介质以前是否被安装在所述一个或多个数据存储设备中的一个内;如果所述第(j)个数据存储介质以前被安装在所述一个或多个数据存储设备中的一个内,则进行以下操作确定当前日期和时间;确定所述第(j)个数据存储介质的最近在前安装的日期和时间;确定所述当前日期和时间是否与所述在前安装日期和时间匹配;如果所述当前日期和时间与所述在前安装日期和时间匹配,进行操作,建立第(j)个使用期;在所述数据库内保存所述第(j)个使用期。
3.如权利要求2的方法,其中所述数据库还包括第(j)个预测可能性,所述方法还包括步骤检索所述第(j)个使用期;确定所述当前日期和时间是否与所述第(j)个使用期匹配;如果所述当前日期和时间与所述第(j)个使用期匹配,则进行操作,将所述第(j)个预测可能性设置为高。
4.如权利要求3的方法,还包括步骤确定第(j)个应用类型;建立安装评估期;如果所述当前日期和时间不与所述第(j)个使用期匹配,则进行操作,确定在所述安装评估期内安装的所有存储介质的应用类型;确定所述第(j)个应用类型是否与在所述安装评估期内安装的所有存储介质的应用类型匹配;如果所述第(j)个应用类型与在所述安装评估期内安装的所有存储介质的应用类型匹配,则进行操作,将所述第(j)个预测可能性设置为中等;如果所述第(j)个应用类型不与在所述安装评估期内安装的所有存储介质的应用类型匹配,则进行操作,将所述第(j)个预测可能性设置为低。
5.如权利要求4的方法,其中所述数据库还包括第(j)个重新安装计数器,所述方法还包括步骤建立重新安装间隔;确定在所述重新安装间隔内是否安装了所述第(j)个数据存储介质;如果在所述重新安装间隔内安装了所述第(j)个数据存储介质,则进行操作,递增所述第(j)个重新安装次数计数器;如果在所述重新安装间隔内未安装所述第(j)个数据存储介质,则进行操作,将所述第(j)个重新安装次数计数器设置为0;将所述第(j)个重新安装次数计数器写到所述数据库。
6.如权利要求7的方法,还包括步骤在所述一个或多个数据存储设备中的一个内安装所述第(j)个数据存储介质;如果所述第(j)个预测可能性被设置为中等,并且如果所述第(j)个重新安装计数器为0,并且如果没有针对所述第(j)个数据存储介质的待处理读或写请求,则进行以下操作将所述第(j)个数据状态设置为离线;以及从所述数据存储设备卸下所述第(j)个数据存储介质。
7.如权利要求6的方法,还包括步骤确定自从所述第(j)个数据存储介质上次安装以来的时间间隔;如果自从所述第(j)个数据存储介质上次安装以来的所述时间间隔大于所述重新安装间隔,并且如果所述第(j)个预测可能性被设置为低,则进行以下操作将所述第(j)个数据状态设置为库存;以及将所述第(j)个数据存储介质布置在所述储存库内的所述第二多个存储单元中的一个上。
8.如权利要求1的方法,其中所述数据库包括关系计数器,所述方法还包括步骤接收从第(j)个数据存储介质读数据和/或向第(j)个数据存储介质写数据的请求,其中第(j)个数据存储介质包括所述多个数据存储介质中的一个;确定当前日期和时间;基于所述当前日期和时间建立关系时间间隔;确定在所述关系时间间隔内是否接收到安装第(l)个数据存储介质的请求,其中所述第(l)个数据存储介质包括所述多个数据存储介质中的一个,并且其中第(l)个数据存储介质不同于第(j)个数据存储介质;如果在所述关系时间间隔内接收到安装第(l)个数据存储介质的请求,则进行操作,递增所述关系计数器。
9.一种在数据存储设施内存储数据的装置,所述数据存储设施包括数据库;多个数据存储介质;包括一个或多个数据存储设备、第一多个存储单元、以及机器人访问机构的自动数据资料库;和包括第二多个存储单元的存储储存库,其中所述访问机构可以将所述多个数据存储介质中的每一个从所述第一多个存储单元中的至少一个传输到所述一个或多个数据存储设备中的至少一个,所述装置包括用于选择第(i)个信息数据存储介质的部件,其中所述第(i)个数据存储介质是所述多个数据存储介质中的一个;用于设置第(i)个数据状态的部件,其中所述第(i)个数据状态选自包括在线,离线和库存的组;用于如果所述第(i)个数据状态被设置为在线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述一个或多个数据存储设备中的一个内的部件;用于如果所述第(i)个数据状态被设置为离线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第一多个存储单元中的一个内的部件;以及用于如果所述第(i)个数据状态被设置为库存,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第二多个存储单元中的一个内的部件。
10.如权利要求9的装置,还包括用于接收从第(j)个数据存储介质读数据和/或向第(j)个数据存储介质写数据的请求的部件;用于确定第(j)个数据存储介质以前是否被安装在所述一个或多个数据存储设备中的一个内的部件,其中第(j)个数据存储介质包括所述多个数据存储介质中的一个;用于如果所述第(j)个数据存储介质以前被安装在所述一个或多个数据存储设备中的一个内,则进行以下操作的部件确定当前日期和时间;确定最近在前安装的日期和时间;确定所述当前日期和时间是否与所述在前安装日期和时间匹配;如果所述当前日期和时间与所述在前安装日期和时间匹配,则进行操作,建立第(j)个使用期;将所述第(j)个使用期写到所述数据库内。
11.如权利要求10的装置,其中所述数据库还包括第(j)个预测可能性,所述装置还包括用于检索所述第(j)个使用期的部件;用于确定所述当前日期和时间是否与所述第(j)个使用期匹配的部件;用于如果所述当前日期和时间与所述第(j)个使用期匹配,则进行操作,将所述第(j)个预测可能性设置为高的部件。
12.如权利要求11的装置,还包括用于确定第(j)个应用类型的部件;用于检索预定的安装评估期的部件;用于如果所述当前日期和时间不与所述第(j)个使用期匹配,则进行操作,确定在所述安装评估期内安装的所有存储介质的应用类型的部件;用于确定所述第(j)个应用类型是否与在所述安装评估期内安装的所有存储介质的应用类型匹配的部件;用于如果所述第(j)个应用类型与在所述安装评估期内安装的所有存储介质的应用类型匹配,则进行操作,将所述第(j)个预测可能性设置为中等的部件;用于如果所述第(j)个应用类型不与在所述安装评估期内安装的所有存储介质的应用类型匹配,则进行操作,将所述第(j)个预测可能性设置为低的部件。
13.如权利要求13的装置,其中所述数据库还包括第(j)个重新安装计数器,所述装置还包括用于检索预定的重新安装间隔的部件;用于确定在所述重新安装间隔内是否安装了所述第(j)个数据存储介质的部件;用于如果在所述重新安装间隔内安装了所述第(j)个数据存储介质,则进行操作,递增所述第(j)个重新安装次数计数器的部件;用于如果在所述重新安装间隔内未安装所述第(j)个数据存储介质,则进行操作,将所述第(j)个重新安装间隔计数器设置为0的部件;用于将所述第(j)个重新安装计数器写到所述数据库的部件。
14.如权利要求13的装置,还包括用于在所述一个或多个数据存储设备中的一个内安装所述第(j)个数据存储介质的部件;用于如果所述第(j)个预测可能性被设置为中等,并且如果所述第(j)个重新安装计数器为0,并且如果没有针对所述第(j)个数据存储介质的待处理读或写请求,则进行以下操作的部件将所述第(j)个数据状态设置为离线;以及从所述数据存储设备卸下所述第(j)个数据存储介质。
15.如权利要求14的装置,还包括用于确定自从所述第(j)个数据存储介质上次安装以来的时间间隔的部件;用于如果自从所述第(j)个数据存储介质上次安装以来的所述时间间隔大于所述重新安装间隔,并且如果所述第(j)个预测可能性被设置为低,则进行以下操作的部件将所述第(j)个数据状态设置为库存;以及将所述第(j)个数据存储介质布置在所述储存库内的所述第二多个存储单元中的一个上。
16.如权利要求9的装置,还包括用于接收从第(j)个数据存储介质读数据和/或向第(j)个数据存储介质写数据的请求的部件,其中第(j)个数据存储介质包括所述多个数据存储介质中的一个;用于确定当前日期和时间的部件;用于基于所述当前日期和时间建立关系时间间隔的部件;用于确定在所述关系时间间隔内是否接收到安装第(l)个数据存储介质的请求的部件,其中所述第(l)个数据存储介质包括所述多个数据存储介质中的一个,并且其中第(l)个数据存储介质不同于第(j)个数据存储介质;用于如果在所述关系时间间隔内接收到安装第(l)个数据存储介质的请求,则进行操作,递增所述关系计数器的部件。
17.一种可用于可编程计算机处理器的计算机程序产品,所述计算机程序产品中包含计算机可读程序代码,所述计算机可读程序代码用于在数据存储设施中存储数据,所述数据存储设施包括自动数据资料库,其包括一个或多个数据存储设备、多个数据存储介质、第一多个存储单元、和机器人访问机构;存储储存库,其包括第二多个存储单元;以及数据库;并且其中所述机器人访问机构可以将所述多个数据存储介质中的每一个从所述第一多个存储单元中的至少一个传输到所述一个或多个数据存储设备中的至少一个,该计算机程序产品包括使得所述可编程计算机处理器执行如权利要求1-8中任意一个的方法中的步骤的计算机可读程序代码。
18.一种数据存储设施,包括多个数据存储介质;自动数据存储资料库,其包括第一多个存储单元、与控制器通信的一个或多个数据存储设备、和与一个或多个主计算机通信的所述控制器;储存库,其包括第二多个存储单元,其中所述储存库不包括任何数据存储设备;与所述控制器通信的机器人访问机构,其中所述访问机构包括夹持机构,并且其中所述机器人访问机构可以在所述第一多个存储单元和所述一个或多个数据存储设备之间双向地传输所述多个便携数据存储介质中的每一个。
19.如权利要求18的数据存储设施,其中所述机器人访问机构可以在所述第一多个存储单元和所述储存库之间双向地传输所述多个数据存储介质中的每一个。
20.如权利要求19的数据存储设施,其中所述多个数据存储介质中的每一个被布置在不同的便携壳体内,并且其中每个这种壳体还包括以与布置在该壳体内的数据存储介质相关联的卷号编码的RFID标签,所述数据存储设施还包括包括RFID阅读器的储存库控制器,其中所述储存库控制器布置在所述储存库内;其中所述RFID阅读器可以确定布置在所述储存库内的各个数据存储介质的卷号。
21.如权利要求20的数据存储设施,还包括通信链路,其将所述储存库控制器和所述资料库控制器互连;其中所述数据库指示所述多个存储介质中的哪些被安装在所述一个或多个数据存储设备内,并且其中所述数据库还指示哪些存储介质被可移动地布置在所述第一多个存储单元内,并且其中所述数据库还指示哪些数据存储介质被可移动地布置在所述第二多个存储单元内。
22.一种增强由数据存储服务提供商向数据存储顾客提供的服务的方法,包括步骤提供多个数据存储介质;提供包括一个或多个数据存储设备、第一多个存储单元和机器人访问机构的自动数据资料库,所述机器人访问机构可以在所述第一多个存储单元和所述一个或多个数据存储设备之间双向地传输所述多个数据存储介质中的每一个;提供包括第二多个存储单元的存储储存库,其中所述储存库不包括任何数据存储设备;接收来自所述顾客的数据;将所述顾客数据写到(N)个数据存储介质,其中所述多个数据存储介质包括所述(N)个数据存储介质;接收来自所述顾客的存储策略;选择第(i)个数据存储介质,其中所述第(i)个数据存储介质包括所述(N)个数据存储介质中的一个;基于所述存储策略,设置第(i)个数据状态,其中所述第(i)个数据状态选自包括在线、离线和库存的组;如果所述第(i)个数据状态被设置为在线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述一个或多个数据存储设备中的一个内;如果所述第(i)个数据状态被设置为离线,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第一多个存储单元中的一个内;以及如果所述第(i)个数据状态被设置为库存,则进行操作,将所述第(i)个数据存储介质可移动地布置在所述第二多个存储单元中的一个内。
23.如权利要求22的方法,还包括步骤为被分配了所述在线数据状态的各个数据存储介质设置第一存储价格;为被分配了所述离线数据状态的各个数据存储介质设置第二存储价格;为被分配了所述库存数据状态的各个数据存储介质设置第三存储价格。
全文摘要
公开了一种存储数据的方法。该方法提供多个数据存储介质;包括一个或多个数据存储设备、第一多个存储单元和机器人访问机构的自动数据库。该方法还提供包括第二多个存储单元、但不包括数据存储设备的存储储存库。该方法选择第(i)个数据存储介质,并且设置第(i)个数据状态,其中该第(i)个数据状态选自包括在线、离线和库存的组。在该方法将第(i)个数据状态分别设置为在线、离线、库存的情况下,该方法将该第(i)个数据存储介质分别安装在所述数据存储设备中的一个、所述第一多个存储单元中的一个、所述第二多个存储单元中的一个内。
文档编号G06F17/30GK1924861SQ20061011489
公开日2007年3月7日 申请日期2006年8月16日 优先权日2005年8月31日
发明者尼尔斯·豪斯坦, 克莱格·安托尼·克莱恩, 丹尼尔·詹姆斯·威纳尔斯基, 约瑟夫·瓦因甘德, 乌尔夫·特罗普恩斯 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1