[发明专利]一种将文件导出到磁带的方法和装置有效
申请号: | 201310513281.6 | 申请日: | 2013-10-25 |
公开(公告)号: | CN103577565B | 公开(公告)日: | 2017-01-04 |
发明(设计)人: | 李育国 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙)11277 | 代理人: | 刘新宇 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 导出 磁带 方法 装置 | ||
技术领域
本发明涉及数据存储领域,尤其涉及一种将文件导出到磁带的方法和装置。
背景技术
重复数据删除技术是指,把文件分成一个个的数据块,对每个数据块计算一个指纹,并和已经存在的指纹进行对比;如果这个指纹已经存在,则说明这个数据块已经存在了,就不需要再保存了,只需要将该数据块的引用计数加一,以说明该数据块又被多引用了一次;如果这个指纹不存在,则说明这个数据块是唯一的,这时就需要把这个指纹和对应的数据块保存起来。
在进行重复数据删除以后,存储系统里通常会形成包括以下三个部分的重删数据。第一个部分是用于存放数据块的单一实例库(Single Instance Repository,缩写:SIR)。第二个部分是指纹库,用于存放所有的指纹以及指纹对应的数据块的计数信息。第三个部分是存根文件,用于保存每个文件划分出的数据块的指纹以及该指纹对应的数据块的位置信息。
重复数据删除可以极大地节省用以保存文件的资源和空间。但为了进行长期归档,通常还需要将文件保存在磁带介质里。在现有技术中,将以重删数据形式保存的文件导出至磁带的一种方法是,把存根文件复原为原始文件再备份到磁带里去,也即在将重删数据导出到磁带时进行数据还原。很显然,这种方法失去了重删数据的特性,需要占用大量数据空间和维护资源。
现有技术中将以重删数据形式保存的文件导出至磁带的另一种方法是,直接将重删数据导出到磁带中。这种方法虽然保持了重删数据的特性,但由于未考虑磁带的物理特性,将导致从磁带恢复原始文件非常耗时低效。具体而言,磁带的顺序操作模式决定了要想获得高性能,就需要尽可能顺序读写所有数据,以尽量避免倒带操作。并且,磁带库通常只有一定数量的驱动器,一般无法做到所有磁带同时在线。在从磁带或磁带库恢复原始文件时,除了要从磁带中读出存根文件,还要读出文件所引用的数据块。而这些数据块可能存放于多个磁带,使得恢复一个原始文件要涉及多个磁带的加载、移出、读数据和倒带操作,所消耗的时间及资源浪费将是令人无法接受的。
发明内容
技术问题
有鉴于此,本发明要解决的技术问题是,如何以重复数据删除的形态将存储服务器中备份的文件导出到磁带系统,并能够保证从磁带系统中可以快速恢复文件。
解决方案
为了解决上述技术问题,根据本发明的一实施例,提供了一种将文件导出到磁带的方法,用于将以重删数据的形式保存的至少两个原始文件导出至磁带,所述重删数据包括存根文件集、单一实例库、以及指纹库,所述单一实例库包括从各所述原始文件划分出的所有单一的数据块,所述存根文件集包括分别与各所述原始文件对应的至少两个存根文件,各所述存根文件包括至少一个指纹数据,所述指纹数据包括指纹和位置信息,所述指纹用于标识从与所述存根文件对应的原始文件划分出的数据块,所述位置信息表示与所述指纹数据对应的数据块在所述单一实例库中的位置,所述指纹库包括各所述指纹及其引用计数,所述指纹的引用计数表示引用所述指纹标识的数据块的存根文件的个数。
所述将文件导出到磁带的方法包括:从所述存根文件集中选出至少一个要导出至磁带的存根文件组成存根文件子集,其中,所述存根文件子集以及与所述存根文件子集对应的子单一实例库的总数据量不大于一个磁带的容量,所述子单一实例库包括被所述存根文件子集中的存根文件引用的所有单一的数据块;将所述存根文件子集以及所述子单一实例库导出至一个磁带;以及在所述存根文件集包括尚未导出至磁带的存根文件的情况下,重复执行前述两个步骤,直至所述存根文件集中的存根文件均被导出至磁带为止。
对于上述将文件导出到磁带的方法,在一种可能的实现方式中,将所述存根文件子集以及所述子单一实例库导出至一个磁带,包括:对所述存根文件子集中的存根文件内的指纹数据进行修改,以使得修改后的指纹数据中的位置信息表示与所述指纹数据对应的数据块在所述子单一实例库中的位置;将进行了所述修改的所述存根文件子集导出至所述磁带;以及将所述子单一实例库导出至所述磁带。
对于上述将文件导出到磁带的方法,在一种可能的实现方式中,在对所述存根文件子集中的存根文件内的指纹数据进行修改之前,还包括:确定所述子单一实例库中的第一数据块,其中,所述第一数据块为被一个所述存根文件引用的数据块;将所述存根文件子集中的存根文件内与所述第一数据块对应的指纹数据替换为所述第一数据块;以及将所述第一数据块从所述子单一实例库移除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310513281.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种便携式球网架撑网杆
- 下一篇:鼻症电疗面罩