虚拟磁带库系统的制作方法_4

文档序号:8926994阅读:来源:国知局
1302到1314。举例来说,当客户端 请求新的虚拟磁带时,可以执行操作1302。当在与虚拟磁带驱动器相关联时请求格式化虚 拟磁带时,可以执行操作1304到1310。在另一实施方案中,当请求新的虚拟磁带时可以执 行操作1302、1304和1308。然而,当在载入到虚拟磁带驱动器中时请求格式化虚拟磁带时, 产生全局产生ID且将其存储在虚拟磁带中。在另一实施方案中,在请求新的虚拟磁带后执 行所有操作1302-1310,因为假定新的虚拟磁带被格式化。
[0078] 现转向图13,示出根据至少一个实施方案的可用以操作虚拟磁带的流程的说明性 实例。此流程1200可以通过例如图3和9中所示的那些计算资源而实现,所述计算资源包 括客户端存档系统302、虚拟磁带库装置304、管理服务器306、数据服务器308、元数据存储 器310、供应商主动存储系统312,供应商存档存储系统314、虚拟磁带902、全局标头906、 宏块912和数据块910。虚拟磁带库装置可接收1202在虚拟磁带上一位置处访问数据的 请求。可以扫描1204全局标头元数据以至少部分基于虚拟磁带位置来确定所指定的位置。 由于系统使用虚拟磁带,所以按相对项或绝对项来给定位置。举例来说,相对请求可以是用 于记录的请求,也就是距离磁带标头位置1001的限定数目个记录。绝对请求可用于记录位 置,从虚拟磁带的末端或虚拟磁带902的开始起的指定数目个记录。一旦确定位置,即可计 算逻辑数据容器位置以确定与全局标头的偏移,其可用以得出所确定的数据块928。可将所 确定的宏块元数据载入1206到存储器中。可写入1208日志条目,其识别出宏块元数据处 于存储器中。可对宏块进行操作1210。所述数据可同步持续1212到逻辑数据容器,同时等 待其它指令。如果数据操作超过宏块边界或在完成写入或宏块后,那么可更新日志以反映 存储器中的新宏块且全局元数据的改变可持续。
[0079] 图14示出根据至少一个实施方案的可用以写入到虚拟磁带的流程的说明性实 例;此流程1400可以通过例如图3和9中所示的那些计算资源而实现,所述计算资源包括 客户端存档系统302、虚拟磁带库装置304、管理服务器306、数据服务器308、元数据存储器 310、供应商主动存储系统312,供应商存档存储系统314、虚拟磁带902、全局标头906、宏块 912和数据块910。在一些实施方案中,虚拟磁带驱动器可具有最大记录长度,例如四兆字 节或十六兆字节。可将小于最大记录大小的接收数据写入为一个记录。可跨越若干记录来 写入大于最大记录大小的接收数据。在实施方案中,记录也可以宏块边界。当跨越宏块边 界写入时,与第一宏块相关的全局元数据可持续到全局标头,例如全局文件标志旗标和全 局记录旗标。可从存储器去除第一宏块元数据,且接着可将连续的宏块元数据载入到存储 器中。举例来说,可将两个宏块的元数据载入到存储器中并在全局标头中的日志中进行参 考。第一宏块可包括写入将开始的位置。第二宏块可以是与第一宏块连续的,使得写入将 在第二宏块中结束。当写入从第一宏块转变到第二宏块时,第一宏块可用以持续关于第一 宏块的全局标头信息,例如全局文件标志旗标和全局记录旗标。当写入继续到第二宏块中 时,第一宏块元数据可从存储器卸载且从日志去除。与第二宏块连续的第三宏块接着可使 其元数据载入到存储器中并在日志中进行参考。
[0080] 当虚拟磁带载入到虚拟磁带驱动器中时,虚拟磁带库装置可将写入数据到虚拟磁 带上的请求转换为在逻辑数据容器上读取数据和写入数据的请求。逻辑数据容器中的元数 据可帮助写入请求经由随机访问而比物理磁带上的线性访问更快速地寻找数据(例如,磁 带的末尾)。在所示出实施方案中,在接收写入数据的请求之后,可使用与虚拟磁带相关联 的逻辑数据容器的全局标头中的文件标志元数据和/或记录元数据来确定1402宏块位置。 举例来说,写入请求可试图将数据放置在磁带数据的末尾处。在一些虚拟磁带驱动器中,磁 带数据的末尾可由两个连续的文件标志表示。虚拟磁带库装置可扫描全局文件标志元数 据以寻找两个连续的全局文件标志旗标,且接着将虚拟磁带标头位置中的位置存储在日志 中。可将与所确定的写入位置相关联的元数据块载入1404到存储器中。可审核与写入位 置相关联的数据块组以确保数据块组产生ID匹配1406全局产生ID。如果不匹配,那么可 将全局产生ID复制到数据块组产生ID以使所写入数据有效。在将宏块元数据载入到存储 器中之后,还可以在全局标头中的日志中参考1408载入到存储器中的宏块元数据。可指出 开始数据块与作为记录的开端的数据块组元数据相关联1410。可在被写入影响的数据块的 每一元数据条目中指出记录大小。记录大小可以是剩余数据或最大允许记录大小中的较小 值。接着可将数据写入1412多达记录大小或宏块的末尾。如果存在剩余数据1414且写入 未1416超出宏块的末尾,那么后续记录可经产生1410且进一步处理。如果存在1414剩余 数据且写入超出1416宏块边界,那么宏块中的数据可同步地持续到逻辑数据容器,且全局 标头内的元数据可异步地更新1418,例如全局文件标志旗标、全局记录旗标和磁带标头位 置。所述日志还可更新1422以下内容:来自存储器的宏块的引退,以及连续宏块到存储器 中的载入1404和进一步处理。如果不存在1414剩余数据,那么可在数据组元数据中更新 1424文件标志以标记写入的末尾。在一些实施方案中,两个文件标志可用以指出数据的末 尾。数据可与写入发生同步地持续1426到逻辑数据容器,使得存储器的任何改变将不会丢 失,其后,下一命令可等待1428。
[0081]现转向图15,示出根据至少一个实施方案的可用以使用虚拟磁带来寻找记录的流 程的说明性实例。此流程1500可以通过例如图3和9中所示的那些计算资源而实现,所述 计算资源包括客户端存档系统302、虚拟磁带库装置304、管理服务器306、数据服务器308、 元数据存储器310、供应商主动存储系统312,供应商存档存储系统314、虚拟磁带902、全局 标头906、宏块912和数据块910。当虚拟磁带载入到虚拟磁带驱动器中时,虚拟磁带库装 置可将寻找虚拟磁带上的数据的请求转换为在逻辑数据容器上数据的请求。逻辑数据容器 中的元数据可帮助寻找请求经由随机访问而比物理磁带上的线性访问更快速地寻找数据。 在所示出实施方案中,接收1502用以在磁带标头的相对位置处访问数据的请求。接着从全 局记录元数据1504读取磁带标头位置。基于磁带标头位置来确定1506全局记录旗标中的 位置。接着可扫描和计数1508全局记录旗标,直到确定相对位置为止,例如朝向磁带末尾 的5个记录。所述扫描可取决于给定的寻找命令而向前(朝向磁带末尾)或倒退(朝向磁 带开始)。通过使用全局记录旗标中的所确定的相对位置,还可确定逻辑数据容器中的数据 块和宏块位置。接着可将此位置存储1510为全局元数据中的磁带标头位置。
[0082] 现转向图16,示出根据至少一个实施方案的可用以使用虚拟磁带来寻找文件标志 的流程的说明性实例。此流程1600可以通过例如图3和9中所示的那些计算资源而实现, 所述计算资源包括客户端存档系统302、虚拟磁带库装置304、管理服务器306、数据服务器 308、元数据存储器310、供应商主动存储系统312,供应商存档存储系统314、虚拟磁带902、 全局标头906、宏块912和数据块910。此流程可类似于图15中关于记录而描述的流程。在 所示出实施方案中,接收1602用以在磁带标头的相对位置处寻找文件标志的请求。接着从 全局文件标志元数据1604读取磁带标头位置。基于磁带标头位置来确定1606全局文件标 志旗标中的位置。接着可扫描和计数1608全局文件标志旗标,直到确定相对位置为止,例 如朝向磁带末尾的5个文件标志。所述扫描可取决于给定的寻找命令而向前(朝向磁带末 尾)或倒退(朝向磁带开始)。通过使用全局文件标志旗标中的所确定的相对位置,还可确 定逻辑数据容器中的数据块和宏块位置。接着可将此位置存储1610为全局元数据中的磁 带标头位置。类似流程可用于绝对定位,例如可以使用从磁带开始或磁带末尾。磁带标头 的开始位置可代替是磁带开始或磁带末尾。
[0083] 现转向图17,示出根据至少一个实施方案的可用以读取虚拟磁带的流程的说明性 实例。接着可基于磁带标头位置将宏块元数据载入到存储器1702中。接着可用全局产生 ID来验证1704数据块组产生ID。如果不匹配1706,那么可以认为数据块组无效1720,且 在一些实施方案中不读取。下一命令接着可等待1722。如果产生ID匹配1706,那么可以 更新1708全局标头中的日志,宏块的元数据处于存储器中。可以审核记录大小以确定是否 读取多达记录大小或宏块的末尾。记录大小可以是剩余数据或最大允许记录大小中的较小 值。接着可将数据读取1710多达记录大小或宏块的末尾。如果存在剩余数据1712且读取 未1714超出宏块的末尾,那么后续记录可经读取1710。如果存在1712剩余数据且写入超 出1714宏块边界,那么宏块中的数据可同步地持续到逻辑数据容器,且全局标头内的元数 据可异步地更新1716,例如全局文件标志旗标、全局记录旗标和磁带标头位置。所述日志还 可更新1718以下内容:来自存储器的宏块的引退,以及连续宏块及其元数据到存储器中的 载入1702和进一步处理。如果不存在1712剩余数据,那么可以等待1428下一命令。
[0084] 图18示出根据至少一个实施方案的可用以从虚拟磁带中的事件来进行恢复的流 程的说明性实例。此流程1800可以通过例如图3和9中所示的那些计算资源而实现,所述 计算资源包括客户端存档系统302、虚拟磁带库装置304、管理服务器306、数据服务器308、 元数据存储器310、供应商主动存储系统312,供应商存档存储系统314、虚拟磁带902、全局 标头906、宏块912和数据块910。托管与虚拟磁带相关联的逻辑数据容器的服务器可能发 生故障事件,例如电力故障。在从电力故障恢复后,服务器可通知管理服务器,已发生事件 且恢复流程开始。在一些实施方案中,存储器中宏块的改变与逻辑数据容器中对应宏块同 步地持续。然而,全局元数据可以异步地更新,例如当宏块从存储器卸载时。因此,存储器 中的宏块,例如在全局标头中的日志中指出的那些宏块,可归因于更新逻辑数据容器的每 一部分的同步和异步性质而变得与全局标头元数据不一致。恢复流程因此将需要使日志中 指出的宏块与故障的事件中的全局元数据重新同步。
[0085] 在确定所发生1802的事件可具有对逻辑数据容器的效应之后,可在逻辑数据容 器的全局标头中审核1804日志。如果日志中没有条目,那么逻辑数据容器可以返回服务, 因为不需要修复。然而,可将日志中指出的任何宏块载入到存储器1806中。以第一宏块的 第一数据块组开始1807,比较全局标头的全局产生ID与数据块组产生ID。如果产生ID匹 配,那么可以进一步检查数据块是否有误差。如果产生ID不匹配,那么可以认为数据块组 无效。在一些实施方案中,可以使用误差校正,且如果误差校正促使产生ID匹配,那么可以 继续进行进一步恢复操作。可以对数据块组执行1810误差校正和/或检测以确保数据完 整性。可以比较数据块组元数据与全局标头元数据,使得与全局标头数据的不一致性可以 固定在全局标头数据中。举例来说,数据块组记录旗标和文件标志旗标可以持续1812到全 局记录旗标,且指出事件中失配的全局文件标志旗标。如果存在1816需扫描的更多数据块 组,那么可以经由操作1808到1812来处理每一其它宏块。一旦已完成恢复,那么可以清除 1818日志。在一些实施方案中,可再次启用1820逻辑数据容器用于使用。
[0086] 图19图示根据各种实施方案的用于实施若干方面的实例环境1900的若干方面。 如将了解,尽管出于解释目的使用基于网络的环境,但是可视情况使用不同环境来实现各 个实施方案。系统包括电子客户端设备1902,所述电子客户端设备可包括可操作来在适合 网络1904上发送和接收请求、消息或信息并且将信息传送回装置用户的任何适当的装置。 此类客户端设备的实例包括个人计算机、蜂窝电话、手持式消息传递装置、膝上计算机、机 顶盒、个人数据助理、电子书阅读器等等。网络可包括任何适合网络,其包括内部网、因特 网、蜂窝网、局域网或任何其它此类网络或上述网络的组合。此类系统所用的组件可以至少 部分取决于所选网络和/或环境的类型。用于经由此类网络通信的协议和组件是众所周知 的,因而本文不再详细论述。网路上的通信可以经由有线或无线连接及其组合来实现。在此 实例中,网络包括因特网,因为环境包括用于接收请求且响应于所述请求而服务内容的Web 服务器1906,然而对于其它网络来说,可使用用于服务类似目的替代装置,如本领域技术人 员所显而易见的。
[0087] 说明性环境包括至少一个应用程序服务器1908和数据存储器1910。应当理解,可 以存在可以链接起来或以其它方式来配置的若干应用程序服务器、层或其它元件、流程或 组件,这些应用程序服务器、层或其它元件、流程或组件可交互来执行如从适当的数据存储 器获得数据的任务。如本文所使用的,术语"数据存储器"指代能够存储、访问和检索数据 的任何装置或装置组合,所述装置可包括在任何标准、分布或集群环境中的数据服务器、数 据库、数据存储装置和数据存储介质的任何组合和任何数目。应用程序服务器可包括任何 适当的硬件和软件,所述硬件和软件视执行客户端装置的一个或多个应用程序的方面的需 要与数据存储器集成且处置应用程序的大多数数据访问和业务逻辑。应用程序服务器提供 与数据存储器协作的访问控制服务,并且能够产生将要传送到用户的如文本、图形、音频和 /或视频等内容,在此实例中所述内容可以HTML( "超文本标记语言")、XML( "可扩展标记 语言")或另一适当的结构化语言的形式通过Web服务器向用户提供服务。所有请求和响 应的处置以及客户端装置1902与应用程序服务器1908之间的内容递送可由网络服务器来 处置。应当理解,网络服务器和应用程序服务器不是必要的,且仅仅是示例性组件,因为本 文所论述的结构化代码可在如本文其它地方所论述的任何适当的装置或主机机器上执行。
[0088]数据存储器1910可包括若干独立的数据表、数据库或其它数据存储机构和介质, 用来存储与特定方面相关的数据。举例来说,所图示的数据存储器包括用于存储产生数据 1912和用户信息1916的机构,所述机构可用于服务产生端的内容。还示出数据存储器包括 用于存储日志数据1914的机构,所述机构可用于报告、分析或其它此类目的。应当理解,可 能存在可能需要存储在数据存储器中的许多其它方面,如页面图像信息和访问权信息,所 述方面可视情况存储在上文列出的机构中的任何机构中或存储在数据存储器1910中的额 外机构中。数据存储器1910可通过与其相关联的逻辑来操作,以便从应用程序服务器1908 接收指令,并且响应于所述指令而获得数据、更新数据或以其它方式处理数据。在一个实例 中,用户可以针对某种类型的项目提交搜索请求。在此情况下,数据存储器可能访问用户信 息来验证用户的身份,并且可访问目录详细信息以获得有关所述类型的项目的信息。接着 可将信息如以网页上的结果列表的形式返回给用户,用户能够经由用户装置1902上的浏 览器来查看所述列表。可在浏览器的专用页面或窗口中查看感兴趣的特定项目的信息。 [0089]每个服务器通常会包括提供针对该服务器的一般管理和操作的可执行程序指令 的操作系统,且通常将包括存储指令的计算机可读存储介质(例如,硬盘、随机存取存储 器、只读存储器等),当这些指令被所述服务器的处理器执行时,所述指令允许所述服务器 执行其期望的功能。针对操作系统和服务器一般功能性的合适实现方式是已知的或可商购 获得,并且本领域的普通技术人员,特别是根据本公开,较易实施这些方式。
[0090] 在一个实施方案中,环境是分布式计算环境,所述环境利用经由通信链路、使用一 个或多个计算机网络或直接连接来互连的若干计算机系统和组件。然而,本领域普通技术 人员应理解,此类系统可在具有比图19所图示的组件更少或更多个组件的系统中同样顺 利地操作。因此,图19中的系统1900的描绘本质上应视为说明性的,并且不限制本公开的 范围。
[0091] 可在广泛范围的操作环境中进一步实施各个实施方案,所述环境在一些状况下可 包括一个或多个用户计算机、计算装置或可用于操作多个应用程序中的任何一个应用程序 的处理装置。用户或客户端装置可包括多个通用个人计算机中的任何一个,如运行标准操 作系统的台式计算机或膝上计算机,以及运行移动软件并且能够支持多个网络连接协议和 消息传递协议的蜂窝式装置、无线装置和手持装置。此类系统还可包括多个工作站,所述工 作站运行各种可商购的操作系统和用于特定目的(如开发和数据库管理)的其它已知应用 程序中的任何应用程序。这些装置还可包括其它电子装置,如虚拟终端、薄型客户端、游戏 系统和能够经由网络通信的其它装置。
[0092] 可以鉴于以下条款来较佳理解上述内容:
[0093] 1.-种计算机实施的存储方法,其包括:
[0094] 在用可执行指令配置的一个或多个计算机系统的控制下,
[0095] 接收产生虚拟磁带的请求;
[0096] 请求在存储服务中产生逻辑数据容器;
[0097] 使所述逻辑数据容器与虚拟磁带相关联;
[0098] 接收将来自虚拟存储位置的所述虚拟磁带载入到虚拟磁带驱动器的请求;
[0099] 将与所述虚拟磁带相关联的所述逻辑数据容器映射到与所述虚拟磁带驱动器相 关联的输入/输出接口;
[0100] 在所述输入/输出接口上向与映
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1