一种数据备份方法、装置和系统与流程

文档序号:11323087阅读:265来源:国知局
一种数据备份方法、装置和系统与流程

本发明涉及数据存储技术领域,尤其涉及一种数据备份方法、装置和系统。



背景技术:

云存储是一种新兴的数据存储方式,数据通过网络传输并存储于服务商所提供的数据中心(dc,datacenter),然后,用户通过网络接入实现对该数据的存取操作。

目前,服务商为了保证所存储数据的持久度,对所存储的数据实施备份处理。在逻辑上,云存储系统的数据中心包括:主dc、同步备份dc和异步备份dc三类,其中,主dc用于与用户进行数据通信,并存储数据的正本,同步备份dc用于同步保存副本,异步备份dc用于异步保存副本。副本数是根据用户与服务商所签署的服务等级协议(sla,servicelevelagreement)确定的。一个云存储系统模型中只有1个主dc,但可以有多个同步备份dc。在架设系统时会为同步备份dc设置优先级,主dc根据要求同步备份的副本数,选择优先级最高的相应数量的同步备份dc进行副本的同步保存。同步备份dc保存副本后,会向主dc发送备份成功消息。若此时主dc也成功保存正本,则主dc向用户发送上传成功消息。异步备份则在后台以异步任务进行。

在上述现有技术方案中,就用户而言,数据只有在主dc和同步备份dc中同时成功保存后,才算上传成功。但是,由于同步备份dc的优先级是固定的,因此主dc只能固定选择优先级高的同步备份dc进行同步备份。一旦二者之间的网络通道处于欠佳状态,数据就可能无法同步备份到同步备份dc,或者需时长久才能同步备份到同步备份dc。这种情况导致用户上传数据失败,或者感觉上传速度缓慢,影响了云存储系统的存储效率。



技术实现要素:

为了解决上述问题,本发明实施例提供了一种数据备份方法、装置和系统,用于动态选取同步备份dc进行数据的同步备份。通过实施本实施例技术方案,能够保证云存储系统中主dc与目标备份dc之间的网络质量,提高用户上传数据的成功率,同时能够提高云存储系统的效率。

本发明第一方面提供一种数据备份方法,包括:

检测主数据中心dc与候选备份dc之间的传输状态,所述传输状态包括传输带宽和传输时延;

根据用户发送的数据、所述传输状态和期望副本数n从所述候选备份dc中选取符合预设条件的目标备份dc;

向所述目标备份dc发送所述数据,使得所述目标备份dc保存所述数据的副本。

在第一种可能的实现方式中,所述检测主dc与候选备份dc之间的传输状态之后还包括:

根据所述传输状态维护传输状态信息表,所述传输状态信息表包括:所述候选备份dc的设备名称、传输带宽、传输时延、传输带宽优先级和传输时延优先级。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述主dc根据所述传输状态维护传输状态信息表之后还包括:

当所述数据的容量大于第一门限值或其数据类型为第一类型时,确定所述数据为第一类数据,当所述数据的容量小于所述第一门限值或其数据类型为第二类型时,确定所述数据为第二类数据。

结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述期望副本数n等于期望同步备份副本数n1加上期望异步备份副本数n2,所述目标备份dc包括目标同步备份dc和目标异步备份dc,

所述根据用户发送的数据、所述传输状态和期望副本数n从所述候选备份dc中选取符合预设条件的目标备份dc包括:

若所述数据为第一类数据,则从所述传输状态信息表中选择传输带宽优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输带宽优先级高于所述目标异步备份dc的传输带宽优先级;

若所述数据为第二类数据,则从所述传输状态信息表中选择传输时延优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输时延优先级高于所述目标异步备份dc的传输时延优先级;

其中,所述目标同步备份dc的数量为n1,所述目标异步备份dc的数量为n2。

本发明第二方面提供一种数据备份装置,包括:

检测主数据中心dc与候选备份dc之间的传输状态,所述传输状态包括传输带宽和传输时延;

根据用户发送的数据、所述传输状态和期望副本数n从所述候选备份dc中选取符合预设条件的目标备份dc;

向所述目标备份dc发送所述数据,使得所述目标备份dc保存所述数据的副本。

在第一种可能的实现方式中,所述数据备份装置还包括:

维护单元,用于根据所述传输状态维护传输状态信息表,所述传输状态信息表包括:所述候选备份dc的设备名称、传输带宽、传输时延、传输带宽优先级和传输时延优先级。

结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据备份装置还包括:

判断单元,用于当所述数据的容量大于第一门限值或其数据类型为第一类型时,确定所述数据为第一类数据,还用于当所述数据的容量小于所述第一门限值或其数据类型为第二类型时,确定所述数据为第二类数据。

结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述期望副本数n等于期望同步备份副本数n1加上期望异步备份副本数n2,所述目标备份dc包括目标同步备份dc和目标异步备份dc,

所述选取单元具体包括:

第一选择子单元,用于若所述数据为第一类数据,则从所述传输状态信息表中选择传输带宽优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输带宽优先级高于所述目标异步备份dc的传输带宽优先级;还用于若所述数据为第二类数据,则从所述传输状态信息表中选择传输时延优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输时延优先级高于所述目标异步备份dc的传输时延优先级;

其中,所述目标同步备份dc的数量为n1,所述目标异步备份dc的数量为n2。

从以上技术方案可以看出,本发明实施例具有以下优点:

通过检测主dc与候选备份dc之间的传输状态,能够掌握主dc与各候选备份dc之间的网络质量,在备份进行时,根据用户发送的数据、传输状态和期望副本数n选择合适的候选备份dc作为目标备份dc,再向其发送数据。该备份过程基于网络质量,因此能够最大限度保证用户上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

附图说明

图1为本发明第一实施例的数据备份方法流程图;

图2为本发明的云存储系统结构示意图;

图3为本发明第二实施例的数据备份方法流程图;

图4为本发明的一种检测次序示意图;

图5为本发明的另一种检测次序示意图;

图6为本发明第三实施例的数据备份装置结构图;

图7为本发明第四实施例的数据备份装置结构图;

图8为本发明第五实施例的数据备份系统结构图;

图9为本发明提供的一种网络设备示意图。

具体实施方式

下面将结合本发明中的说明书附图,对发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种数据备份方法,用于动态选取同步备份dc进行数据的同步备份。通过实施本发明技术方案,能够保证云存储系统中主dc与目标备份dc之间的网络质量,提高用户上传数据的成功率,同时能够提高云存储系统的效率。本发明实施例还提供与该数据备份方法相关的装置和系统,以下将分别对其进行详细说明。

本发明第一实施例将对一种数据备份方法进行详细说明,本实施例所要描述的数据备份方法具体流程请参见图1,包括步骤:

101、检测主数据中心dc与候选备份dc之间的传输状态。

在本实施例中,云存储系统结构请参见图2,包括主dc201和至少1个候选备份dc202,主dc201分别与各个候选备份dc202通信连接,在图中以虚线表示。

在用户203向云存储系统中的主dc201上传数据前,首先检测主dc201与各个候选备份dc202之间的传输状态。其中,传输状态的内容至少包括主dc201与各个候选备份dc202之间的传输带宽和传输时延,传输带宽和传输时延能够直接反映主dc201与候选备份dc202之间的网络质量。

102、根据用户发送的数据、该传输状态和期望副本数n从候选备份dc中选取符合预设条件的目标备份dc。

其中,期望副本数n是根据sla所确定的副本数量,在云存储系统架构下,1个副本只能保存于1个备份dc中。

请参见图2,主dc201根据用户203上传的数据、主dc201与各候选备份dc202之间的传输状态和用户203的期望副本数n,从候选备份dc202中选取符合预设条件的目标备份dc204,目标备份dc204的数量与期望副本数n相同。

在本步骤中,对应于步骤101中所检测的传输状态,该预设条件的设定与传输带宽和传输时延相关,将在后续实施例中进行说明。

103、向目标备份dc发送数据,使得目标备份dc保存该数据的副本。

请参见图2,在确定了目标备份dc204后,向目标备份dc204发送数据,在图中以实线表示,使得目标备份dc204保存数据的副本,与此同时,主dc201也保存数据的正本。

在本实施例中,通过检测主dc与候选备份dc之间的传输状态,掌握主dc与各候选备份dc之间的网络质量,在备份进行时,根据用户发送的数据、传输状态和期望副本数n选择合适的候选备份dc作为目标备份dc,再向其发送数据。该备份过程基于网络质量,因此能够最大限度保证用户上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

本发明第二实施例将对第一实施例所述的数据备份方法进行补充说明,本实施例所述的数据备份方法具体流程请参见图3,包括步骤:

301、检测主数据中心dc与候选备份dc之间的传输状态。

在本实施例中,云存储系统结构请参见图2,其连接结构不再赘述。

在本步骤中,检测主dc201与各个候选备份dc202之间的传输状态。其中,传输状态的内容至少包括主dc201与各个候选备份dc202之间的传输带宽和传输时延,传输带宽和传输时延能够直接反映主dc201与候选备份dc202之间的网络质量。

优选地,检测任务具体可以包括但不限定于以下两种:

第一种、主dc维持1个独立的后台任务。检测传输带宽时采用第一标准容量大小的第一数据进行传输并检测,第一数据一般为大数据,检测传输时延时采用第二标准容量大小的第二数据进行传输并检测,第二数据一般为小数据,检测传输时延还能够直接使用ping命令。检测时可根据预先设定的检测次数多次测量并取平均值,检测次数是针对每1个候选备份dc而言的。

第二种、主dc在正常的业务流程中,根据预先设定的检测次数,利用对应次数的正常上传任务作为检测任务。主dc首先判断上传任务中的数据的大小,一种方法是设定用于区别数据大小的门限值,大于该门限值的为大数据,小于的则为小数据,大数据用于检测传输带宽,小数据用于检测传输时延,检测传输时延还能够直接使用ping命令。判断数据的大小还能够基于数据的内容类型进行,例如,视频流数据为大数据,文本数据为小数据。

优选地,在本步骤中,实际检测操作为:根据预设检测次数检测主dc与候选备份dc之间的平均传输状态。对各个候选备份dc的传输状态进行检测时,检测次序可以包括但不限定于以下两种:

第一种、每次使用1个数据对所有候选备份dc进行检测。

请参见图4,云存储系统包括主dc、第一备份dc和第二备份dc,检测次数为3次,用于检测的数据分别为url1、url2和url3,数据传输接口为http,上传方式为http/put,响应方式为http/response。

第一次检测时,由主dc分别向第一备份dc和第二备份dc发送url1,然后再接收响应。第二次检测时,由主dc分别向第一备份dc和第二备份dc发送url2,然后再接收响应。第三次检测时,由主dc分别向第一备份dc和第二备份dc发送url3,然后再接收响应。最终计算响应的传输状态的平均值。

第二种、按照预设检测次数逐一对所有候选备份dc进行检测。

请参见图5,云存储系统包括主dc、第一备份dc和第二备份dc,检测次数为3次,用于检测的数据分别为url1、url2和url3,数据传输接口为http,上传方式为http/put,响应方式为http/response。

首先,由主dc向第一备份dc依次发送url1、url2和url3,并接收对应的三次响应。然后,由主dc向第二备份dc依次发送url1、url2和url3,并接收对应的三次响应。

302、根据该传输状态维护传输状态信息表。

请参见图2,在检测完各个候选备份dc202的传输状态后,根据该传输状态维护传输状态信息表,具体操作方式是刷新表中传输带宽、传输时延的平均值,并根据本次的检测结果对各个候选备份dc202赋予传输带宽优先级和传输时延优先级。例如,传输带宽最大的候选备份dc的传输带宽优先级为1,次之的则为2,并以此类推。

其中,传输状态信息表包括:候选备份dc的设备名称、传输带宽、传输时延、传输带宽优先级和传输时延优先级。优选地,传输状态信息表还可以包括步骤301所述的检测次数的设定值,检测次数用于指示检测主dc与候选备份dc之间的平均传输状态时所检测的次数。

一个传输状态信息表的具体实例请参见下表1,该表中的参数全是举例,不具有任何限定意义。

表1

303、当用户发送的数据的容量大于第一门限值时,确定该数据为第一类数据,当该数据的容量小于第一门限值时,确定该数据为第二类数据。

在本步骤中,以数据容量作为区分数据大小的标志。请参见图2,当用记发送的数据的容量大于第一门限值时,确定该数据为第一类数据,当数据的容量小于第一门限值时,确定该数据为第二类数据。

优选地,第一门限值取值为1mb,则第一类数据为大数据,第二类数据为小数据。具体可以利用http请求消息中的content-length头域来获取数据的容量,再进行判断区分。

另外,在一些特殊的应用领域,利用数据类型来判断数据的大小反而更加方便。因此,本步骤还能够替换为:当用户发送的数据的数据类型为第一类型时,确定该数据为第一类数据,当该数据的数据类型为第二类型时,确定该数据为第二类数据。

优选地,第一类型可以为多媒体类型,第二类型为文本类型,则第一类数据为大数据,第二类数据为小数据。具体可以嗅探数据文件的扩展名来确定数据类型。

在本发明技术方案中,一个重要原则是优选传输带宽较大的候选备份dc用于保存大数据,优选传输时延较小的候选备份dc保存小数据。

在本实施例中,期望副本数n等于期望同步备份副本数n1加上期望异步备份副本数n2,目标备份dc包括目标同步备份dc和目标异步备份dc。

304、若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选备份dc作为目标备份dc,目标同步备份dc的传输带宽优先级高于目标异步备份dc的传输带宽优先级,目标同步备份dc的数量为n1,目标异步备份dc的数量为n2,n=n1+n2。

例如,候选备份dc的数量为m(m>n),从传输状态信息表中选择传输带宽优先级为1~n的n个候选备份dc作为目标备份dc,其中,该n个目标备份dc中传输带宽优先级最高的n1个目标备份dc作为目标同步备份dc,其余的n2个目标备份dc作为目标异步备份dc。

305、若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选备份dc作为目标备份dc,目标同步备份dc的传输时延优先级高于目标异步备份dc的传输时延优先级,目标同步备份dc的数量为n1,目标异步备份dc的数量为n2,n=n1+n2。

例如,候选备份dc的数量为m(m>n),从传输状态信息表中选择传输时延优先级为1~n的n个候选备份dc作为目标备份dc,其中,该n个目标备份dc中传输时延优先级最高的n1个目标备份dc作为目标同步备份dc,其余的n2个目标备份dc作为目标异步备份dc。

优选地,目标备份dc可以只包括目标同步备份dc,候选备份dc可以只包括候选同步备份dc。则步骤304可以替换为:若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选同步备份dc作为目标同步备份dc。则步骤305可以替换为:若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选同步备份dc作为目标同步备份dc。

优选地,目标备份dc可以只包括目标异步备份dc,候选备份dc可以只包括候选异步备份dc。则步骤304可以替换为:若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选异步备份dc作为目标异步备份dc。则步骤305可以替换为:若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选异步备份dc作为目标异步备份dc。

306、向目标备份dc发送数据,使得目标备份dc保存该数据的副本。

请参见图2,在确定了目标备份dc204后,向目标备份dc204发送数据,在图中以实线表示,使得目标备份dc204保存数据的副本,与此同时,主dc301也保存数据的正本。

优选地,在向目标备份dc发送数据时,还将检测主dc与目标备份dc之间的实时传输状态。

在目标同步备份dc和主dc都成功保存用户发送的数据后,主dc将接收目标同步备份dc发送的备份成功消息。这时,主dc向用户发送上传成功消息。在异步备份任务中,主dc将接收目标异步备份dc发送的备份成功消息。

优选地,用户与主dc之间可采用http接口进行通信连接,也可采用nfs(networkfilesystem,网络文件系统)或cifs(commoninternetfilesystem,通用因特网文件系统)接口,这里不作具体限定。

307、当预设周期到期时,触发执行检测主dc与候选备份dc之间的传输状态。

在实际使用中,主dc与各候选备份dc之间的实时传输状态时刻发生变化,因此,必须设定检测传输状态的更新机制。在本实施例中,设定一个预设周期,在该周期的初始时刻开始检测主dc与各候选备份dc的之间传输状态,然后检测值在该周期内有效,但检测值的有效性也会随时间持续老化,故在下一个预设周期开始时,重新检测传输状态,从而保证所检测的传输状态的有效性。例如,预设周期设置为300秒。

优选地,本步骤中所述的预设周期也可以记载于传输状态信息表中。另一个传输状态信息表的具体实例请参见下表2,该表中的参数全是举例,不具有任何限定意义。

表2

优选地,该更新机制还能够基于传输状态进行设计。在步骤306中,在向目标备份dc发送数据时,还可以检测主dc与目标备份dc之间的实时传输状态。这种检测在数据传输流程中普遍存在,这里不再赘述。当任一目标备份dc的实时传输状态较传输状态信息表的传输状态恶化超过第二门限值时,具体可以为目标备份dc的传输带宽减少了20%,或者传输时延增加了20%,均可视为传输状态恶化的具体表现。在这种情况下,触发执行检测主dc与候选备份dc之间的传输状态。

在本实施例中,周期性检测主dc与候选备份dc之间的传输带宽和传输时延,实时掌握主dc与各候选备份dc之间的网络质量,在传输状态信息表中维护这些传输状态信息。在备份进行时,根据数据的大小、候选备份dc的传输状态和期望副本数选择合适的候选备份dc作为目标备份dc,再向其发送数据并进行备份。该备份过程基于网络质量,因此能够最大限度保证用户上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

本发明第三实施例将对一种数据备份装置进行详细说明,本实施例所述的数据备份装置中包含一个或多个单元用于实现前述方法的一个或多个步骤。因此,对前述方法中各步骤的描述适用于本数据备份装置中相应的单元。本实施例所述的数据备份装置具体结构请参见图6,包括:

第一检测单元601、选取单元602和备份单元603。其中,第一检测单元601、选取单元602、备份单元603均能够与至少1个候选备份dc62进行通信连接。本数据备份装置能够作为独立的模块加载于主dc60上。

第一检测单元601,用于检测主dc60与候选备份dc62之间的传输状态。

在用户61向主dc60上传数据前,第一检测单元601会先检测主dc60与各个候选备份dc62之间的传输状态。其中,传输状态的内容至少包含主dc60与各个候选备份dc62之间的传输带宽和传输时延,传输带宽和传输时延能够直接反映主dc60与候选备份dc62之间的网络质量。

选取单元602,用于根据用户发送的数据、该传输状态和期望副本数n从候选备份dc62中选取符合预设条件的目标备份dc。

其中,本实施例所述的数据是指用户61向主dc60上传的数据,期望副本数n是根据sla所确定的副本数量,在云存储系统架构下,1个副本只能保存于1个备份dc中。

选取单元602根据用户61上传的数据、主dc60与各候选备份dc62之间的传输状态和用户61的期望副本数n,从至少1个候选备份dc62中选取符合预设条件的目标备份dc,目标备份dc的数量与期望副本数n相同。

所述预设条件的设定与传输带宽和传输时延相关,将在后续实施例中进行说明。

备份单元603,用于向目标备份dc发送数据,使得目标备份dc保存数据的副本。

在选取单元602确定了目标备份dc后,备份单元603向目标备份dc发送数据,使得目标备份dc保存数据的副本,与此同时,主dc60中的存储单元也保存数据的正本。

在本实施例中,检测单元601通过检测主dc60与候选备份dc62之间的传输状态,掌握主dc60与各候选备份dc62之间的网络质量,在备份进行时,选取单元602根据用户发送的数据、传输状态和期望副本数n选择合适的候选备份dc作为目标备份dc,备份单元603再向目标备份dc发送数据并进行备份。该备份过程基于网络质量,因此能够最大限度保证用户61上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

本发明第四实施例将对第三实施例所述的数据备份装置进行补充说明,本实施例所述的数据备份装置中包含一个或多个单元用于实现前述方法的一个或多个步骤。因此,对前述方法中各步骤的描述适用于本数据备份装置中相应的单元。本实施例所述的数据备份装置具体结构请参见图7,包括:

第一检测单元701、维护单元702、判断单元703、选取单元704、备份单元705、第一触发单元706、第二检测单元707、第二触发单元708。其中,第一检测单元701与维护单元702通信连接,维护单元702与判断单元703通信连接,判断单元703与选取单元704通信连接,选取单元704与备份单元705通信连接,选取单元704、备份单元705分别与候选备份dc72通信连接,备份单元705还与第二检测单元707通信连接,第二检测单元707与第二触发单元708通信连接,第一触发单元706、第二触发单元708分别与第一检测单元701通信连接。

优选地,第一检测单元701具体包括:检测子单元7011。选取单元704具体包括:第一选择子单元7041、第二选择子单元7042、第三选择子单元7043。

第一检测单元701,检测主数据中心dc70与候选备份dc72之间的传输状态。

其中,传输状态的内容至少包括主dc70与各个候选备份dc72之间的传输带宽和传输时延,传输带宽和传输时延能够直接反映主dc70与候选备份dc72之间的网络质量。

优选地,检测任务具体可以包括但不限定于以下两种:

第一种、主dc维持1个独立的后台任务。

第二种、主dc在正常的业务流程中,根据预先设定的检测次数,利用对应次数的正常上传任务作为检测任务。

检测任务的这两种方式具体请参见第二实施例的相关记载,这里不再赘述。

第一检测单元701具体包括:

检测子单元7011,用于根据预设检测次数检测主dc70与候选备份dc72之间的平均传输状态。

第一检测单元701对各个候选备份dc72的传输状态进行检测时,检测次序可以包括但不限定于以下两种:

第一种、每次使用1个数据对所有候选备份dc进行检测。具体请参见图4及第二实施例的相关记载,这里不再赘述。

第二种、按照预设检测次数逐一对所有候选备份dc进行检测。具体请参见图5及第二实施例的相关记载,这里不再赘述。

维护单元702,用于根据第一检测单元701所检测的传输状态维护传输状态信息表。

在第一检测单元701检测完各个候选备份dc72的传输状态后,维护单元702根据该传输状态维护传输状态信息表,具体执行方式是刷新表中传输带宽、传输时延的平均值,并根据本次的检测结果对各个候选备份dc72赋予传输带宽优先级和传输时延优先级。例如,传输带宽最大的候选备份dc的传输带宽优先级为1,次之的则为2,并以此类推。

其中,传输状态信息表包括:候选备份dc的设备名称、传输带宽、传输时延、传输带宽优先级和传输时延优先级。优选地,传输状态信息表还可以包括对第一检测单元701检测次数的设定值,检测次数用于指示第一检测单元701检测主dc70与候选备份dc72之间的平均传输状态时所检测的次数。

判断单元703,用于当用户发送的数据的容量大于第一门限值时,确定该数据为第一类数据,还用于当该数据的容量小于第一门限值时,确定该数据为第二类数据。

在本实施例中,以数据容量作为区分数据大小的标志。优选地,第一门限值取值为1mb,则第一类数据为大数据,第二类数据为小数据。具体可以利用http请求消息中的content-length头域来获取数据的容量,再进行判断区分。

另外,在一些特殊的应用领域,利用数据类型来判断数据的大小反而更加方便。因此,判断单元703还能用于:当用户发送的数据的数据类型为第一类型时,确定该数据为第一类数据,还用于当该数据的数据类型为第二类型时,确定该数据为第二类数据。

优选地,第一类型可以为多媒体类型,第二类型为文本类型,则第一类数据为大数据,第二类数据为小数据。具体可以嗅探数据文件的扩展名来确定数据类型。

在本发明技术方案中,一个重要原则是优选传输带宽较大的候选备份dc用于保存大数据,优选传输时延较小的候选备份dc保存小数据。

选取单元704,用于根据用户发送的数据、传输状态和期望副本数n从候选备份dc72中选取符合预设条件的目标备份dc。

选取单元704具体包括:第一选择子单元7041、第二选择子单元7042和第三选择子单元7043。三者同一时间只能选择一个执行操作。

第一选择子单元7041,用于若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选备份dc作为目标备份dc,目标同步备份dc的传输带宽优先级高于目标异步备份dc的传输带宽优先级,目标同步备份dc的数量为n1,目标异步备份dc的数量为n2,n=n1+n2。第一选择子单元7041,还用于若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选备份dc作为目标备份dc,目标同步备份dc的传输时延优先级高于目标异步备份dc的传输时延优先级,目标同步备份dc的数量为n1,目标异步备份dc的数量为n2,n=n1+n2。

其中,期望副本数n等于期望同步备份副本数n1加上期望异步备份副本数n2,目标备份dc包括目标同步备份dc和目标异步备份dc。

一个实例:候选备份dc的数量为m(m>n),从传输状态信息表中选择传输带宽优先级为1~n的n个候选备份dc作为目标备份dc,其中,该n个目标备份dc中传输带宽优先级最高的n1个目标备份dc作为目标同步备份dc,其余的n2个目标备份dc作为目标异步备份dc。

另一个实例:候选备份dc的数量为m(m>n),从传输状态信息表中选择传输时延优先级为1~n的n个候选备份dc作为目标备份dc,其中,该n个目标备份dc中传输时延优先级最高的n1个目标备份dc作为目标同步备份dc,其余的n2个目标备份dc作为目标异步备份dc。

第二选择子单元7042,用于若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选同步备份dc作为目标同步备份dc,还用于若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选同步备份dc作为目标同步备份dc。

其中,目标备份dc只包括目标同步备份dc,候选备份dc也只包括候选同步备份dc。

第三选择子单元7043,用于若该数据为第一类数据,则从传输状态信息表中选择传输带宽优先级最高的n个候选异步备份dc作为目标异步备份dc,还用于若该数据为第二类数据,则从传输状态信息表中选择传输时延优先级最高的n个候选异步备份dc作为目标异步备份dc。

其中,目标备份dc只包括目标异步备份dc,候选备份dc也只包括候选异步备份dc。

备份单元705,用于向目标备份dc发送数据,使得目标备份dc保存该数据的副本。

在选取单元704确定了目标备份dc后,备份单元705向目标备份dc发送数据,使得目标备份dc保存数据的副本,与此同时,主dc70也保存数据的正本。

优选地,在备份单元705向目标备份dc发送数据时,第二检测单元707还将检测主dc70与目标备份dc72之间的实时传输状态。

在目标同步备份dc和主dc70都成功保存用户71发送的数据后,主dc70将接收目标同步备份dc发送的备份成功消息。这时,主dc70向用户71发送上传成功消息。在异步备份任务中,主dc70将接收目标异步备份dc发送的备份成功消息。

优选地,用户71与主dc70之间可采用http接口进行通信连接,也可采用nfs(networkfilesystem,网络文件系统)或cifs(commoninternetfilesystem,通用因特网文件系统)接口,这里不作具体限定。

第一触发单元706,用于当预设周期到期时,触发第一检测单元701执行操作。

在实际使用中,主dc70与各候选备份dc72之间的实时传输状态时刻发生变化,因此,必须设定检测传输状态的更新机制。在本实施例中,设定一个预设周期,在该周期的初始时刻,第一检测单元701开始检测主dc与各候选备份dc的之间传输状态,然后检测值在该周期内有效,但检测值的有效性也会随时间持续老化,故在下一个预设周期开始时,第一触发单元706触发第一检测单元701重新检测传输状态,从而保证所检测的传输状态的有效性。例如,预设周期设置为300秒。

优选地,预设周期也可以记载于传输状态信息表中。

第二检测单元707,用于当备份单元705执行操作时,检测主dc70与目标备份dc72之间的实时传输状态。这种检测在数据传输流程中普遍存在,这里不再赘述。

第二触发单元708,用于当任一目标备份dc的实时传输状态较传输状态信息表的传输状态恶化超过第二门限值时,触发第一检测单元701执行操作。具体可以为目标备份dc的传输带宽减少了20%,或者传输时延增加了20%,均可视为传输状态恶化的具体表现。

其中,第一触发单元706和第二触发单元708同一时间只能择一使用。

在本实施例中,检测单元701按预选的更新机制检测主dc70与候选备份dc72之间的传输带宽和传输时延,使本数据备份装置实时掌握主dc70与各候选备份dc72之间的网络质量,并由维护单元702在传输状态信息表中维护这些信息。在备份进行时,选取单元704根据数据的大小、候选备份dc72的传输状态和期望副本数n选择合适的候选备份dc作为目标备份dc,再通过备份单元705向其发送数据进行备份。该备份过程基于网络质量,因此能够最大限度保证用户71上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

本发明第五实施例将对一种数据备份系统进行详细说明,本实施例所述的数据备份系统中包含一个或多个装置用于实现前述方法的一个或多个步骤。因此,对前述方法中各步骤的描述适用于本数据备份系统中相应的装置。本实施例所述的数据备份系统具体结构请参见图8,包括:

数据备份装置801、主dc80、至少1个候选备份dc82和用户81。其中,用户81与主dc80通信连接,主dc80分别与各个候选备份dc82通信连接。数据备份装置801主dc80的组成部件,加载于主dc80上。

优选地,该至少1个候选备份dc82为同步备份dc、异步备份dc或二者的混合。

数据备份装置801能够实现前述第三实施例或第四实施例所述的数据备份装置的全部功能,这里不再赘述。至少1个候选备份dc82和用户81能够实现前述第三实施例或第四实施例所述的候选备份dc和用户的全部功能,这里也不再赘述。

在本实施例中,数据备份装置801通过检测主dc80与候选备份dc82之间的传输状态,掌握主dc80与各候选备份dc82之间的网络质量,在备份进行时,根据用户81发送的数据、传输状态和期望副本数n选择合适的候选备份dc作为目标备份dc,再向其发送数据并进行备份。该备份过程基于网络质量,因此能够最大限度保证用户81上传数据的速度和成功率,同时也就有效提高了云存储系统的工作效率。

本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的数据备份方法的部分或全部步骤。

请参见图9,本发明实施例还提供一种网络设备900,包括:

输入装置910、输出装置920、存储器930和处理器940(网络设备中的处理器940的数量可以为一个或多个,图9中以一个处理器为例)。在本发明的一些实施例中,输入装置910、输出装置920、存储器930和处理器940可通过总线或其它方式连接,其中,图9中以通过总线连接为例。

其中,处理器940执行如下步骤:检测主数据中心dc与候选备份dc之间的传输状态,所述传输状态包括传输带宽和传输时延;根据用户发送的数据、所述传输状态和期望副本数n从所述候选备份dc中选取符合预设条件的目标备份dc;向所述目标备份dc发送所述数据,使得所述目标备份dc保存所述数据的副本。

在本发明一些实施例中,处理器940还可执行如下步骤:

根据所述传输状态维护传输状态信息表,所述传输状态信息表包括:所述候选备份dc的设备名称、传输带宽、传输时延、传输带宽优先级和传输时延优先级。

在本发明的一些实施例中,处理器940还可执行如下步骤:

当所述数据的容量大于第一门限值或其数据类型为第一类型时,确定所述数据为第一类数据,当所述数据的容量小于所述第一门限值或其数据类型为第二类型时,确定所述数据为第二类数据。

在本发明的一些实施例中,存储器930所存储的所述期望副本数n等于期望同步备份副本数n1加上期望异步备份副本数n2,所述目标备份dc包括目标同步备份dc和目标异步备份dc,处理器940还可执行如下步骤:

若所述数据为第一类数据,则从所述传输状态信息表中选择传输带宽优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输带宽优先级高于所述目标异步备份dc的传输带宽优先级;若所述数据为第二类数据,则从所述传输状态信息表中选择传输时延优先级最高的n个候选备份dc作为目标备份dc,所述目标同步备份dc的传输时延优先级高于所述目标异步备份dc的传输时延优先级;其中,所述目标同步备份dc的数量为n1,所述目标异步备份dc的数量为n2。

在本发明的一些实施例中,存储器930所存储的所述目标备份dc为目标同步备份dc,所述候选备份dc为候选同步备份dc,处理器940还可执行如下步骤:

若所述数据为第一类数据,则从所述传输状态信息表中选择传输带宽优先级最高的n个候选同步备份dc作为目标同步备份dc;若所述数据为第二类数据,则从所述传输状态信息表中选择传输时延优先级最高的n个候选同步备份dc作为目标同步备份dc。

在本发明的一些实施例中,存储器930所存储的所述目标备份dc为目标异步备份dc,所述候选备份dc为候选异步备份dc,处理器940还可执行如下步骤:

若所述数据为第一类数据,则从所述传输状态信息表中选择传输带宽优先级最高的n个候选异步备份dc作为目标异步备份dc;若所述数据为第二类数据,则从所述传输状态信息表中选择传输时延优先级最高的n个候选异步备份dc作为目标异步备份dc。

在本发明一些实施例中,处理器940还可执行如下步骤:

当预设周期到期时,触发执行所述检测主dc与候选备份dc之间的传输状态的步骤,或当任一目标备份dc的实时传输状态较所述传输状态信息表的传输状态恶化超过第二门限值时,触发执行所述检测主dc与候选备份dc之间的传输状态的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上对本发明所提供的一种数据备份方法、装置和系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1