集群数据复制方法、优先级确定方法及装置制造方法及图纸

技术编号:16456027 阅读:27 留言:0更新日期:2017-10-25 20:34
本申请提供了集群数据复制方法和装置。集群数据复制方法包括:确定需要跨集群复制数据的至少一个复制任务;计算至少一个复制任务中各复制任务的优先级;根据各复制任务的优先级,执行各复制任务。本申请可以在跨域带宽有限的条件下,对待复制数据进行合理调度,实现数据的快速复制。

Cluster data replication method, priority determination method and device

This application provides a cluster data replication method and device. Cluster data replication method includes determining at least one copy of data across the cluster replication task; calculate the copy task at least one copy of the task priority; according to the copy task priority, the implementation of the replication task. This application can deal with the replication data reasonably under the condition of limited cross domain bandwidth, and realize the rapid replication of data.

【技术实现步骤摘要】
集群数据复制方法、优先级确定方法及装置
本申请涉及通信技术,尤其涉及一种集群数据复制方法、优先级确定方法及装置。
技术介绍
集群大大提高了单机的存储极限和处理极限。但随着互联网特别是移动互联网的持续发展,很多公司产生的数据已经达到PB甚至EB级别,并且每天新增加的数据数量也在迅速增长。当这些数据超过单个集群的存储上线,或单个集群无法满足数据处理的需求时,就需要将这些数据按照业务单元分拆并存储在多个集群中。业务单元之间往往有依赖关系,业务A的数据存储在第一集群中,若同在第一集群中的业务B需要访问业务A的数据,则可以从第一集群内直接读取数据;若位于第二集群的业务C需要访问业务A的数据,则需要跨集群异地读取数据。若第二集群中存在多个业务需要访问业务A的数据,那么需要多次跨集群异地读取同一份数据,这会浪费集群之间的带宽资源。特别是随着业务数量越来越多,跨集群异地读取同一份数据的业务数量也会越来越多,导致带宽资源的浪费更加严重。为节约带宽资源,业界普遍采取的方式是将业务A的数据在其它集群中保留一个副本,这样其它集群中的业务在需要业务A的数据时就可以在集群内直接读取数据。这需要将数据在各个集群之间进行复制。现有技术一般采用离线复制方式,即停止各集群的数据库操作,一次性将数据全部从一个集群复制到另一个集群,这种方式需要大量带宽资源。但是,跨域带宽是有限且很宝贵的,并且随着业务数量不断增长,需要复制的数据也会逐渐增多,所以在跨域带宽有限的条件下,离线复制方法显然已经无法满足需求,因此急需一种新的数据复制方法。
技术实现思路
本申请提供一种集群数据复制方法及装置,用以在跨域带宽有限的条件下,对待复制数据进行合理调度,实现数据的快速复制。为达到上述目的,本申请的实施例采用如下技术方案:第一方面,提供了一种集群数据复制方法,包括:确定需要跨集群复制数据的至少一个复制任务;计算所述至少一个复制任务中各复制任务的优先级;根据所述各复制任务的优先级,执行所述各复制任务。第二方面,提供了一种集群数据复制装置,包括:确定模块,用于确定需要跨集群复制数据的至少一个复制任务;计算模块,用于计算所述至少一个复制任务中各复制任务的优先级;执行模块,用于根据所述各复制任务的优先级,执行所述各复制任务。第三方面,提供一种优先级确定方法,包括:获取需要跨集群复制数据的复制任务的触发方式、所述复制任务需要复制的数据的产生时间、以及所述复制任务对应的源业务的重要度中的至少一个因素,所述复制任务对应的源业务是指产生所述复制任务需要复制的数据的业务;根据所述至少一个因素,计算所述复制任务的优先级。第四方面,提供一种优先级确定装置,包括:信息获取模块,用于获取需要跨集群复制数据的复制任务的触发方式、所述复制任务需要复制的数据的产生时间、以及所述复制任务对应的源业务的重要度中的至少一个因素,所述复制任务对应的源业务是指产生所述复制任务需要复制的数据的业务;优先级计算模块,用于根据所述至少一个因素,计算所述复制任务的优先级。在本申请中,在确定需要跨集群复制数据的复制任务之后,计算各复制任务的优先级,然后根据各复制任务的优先级,执行各复制任务。由此可见,本申请在跨域带宽有限的条件下,按照复制任务的优先级对复制任务进行调度,优先调度优先级较高的复制任务,能够对复制任务进行合理调度,有利于实现数据的快速复制。上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本申请一实施例提供的集群系统的结构示意图;图2为本申请另一实施例提供集群数据复制方法的流程示意图;图3为本申请又一实施例提供的复制系统的架构示意图;图4为本申请又一实施例提供的对复制任务进行打包处理的流程示意图;图5为本申请又一实施例提供的集群数据复制装置的结构示意图;图6为本申请又一实施例提供的优先级确定方法的流程示意图;图7为本申请又一实施例提供的优先级确定装置的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1为本申请实施例一提供的集群系统的结构示意图。如图1所示,该集群系统仅象征性的示意出3个集群,分别为集群A、集群B和集群C,实际上集群系统可以包含任意数量的集群。结合图1所示集群系统说明一下跨集群数据复制的过程。假设集群A中存在一业务a,集群B中存在一业务b,集群C中存在一业务c,业务a产生数据,而且业务b和业务c需要业务a产生的数据,故需要将业务a产生的数据从集群A复制到集群B和集群C中。当然,若集群A中还包括业务d,且业务b和业务c也需要业务d产生的数据,则也需要将业务d产生的数据从集群A复制到集群B和集群C中。当然,若业务a需要业务b和业务c产生的数据,则也需要将业务b和c产生的数据从集群B和C分别复制到集群A中。由于集群之间的带宽资源有限,而且随着业务数量不断增长,需要复制的数据也会逐渐增多,所以如果采用离线复制方式,需要一次性将所有数据从一个集群复制到另一个集群,这需要大量带宽资源,在集群之间的带宽资源有限的情况下,该方法不再适用,需要部分的进行数据复制,这就涉及到待复制数据之间的调度问题,如果能够合理的调度待复制数据,那么将有利于提高复制效率。针对上述问题,本申请提供一种解决方案,其主要思想在于,在确定需要跨集群复制数据的复制任务之后,计算复制任务的优先级,然后根据复制任务的优先级,执行复制任务。本申请在跨域带宽有限的条件下,按照复制任务的优先级对复制任务进行调度,优先调度优先级较高的复制任务,能够对复制任务进行合理调度,有利于实现数据的快速复制。下面结合附图对本申请技术方案进行详细说明。图2为本申请另一实施例提供的集群数据复制方法的流程示意图。如图2所示,该方法包括:201、确定需要跨集群复制数据的至少一个复制任务。202、计算至少一个复制任务中各复制任务的优先级。203、根据各复制任务的优先级,执行各复制任务。本实施例提供一种集群数据复制方法,可由集群数据复制装置(后续简称为复制装置)执行,用以合理调度复制任务,实现跨集群复制数据,提高数据复制效率。在具体实现上,复制装置可以部署于集群系统中,例如部署于集群系统中的某个集群,例如可以是产生数据的集群(简称为源集群),或需要复制数据的集群(简称为目的集群)内,或者也可以是独立于集群系统但能够与集群系统进行通信的设备。具体的,复制装置首先需要确定需要跨集群复制数据的至少一个复制任务。复制任务是指需要将数据从一个集群复制到其它集群的任务。其中,复制装置可以采用但不限于以下几种方式确定复制任务:第一种方式:定期轮询数据本文档来自技高网...
集群数据复制方法、优先级确定方法及装置

【技术保护点】
一种集群数据复制方法,其特征在于,包括:确定需要跨集群复制数据的至少一个复制任务;计算所述至少一个复制任务中各复制任务的优先级;根据所述各复制任务的优先级,执行所述各复制任务。

【技术特征摘要】
1.一种集群数据复制方法,其特征在于,包括:确定需要跨集群复制数据的至少一个复制任务;计算所述至少一个复制任务中各复制任务的优先级;根据所述各复制任务的优先级,执行所述各复制任务。2.根据权利要求1所述的方法,其特征在于,所述确定需要跨集群复制数据的至少一个复制任务,包括以下至少一种操作:定期轮询数据版本管理服务器,在发现有数据的版本发生变化时,确定有需要对所述版本发生变化的数据进行跨集群复制的复制任务;获取控制服务器根据收到的复制任务通知消息所下发的复制任务;其中,所述复制任务通知消息是第一业务在产生新版本数据时上报给所述控制服务器的,或者是需要数据的第二业务在确定所述数据在所述第二业务所在集群中的版本与所述数据所在源集群中的版本不一致时上报给所述控制服务器的。3.根据权利要求1所述的方法,其特征在于,所述计算所述至少一个复制任务中各复制任务的优先级,包括:根据所述各复制任务的触发方式、所述各复制任务需要复制的数据的产生时间、以及所述各复制任务对应的源业务的重要度中的至少一个因素,计算所述各复制任务的优先级;其中,所述复制任务对应的源业务是指产生所述复制任务需要复制的数据的业务。4.根据权利要求3所述的方法,其特征在于,所述根据所述各复制任务的触发方式、所述各复制任务需要复制的数据的产生时间、以及所述各复制任务对应的源业务的重要度,计算所述各复制任务的优先级,包括:根据所述各复制任务的触发方式,确定所述各复制任务的第一优先级取值;根据所述各复制任务对应的源业务的重要度,确定所述各复制任务的第二优先级取值;根据所述各复制任务需要复制的数据的产生时间,确定所述各复制任务的第三优先级取值;根据所述各复制任务的第一优先级取值、第二优先级取值以及第三优先级取值,生成所述各复制任务的优先级。5.根据权利要求4所述的方法,其特征在于,所述根据所述各复制任务需要复制的数据的产生时间,确定所述各复制任务的第三优先级取值,包括:根据公式Pd=9*t/T,确定所述各复制任务的第三优先级取值;其中,t表示所述各复制任务需要复制的数据的产生时间;T表示所述各复制任务需要复制的数据的生命周期,且0<t<T;Pd表示所述各复制任务的第三优先级取值。6.根据权利要求4所述的方法,其特征在于,所述根据所述各复制任务的第一优先级取值、第二优先级取值以及第三优先级取值,生成所述各复制任务的优先级,包括:按照由高位到低位的顺序,将所述各复制任务的第一优先级取值、第二优先级取值以及第三优先级取值拼接在一起,以生成所述各复制任务的优先级。7.根据权利要求1-6任一项所述的方法,其特征在于,所述根据所述各复制任务的优先级,执行所述各复制任务,包括:根据所述各复制任务的优先级,为所述各复制任务申请带宽资源;基于所申请到的带宽资源,执行所述各复制任务。8.根据权利要求7所述的方法,其特征在于,所述根据所述各复制任务的优先级,为所述各复制任务申请带宽资源,包括:根据所述各复制任务的优先级以及预先设置的作业提交限制,对所述各复制任务进行打包处理,以形成至少一个复制作业;根据所述至少一个复制作业中各复制作业所包含的复制任务的优先级,确定所述各复制作业的优先级;根据所述各复制作业的优先级,为所述各复制作业所包含的复制任务申请带宽资源。9.根据权利要求8所述的方法,其特征在于,所述根据所述各复制任务的优先级以及预先设置的作业提交限制,对所述各复制任务进行打包处理,以形成至少一个复制作业,包括:按照优先级由高到低的顺序,依次获取复制任务作为当前复制任务;若当前复制任务未达到所述作业提交限制,则继续获取其它未达到所述作业提交限制的复制任务,直到未达到所述作业提交限制的多个复制任务的总和达到所述作业提交限制为止,将所述未达到所述作业提交限制的多个复制任务打包,以生成一个复制作业;若当前复制任务达到所述作业提交限制,则直接将所述当前复制任务作为一个复制作业。10.根据权利要求8所述的方法,其特征在于,所述作业提交限制包括以下至少一个:文件总个数上限值;文件总大小上限值。11.一种集群数据复制装置,其特征在于,包括:确定模块,用于确定需要跨集群复制数据的至少一...

【专利技术属性】
技术研发人员:史英杰何乐黄俨张杰张辰
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1