CN103164172B - 数据流存储方法及装置 - Google Patents

数据流存储方法及装置 Download PDF

Info

Publication number
CN103164172B
CN103164172B CN201310076642.5A CN201310076642A CN103164172B CN 103164172 B CN103164172 B CN 103164172B CN 201310076642 A CN201310076642 A CN 201310076642A CN 103164172 B CN103164172 B CN 103164172B
Authority
CN
China
Prior art keywords
data block
adapter
stored
storage
backup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201310076642.5A
Other languages
English (en)
Other versions
CN103164172A (zh
Inventor
冯祥
冯一祥
陈琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310076642.5A priority Critical patent/CN103164172B/zh
Publication of CN103164172A publication Critical patent/CN103164172A/zh
Application granted granted Critical
Publication of CN103164172B publication Critical patent/CN103164172B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种数据流存储方法及装置,方法包括:虚拟磁带库接收备份服务器发送的备份数据流,按照预设的分块大小和类型对所述备份数据流进行解析,得到多个数据块;虚拟磁带库将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;虚拟磁带库根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。本发明实施例能够提高虚拟磁带库中多流并发读写的性能。

Description

数据流存储方法及装置
技术领域
本发明涉及数据处理技术,尤其涉及数据流存储方法及装置。
背景技术
随着全球信息化时代的到来,数据信息呈爆炸式增长,备份需求日益增加,同时,用户对备份性能的要求也愈发严格。磁盘备份方案因其优异的读写性能被应用于更多的备份场景中。但是,因为磁带介质拥有数据保存时间长、容量大以及成本低等方面原因,并不可能完全被磁盘所代替。基于这一背景,以磁盘为备份介质,同时又拥有良好兼容能力的虚拟磁带库(VirtualTapeLibrary,VTL)越来越受到关注,并广泛应用于备份、容灾系统当中。所述虚拟磁带库由若干个虚拟磁带构成。
VTL以磁盘为备份介质,将磁盘划分成多个RAID组,RAID组又划分成多个逻辑单元号(LogicalUnitNumber,LUN),虚拟磁带直接创建在LUN上,对虚拟磁带的读写其实就是对虚拟磁带对应的LUN的读写。
VTL中的多流并发读写是指对多盘虚拟磁带进行并发读写,也即是对所述多盘虚拟磁带对应的LUN的读写。当参与多流并发读写的虚拟磁带中有多盘虚拟磁带部署在同一LUN上,多流并发读写的性能很低。
发明内容
本发明实施例中提供了一种数据流存储方法及装置,能够提高VTL中多流并发读写的性能。
第一方面,本发明实施例提供一种数据流存储方法,包括:
虚拟磁带库接收备份服务器发送的备份数据流,对所述备份数据流进行解析,得到多个数据块;
将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。
结合上述第一方面,在第一方面第一种可能的实现方式中,还包括:
在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
结合上述第一方面,在第一方面第二种可能的实现方式中,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
结合上述第一方面,在第一方面第三种可能的实现方式中,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
结合上述第一方面,和/或第一方面第一种可能的实现方式,和/或第一方面第二种可能的实现方式,和/或第一方面第三种可能的实现方式,在第一方面第四种可能的实现方式中,将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中包括:
将所述多个数据块均匀的分配给所述至少两个连接器;
将每个数据块存储在该数据块对应的连接器中。
结合上述第一方面第四种可能的实现方式,在第一方面第五种可能的实现方式中,将每个数据块存储在该数据块对应的连接器中包括:
对于备份数据流中的第一个数据块,将第一个数据块与备份数据流中磁带相关信息的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储地址封装后存储在第i个数据块对应的连接器中。
结合上述第一方面第五种可能的实现方式,在第一方面第六种可能的实现方式中,,还包括:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器中,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i-1个数据块的存储地址存储至所述第i-1个数据块中。
第二方面,本发明实施例提供一种数据流存储装置,包括:
接收单元,用于接收备份服务器发送的备份数据流;
解析单元,用于对接收单元接收的所述备份数据流进行解析,得到多个数据块;
第一存储单元,用于将解析单元解析得到的所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
第二存储单元,用于根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。
结合上述第二方面,在第二方面第一种可能的实现方式中,还包括:
创建单元,用于在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
发送单元,用于将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
结合上述第二方面,在第二方面第二种可能的实现方式中,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
结合上述第二方面,在第二方面第三种可能的实现方式中,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
结合上述第二方面,和/或第二方面第一种可能的实现方式,和/或第二方面第二种可能的实现方式,和/或第二方面第三种可能的实现方式,在第二方面第四种可能的实现方式中,第一存储单元包括:
分配子单元,用于将所述多个数据块均匀的分配给所述至少两个连接器;
存储子单元,用于将每个数据块存储在该数据块对应的连接器中。
结合上述第二方面第四种可能的实现方式,在第二方面第五种可能的实现方式中,存储子单元具体用于:
对于备份数据流中的磁带相关信息,将磁带相关信息发送至特定连接器中;
对于备份数据流中的第一个数据块,将第一个数据块与所述磁带相关信息的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储地址封装后存储在第i个数据块对应的连接器中。
结合上述第二方面第五种可能的实现方式,在第二方面第六种可能的实现方式中,存储子单元还用于:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器中,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i-1个数据块的存储地址存储至所述第i-1个数据块中。
本发明实施例中,虚拟磁带库接收备份服务器发送的备份数据流,按照预设的分块大小和类型对所述备份数据流进行解析,得到多个数据块;将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。从而将备份数据流中的数据块分配给至少两个逻辑存储单元进行存储,实现了VTL中逻辑存储单元的负载均衡,进而能够充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明实施例应用场景结构图;
图1B为本发明备份数据流结构示意图;
图2为本发明数据流存储方法第一实施例示意图;
图3为本发明数据流存储方法第二实施例示意图;
图4为本发明数据流存储方法示例图;
图5为本发明数据流存储方法示例图;
图6为本发明实施例数据流存储装置结构示意图;
图7为本发明实施例VTL结构示意图。
具体实施方式
为了更好的对本发明实施例数据流存储方法及装置进行描述,首先对本发明实施例的应用场景进行说明。参见图1A,为本发明实施例数据流存储方法应用场景结构图,包括:备份服务器110以及VTL120;VTL120中包括:处理器1201、至少两个连接器1202以及存储设备1203;存储设备1203中包括与连接器对应的至少两个逻辑存储单元1204;其中,
备份服务器110向VTL120发送备份数据流;
VTL120接收所述备份数据流,由处理器将备份数据流划分为数据块后,将数据块分别存储至对应的连接器1202中,再由处理器1201将连接器1202中的数据块存储至存储设备1203中连接器对应的逻辑存储单元1204。其中,所述逻辑存储单元可以为LUN或者卷。
以下,对备份数据流以及数据块进行说明。
参见图1B所示,备份数据流中包括磁带相关信息、备份任务相关信息、以及备份数据,图1B中以备份数据为文件A为例;其中,
磁带相关信息,用于标识当前虚拟磁带使用情况、使用者、日期、虚拟磁带地址等信息。磁带相关信息一般占用1k的存储空间。通常情况下,还可以设置有备份软件标识。其中,所述虚拟磁带地址可以为SCSI地址。
备份任务相关信息,包括备份软件标识、备份集的起始位置、数据描述等信息。备份任务相关信息一般占用1k的存储空间。所述备份软件标识用于标识生成该备份数据流的备份软件,通过该备份软件标识,可以得到备份数据流中备份数据的切块方法,因此,备份软件标识也可以作为切块方式标识。所述切块方法也即是将备份数据块切分成多个数据块的方法。
磁带相关信息与备份任务相关信息之间的fk,表示文件标记(filemark),是虚拟磁带中用于区分数据区间的标志,作用相当于磁盘分区的边界位置标记,不占用虚拟磁带容量,无数据,仅仅是一个标记。
备份数据流中的备份数据被备份软件按照预设的数据块大小切分成多个数据块。不同的备份软件,所述数据块大小可能相同或不同。通常,数据块大小一般设置为64k,图1中以备份数据为文件A,数据块大小为64k为例。
以下,结合附图详细说明本发明实施例数据流存储方法的实现。
参见图2,为本发明实施例数据流存储方法第一实施例示意图,该方法适用于VTL;该方法包括:
步骤201:VTL接收备份服务器发送的备份数据流,对所述备份数据流进行解析,得到多个数据块;
步骤202:VTL将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
步骤203:VTL根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。
其中,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
或者,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
本实施例中,VTL将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中,再根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中。从而实现了存储设备中各个逻辑存储单元的负载均衡,充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
参见图3,为本发明实施例备份数据流的存储方法第二实施例示意图,该方法包括:
步骤301:VTL在所述VTL中创建虚拟磁带,并记录所述虚拟磁带的元数据信息;将所述元数据信息发送给所述备份服务器。
其中,虚拟磁带的元数据信息包括:虚拟磁带的地址、大小、类型等信息。
步骤302:所述备份服务器根据所述元数据信息向所述VTL发送备份数据流。
步骤303:VTL接收备份服务器发送的备份数据流,对所述备份数据流进行解析,得到多个数据块。
优选地,所述VTL对所述备份数据流进行解析,得到多个数据块可以包括:
从备份数据流中获取切块方式标识;
确定所述切块方式标识对应的数据块大小;
按照所述数据块大小解析出所述备份数据流中的数据块。
其中,所述切块方式标识用于标识备份数据流中备份数据的切块方法。所述切块方式标识可以存储于备份数据流中的所述磁带相关信息中,或者存储于所述备份任务相关信息中。在实际应用中,也可以将所述备份软件标识作为切块方式标识。
所述VTL中存储各个切块方式标识与数据块大小之间的对应关系,则可以根据备份数据流中的切块方式标识查找到切块方式标识对应的数据块大小,VTL根据该数据块大小即可以解析出所述备份数据流中的数据块。
VTL具体如何按照所述数据块大小解析出所述备份数据流中的数据块这里不赘述。
其中VTL解析出的数据块可以按照其在备份数据流中的位置顺序排序。
步骤304:VTL将所述多个数据块分别存储在所述VTL的至少两个连接器中。
其中,所述VTL将所述多个数据块分别存储在所述VTL的至少两个连接器中包括:
VTL将所述多个数据块均匀的分配给所述至少两个连接器;
VTL将每个数据块存储在该数据块对应的连接器中。
在一种可能的实现方式中,VTL将所述多个数据块均匀的分配给所述至少两个连接器可以包括:
将第n个连接器作为第一个数据块对应的连接器;n为自然数,且n小于等于连接器的总数;
将第i-1个数据块对应的连接器的下一个连接器作为第i个数据块对应的连接器。
其中,当某一数据块对应的连接器是最后一个连接器时,则该数据块的下一个数据块对应的连接器为第一个连接器,如此循环,从而实现将数据块均匀分配给各个连接器。
这里,将第n个连接器作为所述第一个数据块对应的连接器;将第i-1个数据块的连接器的下一个连接器作为第i个数据块对应的连接器,从而VTL按照数据块的顺序以及连接器顺序,依次将各个数据块依次分配给各个连接器,实现了将数据块均匀分配给各个连接器的目的。
所述将数据块均匀分配给各个连接器并不一定是绝对的均匀,一般的,只要近似均匀即可。以上连接器的分配方法仅为示例,并不对连接器的分配方法进行限制。
优选地,所述VTL将每个数据块存储在该数据块对应的连接器中可以包括:
对于备份数据流中的第一个数据块,将第一个数据块与备份数据流中磁带相关信息的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储地址封装后存储在第i个数据块对应的连接器中,i大于1,小于等于数据块的总个数。
优选地,VTL将每个数据块存储在该数据块对应的连接器中还可以包括:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器中,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i个数据块的存储地址存储至所述第i-1个数据块中。
步骤305:VTL根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。
以下,通过图4,对步骤304~步骤305中VTL将备份数据流中的数据块存储至连接器,进而从连接器存储至连接器对应的逻辑存储单元的过程进行更为详细的说明。
步骤401:对于每一备份数据流,VTL获取备份数据流的磁带相关信息;将所述磁带相关信息发送至特定连接器。
其中,所述特定连接器对应的特定逻辑存储单元例如LUN中预先存储VTL中所有虚拟磁带的元数据信息。在实际应用中,可以选择VTL中的任一个逻辑存储单元作为所述特定逻辑存储单元,该特定逻辑存储单元对应的连接器也即是所述特定连接器。
步骤402:VTL将特定连接器中的所述磁带相关信息存储在特定连接器对应的特定逻辑存储单元中,得到所述磁带相关信息的存储地址。
本发明实施例中所称的存储地址为信息的物理存储地址。
步骤403:对于该备份数据流中的第一个数据块,VTL对所述第一个数据块与所述磁带相关信息的存储地址进行封装处理,得到第一个封装数据块;将所述第一个封装数据块存储在所述第一个数据块对应的连接器中。
其中,本发明实施例中对数据块和存储地址进行封装处理可以使用现有技术中的相关封装方法完成,这里并不限制,
步骤404:VTL将所述第一个封装数据块存储至第一个数据块对应的连接器所对应的逻辑存储单元中,得到第一个数据块的存储地址。
步骤405:VTL将磁带相关信息的存储地址和所述第一个数据块的存储地址存储至特定连接器,进而根据所述磁带相关信息的存储地址,将连接器中所述第一个数据块的存储地址存储至所述磁带相关信息中。
步骤406:对于该备份数据流中的第i个数据块,VTL对所述第i个数据块与第i-1个数据块的存储地址进行封装处理,得到第i个封装数据块;将所述第i个封装数据块存储至所述第i个数据块对应的连接器中。
步骤407:VTL将所述第i个数据块对应的连接器中的第i个封装数据块存储至该连接器对应的逻辑存储单元中,得到第i个数据块的存储地址。
步骤408:VTL将第i-1个数据块的存储地址以及第i个数据块的存储地址发送至第i-1个数据块对应的连接器中,进而根据所述第i-1个数据块的存储地址,将连接器中所述第i个数据块的存储地址存储至所述第i-1个数据块中。
本实施例中,VTL将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中,再根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中。从而实现了存储设备中各个逻辑存储单元的负载均衡,充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
在一种可能的实现方式中,按照将数据块均匀分配给各个连接器的原则确定数据块对应的连接器;并且,将数据块的前一个数据块的存储地址与该数据块封装得到封装数据块;将封装数据块存储至该数据块对应的连接器,进而存储至该链接对应的逻辑存储单元,从而实现了逻辑存储单元的负载均衡,充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
进一步的,各个封装数据块中均可以存储有前一个数据块和后一个数据块的存储地址,保证了备份数据流能够从各个逻辑存储单元中被正确的读取,并保证能够被准确的恢复。
其中,在本发明实施例中,进行数据块与存储地址的封装时,还可以封装数据块的其他信息,如数据块大小等,这里并不限定。
以下,对本发明实施例备份数据流的存储方法进行举例说明:
参见图5所示,假设有4个备份数据流;为了区别各个备份数据流中的数据块,这里将备份数据流1中的数据块称为数据块A,对应的封装数据块为封装数据块A;备份数据流2中的数据块称为数据块B,对应的封装数据块为封装数据块B;备份数据流3中的数据块称为数据块C,对应的封装数据块为封装数据块C;备份数据流4中的数据块称为数据块D,对应的封装数据块为封装数据块D;假设VTL包括3个LUN,每个LUN设置有1个连接器,各个备份数据流中的第一个数据块的连接器为连接器1,第2个数据块的连接器为连接器2,第3个数据块的连接器为连接器3,依此类推。则如图5所示,LUN1的连接器中包括:数据块A1、数据块B1、数据块C1、数据块D1、数据块A4、数据块B4等等,其他LUN的连接器中的数据块请参见图5,这里不赘述。相应的,连接器中的数据块也将被发送至对应的LUN中存储。
与上述方法相对应的,本发明实施例提供一种数据流存储装置,该装置可以设置于VTL中,参见图6所示,该装置600包括:
接收单元610,用于接收备份服务器发送的备份数据流;
解析单元620,用于对接收单元610接收的所述备份数据流进行解析,得到多个数据块;
第一存储单元630,用于将解析单元620解析得到的所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
第二存储单元640,用于根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量。
优选地,该装置600还可以包括:
创建单元,用于在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
发送单元,用于将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
在第一种可能的实现方式中,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
在第二种可能的实现方式中,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
优选地,第一存储单元630可以包括:
分配子单元,用于将所述多个数据块均匀的分配给所述至少两个连接器;
存储子单元,用于将每个数据块存储在该数据块对应的连接器中。
优选地,存储子单元具体可以用于:
对于备份数据流中的磁带相关信息,将磁带相关信息发送至特定连接器中;
对于备份数据流中的第一个数据块,将第一个数据块与所述磁带相关信息的存储位置封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储位置封装后存储在第i个数据块对应的连接器中。
优选地,存储子单元还可以用于:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i-1个数据块的存储地址存储至所述第i-1个数据块中。
本实施例中,VTL将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中,再根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中。从而实现了存储设备中各个逻辑存储单元的负载均衡,充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
参见图7,为本发明实施例VTL结构示意图,VTL700包括:处理器710、存储器720、总线730、连接器740、存储设备750以及收发器760;存储设备750中包括至少两个逻辑存储单元770(图7中未示出);
处理器710、存储器720、连接器740、存储设备750以及收发器760通过总线730相互连接;总线730可以是ISA总线、PCI总线或EISA总线等。所述总线730可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器720,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器720可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
存储设备750以及所述逻辑存储单元770,用于存储数据。
收发器760用于与其他设备通信;收发器760用于:接收备份服务;器发送的备份数据流;
处理器710执行所述程序代码,用于:对所述备份数据流进行解析,得到多个数据块;将所述多个数据块分别存储在至少两个所述连接器740中;
根据预设的连接器740与存储设备750中的逻辑存储单元770之间的对应关系,将每个连接器740中存储的数据块存储至与所述连接器740对应的逻辑存储单元770中,所述连接器740的数量小于或等于所述存储设备中的逻辑存储单元770的数量。
优选地,处理器710还可以用于:在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
所述收发器760还可以用于:将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
优选地,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
优选地,所述处理器710具体可以用于:将所述多个数据块均匀的分配给所述至少两个连接器;将每个数据块存储在该数据块对应的连接器中。
优选地,所述处理器710具体可以用于:对于备份数据流中的第一个数据块,将第一个数据块与备份数据流中磁带相关信息在逻辑存储单元中的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块在逻辑存储单元中的存储位置封装后存储在第i个数据块对应的连接器中。
优选地,所述处理器710还可以具体用于:将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i-1个数据块的存储地址存储至所述第i-1个数据块中。
本实施例中,VTL将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中,再根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中。从而实现了存储设备中各个逻辑存储单元的负载均衡,充分利用VTL中的存储资源,提高了VTL中多流并发读写的性能。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据流存储方法,其特征在于,包括:
虚拟磁带库接收备份服务器发送的备份数据流,对所述备份数据流进行解析,得到多个数据块;
将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量;
其中,所述将所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中包括:
将所述多个数据块均匀的分配给所述至少两个连接器;
将每个数据块存储在该数据块对应的连接器中;
其中,所述将每个数据块存储在该数据块对应的连接器中包括:
对于备份数据流中的第一个数据块,将第一个数据块与备份数据流中磁带相关信息的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储地址封装后存储在第i个数据块对应的连接器中;其中,i大于1,并且i小于或等于所述多个数据块的总数。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
3.根据权利要求1所述的方法,其特征在于,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
4.根据权利要求1所述的方法,其特征在于,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
5.根据权利要求1至4任一项所述的方法,其特征在于,还包括:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器中,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i个数据块的存储地址存储至所述第i-1个数据块中。
6.一种数据流存储装置,其特征在于,包括:
接收单元,用于接收备份服务器发送的备份数据流;
解析单元,用于对接收单元接收的所述备份数据流进行解析,得到多个数据块;
第一存储单元,用于将解析单元解析得到的所述多个数据块分别存储在所述虚拟磁带库的至少两个连接器中;
第二存储单元,用于根据预设的连接器与存储设备中的逻辑存储单元之间的对应关系,将每个连接器中存储的数据块存储至与所述连接器对应的逻辑存储单元中,所述连接器的数量小于或等于所述存储设备中的逻辑存储单元的数量;
其中,第一存储单元包括:
分配子单元,用于将所述多个数据块均匀的分配给所述至少两个连接器;
存储子单元,用于将每个数据块存储在该数据块对应的连接器中;
其中,存储子单元具体用于:
对于备份数据流中的磁带相关信息,将磁带相关信息发送至特定连接器中;
对于备份数据流中的第一个数据块,将第一个数据块与所述磁带相关信息的存储地址封装后存储在第一个数据块对应的连接器中;
对于该备份数据流中的第i个数据块,将所述第i个数据块与第i-1个数据块的存储地址封装后存储在第i个数据块对应的连接器中;其中,i大于1,并且i小于或等于所述多个数据块的总数。
7.根据权利要求6所述的装置,其特征在于,还包括:
创建单元,用于在所述虚拟磁带库中创建磁带,并记录所述磁带的元数据信息;
发送单元,用于将所述元数据信息发送给所述备份服务器,使得所述备份服务器根据所述元数据信息向所述虚拟磁带库发送备份数据流。
8.根据权利要求6所述的装置,其特征在于,当所述至少两个连接器的数量与所述存储设备中的逻辑存储单元的数量相同时,所述预设的连接器与存储设备中的逻辑存储单元之间的对应关系为一一对应的关系。
9.根据权利要求6所述的装置,其特征在于,当所述至少两个连接器的数量小于所述存储设备中的逻辑存储单元的数量时,每个存储设备中的逻辑存储单元对应1个连接器,每个连接器对应至少一个存储设备中的逻辑存储单元。
10.根据权利要求6至9任一项所述的装置,其特征在于,存储子单元还用于:
将所述磁带相关信息的存储地址和所述第一个数据块的存储地址存储在特定连接器中,以便根据磁带相关信息的存储地址,将特定连接器中的所述第一个数据块的存储地址存储至所述磁带相关信息中;
将第i-1个数据块的存储地址和第i个数据块的存储地址存储在第i-1个数据块对应的连接器,以便根据第i-1个数据块的存储地址,将该连接器中第i个数据块的存储地址存储至所述第i-1个数据块中。
CN201310076642.5A 2013-03-11 2013-03-11 数据流存储方法及装置 Expired - Fee Related CN103164172B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310076642.5A CN103164172B (zh) 2013-03-11 2013-03-11 数据流存储方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310076642.5A CN103164172B (zh) 2013-03-11 2013-03-11 数据流存储方法及装置

Publications (2)

Publication Number Publication Date
CN103164172A CN103164172A (zh) 2013-06-19
CN103164172B true CN103164172B (zh) 2016-08-03

Family

ID=48587299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310076642.5A Expired - Fee Related CN103164172B (zh) 2013-03-11 2013-03-11 数据流存储方法及装置

Country Status (1)

Country Link
CN (1) CN103164172B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107015889B (zh) * 2017-04-12 2019-11-22 广州市品高软件股份有限公司 一种基于云计算的多用户虚拟磁带库的实现方法
CN108170377B (zh) * 2017-12-27 2022-04-01 上海爱数信息技术股份有限公司 一种支持磁带库多驱动并发写的备份方法
CN111125031B (zh) * 2019-12-24 2020-10-23 珠海大横琴科技发展有限公司 一种对象存储方法、装置、电子设备和存储介质
CN112839112B (zh) * 2021-03-25 2023-02-17 中国工商银行股份有限公司 一种分层数据存储系统及方法、备份管理服务器
CN113031872A (zh) * 2021-03-26 2021-06-25 山东英信计算机技术有限公司 一种存储系统的数据写入方法及相关装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739307A (zh) * 2008-11-04 2010-06-16 北京众志和达信息技术有限公司 基于嵌入式一体化虚拟磁带库的数据归档保护系统和方法
CN102521072A (zh) * 2011-11-25 2012-06-27 成都市华为赛门铁克科技有限公司 虚拟磁带库设备及数据恢复方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101325610B (zh) * 2008-07-30 2011-12-28 杭州华三通信技术有限公司 虚拟磁带库备份系统以及磁盘电源控制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739307A (zh) * 2008-11-04 2010-06-16 北京众志和达信息技术有限公司 基于嵌入式一体化虚拟磁带库的数据归档保护系统和方法
CN102521072A (zh) * 2011-11-25 2012-06-27 成都市华为赛门铁克科技有限公司 虚拟磁带库设备及数据恢复方法

Also Published As

Publication number Publication date
CN103164172A (zh) 2013-06-19

Similar Documents

Publication Publication Date Title
CN103164172B (zh) 数据流存储方法及装置
US20170155716A1 (en) Granular sync/semi-sync architecture
CN107436725A (zh) 一种数据写、读方法、装置及分布式对象存储集群
CN103324533B (zh) 分布式数据处理方法、装置及系统
US11880280B2 (en) Variable number and size of put operations for storage backup
US9940331B1 (en) Proactive scavenging of file system snaps
US11416166B2 (en) Distributed function processing with estimate-based scheduler
CN107506145B (zh) 一种物理存储调度方法及云主机创建方法
CN102282544A (zh) 存储系统
CN102938784A (zh) 应用于分布式存储系统中的数据存储方法和系统
CN102439560A (zh) 数据复制系统中的数据重新分发
CN110134338B (zh) 一种分布式存储系统及其数据冗余保护方法和相关设备
CN106933747B (zh) 基于多流的数据存储系统和数据存储方法
US11372549B2 (en) Reclaiming free space in a storage system
US20180329971A1 (en) Data transfer between multiple databases
CN110109868A (zh) 用于索引文件的方法、装置和计算机程序产品
CN110427364A (zh) 一种数据处理方法、装置、电子设备及存储介质
US11231859B2 (en) Providing a RAID resiliency set from a plurality of storage devices
CN110147203A (zh) 一种文件管理方法、装置、电子设备及存储介质
CN111399761B (zh) 存储资源分配方法、装置及设备、存储介质
CN115756955A (zh) 一种数据备份、数据恢复的方法、装置及计算机设备
CN101630332B (zh) 数据存储管理方法、数据存储管理装置和系统
CN111435286A (zh) 一种数据存储方法、装置和系统
CN104216834A (zh) 一种内存访问的方法、缓冲调度器和内存模块
CN110737389A (zh) 存储数据的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160803

Termination date: 20190311