一种数据迁移的系统和数据迁移的方法

文档序号:6509652阅读:195来源:国知局
一种数据迁移的系统和数据迁移的方法
【专利摘要】本申请提供一种数据迁移的系统及数据迁移的方法,用于在分布式数据库的主集群与备集群之间进行数据迁移,该系统包括:主集群以及一个或多个备集群;其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与要迁移数据相关的日志文件;并且其中,在所述主集群或备集群中的一个或多个服务器上配置有一个或多个迁移单元;所述一个或多个迁移单元,用于通过解析与所述要迁移数据相关的日志文件从而将所述要迁移数据写入指定的备集群中。采用本申请的技术方案,能够减少主集群的性能压力,不仅可以支持持续的数据迁移,还可以支持指定时间段的数据迁移,解决了指定时间段的数据补齐。
【专利说明】一种数据迁移的系统和数据迁移的方法

【技术领域】
[0001]本申请涉及分布式数据库领域,尤其涉及一种数据迁移的系统和数据迁移的方法。

【背景技术】
[0002]HBase是分布式数据库,一般包括对外提供读写服务的主(Master)集群和主集群的备(Slave)集群,当主集群出现问题时,一般需要切换到备集群,由备集群对外提供读写服务,主集群需要将数据拷贝(复制)到备集群中。假设有两个集群:M集群和S集群,其中,M是主集群,S是备集群。开启了主集群M到备集群S的复制(replicat1n)。当M集群由于某种原因无法提供服务时,会将所有读写请求切换到S集群上。考虑两个场景:其一,M集群中的有一部分数据还没有来得及拷贝到S集群中去,那么切换到S集群之后,这部分数据不一致,也就导致了这部分数据的不可用性。其二,当M集群恢复正常后,将所有读写请求切换回M集群时,有部分数据在S集群中存在而在M集群中不存在,这部分数据不一致,也会导致这部分数据的不可用性。并且,在以上两个场景中,还需要考虑:现有方案的复制(replicat1n)功能是部署在M集群,而M集群是对外提供读写服务的主集群,这会影响主集群的读写性能。另外,如何实现数据实时对账,S卩,在数据的同步过程中怎么保证数据同步过去了,怎么确认主、备集群中的数据是否一致?现有的集群间数据迁移中,并没有能够确认主、备集群之间数据数据是否一致方案。
[0003]目前为止还没有一种能够解决以上场景出现时产生的问题,以提高集群可用性的方案。
[0004]例如,现有的HBase系统,一般通过解析日志文件(Hlog)来将主集群中的数据异步地写入备集群,每一台主集群的机器上都有一个区域管理单元(例如,Reg1nServer,简称RS),负责处理用户的读写请求,每一个区域管理单元对应一个日志文件(Hlog),Hlog存放在Hadoop分布式文件系统(HDFS)中。HBase会将新生成的Hlog加入到相应区域管理单元的Zooke^er路径下,同时每个区域管理单元所生成的Hlog都有一个复制(replicat1n)线程来解析,并将解析出的数据写入指定的Slave集群中,并且记录已经处理的Hlog的偏移(offset)位置。当处理完某个Hlog之后,会在Zookeeper上删除相应的Hlog节点。当某个区域管理单元宕机后,会有其他的区域管理单元来接着处理相应的Hlog,主要是通过争抢一个锁(lock)节点来获得处理这个宕机的区域管理单元的Hlog的机会,然后将宕机的区域管理单元路径下的Hlog复制到自己的路径下,并将宕机的区域管理单元的路径删除。
[0005]现有的HBase集群,将主集群中数据复制(implicat1n)到备集群的过程有以下缺点:1、只支持从主集群Push (主动将数据复制到)数据到备集群(推模式),这就决定复制的过程需要在主集群上进行,因此,会影响主集群的性能。2、只支持持续的数据迁移这种模式,不支持指定时间段的数据迁移模式,因此,无法满足指定时间段的数据的补齐,当主集群由于某种原因无法提供服务,例如,出现机房断电等情况时,若主集群的部分数据还没有来得及写入备集群,会造成备集群的部分数据不可用。3、区域管理单元宕机是通过Zookeeper (分布式管理协调系统)事件通知的,所有区域管理单元得到事件通知后都来争抢宕机的区域管理单元的锁,这个过程中并没有自动均衡机制,可能会造成一个区域管理单元处理很多宕机的区域管理单元的Hlog。4、数据迁移的过程中,无法确认数据是否同步过去了,无法确认两个集群数据是否一致,也就是没有实现对账功能。
[0006]针对目前的将主集群的数据复制到备集群的过程,需要能够保证主备切换过程中数据的可用性和一致性以及支持指定时间段的数据的补齐的方案。


【发明内容】

[0007]本申请的主要目的在于提供一种数据迁移的系统及数据迁移的方法,以解决现有技术存在的主集群切换到备集群过程中数据的可用性和一致性问题,其中:
[0008]本申请提供的一种数据迁移的系统,用于在分布式数据库的主集群与备集群之间进行数据迁移,该系统包括:主集群以及一个或多个备集群;其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与要迁移数据相关的日志文件;所述日志文件包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息;并且其中,在所述主集群或备集群中的一个或多个服务器上配置有一个或多个迁移单元;所述一个或多个迁移单元,用于通过解析与所述要迁移数据相关的日志文件从而将所述要迁移数据写入指定的备集群中。
[0009]根据本申请的实施例,在该系统中,所述一个或多个迁移单元与所述一个或多个区域管理单元一一对应地被配置在同一台服务器上。
[0010]根据本申请的实施例,在该系统中,所述一个或多个迁移单元,其中任意一个为主迁移单元,用于将所述一个或多个区域管理单元生成的与所述要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理。
[0011]根据本申请的实施例,在该系统中,所述一个或多个迁移单元中的每一个迁移单元包括:监控模块,用于当该迁移单元成为主迁移单元时监控所述一个或多个迁移单元中每个迁移单元的运行状态是否正常。
[0012]根据本申请的实施例,在该系统中,所述迁移单元包括:获取模块,用于在持续的数据迁移模式下获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件;解析模块,用于解析所述日志文件,以获取所述要迁移数据;以及写入模块,用于将所述要迁移数据写入指定的备集群中。
[0013]根据本申请的实施例,在该系统中,所述获取模块,还用于在指定时间段的数据迁移模式下获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件;所述解析模块,还用于解析所述时间信息符合所述指定时间段要求的日志文件,以获取所述指定时间段的要迁移数据;以及所述写入模块,还用于将所述指定时间段内的要迁移数据写入指定的备集群中。
[0014]根据本申请的实施例,在该系统中,所述写入模块,还用于将解析所述日志文件所得到的增量数据写入对应的增量表中。
[0015]根据本申请的实施例,在该系统中,所述迁移单元还包括:模式转换模块,用于将所述迁移单元的工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换。
[0016]根据本申请的实施例,在该系统中,所述模式转换模块包括:转换子模块,用于暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
[0017]根据本申请的实施例,在该系统中,所述模式转换模块还包括:保存子模块,用于保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息;以及记录子模块,用于记录当暂停所述持续的数据迁移模式时相应的区域管理单元最后生成的日志文件中的最小时间点;所述转换子模块,进一步用于暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点开启所述持续的数据迁移模式。
[0018]根据本申请的实施例,在该系统中,所述迁移单元包括:一致性对比模块,用于对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性。
[0019]根据本申请的实施例,在该系统中,所述迁移单元包括:动态配置模块,用于对所述主集群向所述指定备集群进行数据迁移的迁移表、增量表、迁移单元集群开关、日志路径、多备集群功能以及一致性对比开关进行动态配置。
[0020]根据本申请的另一方面提供了一种数据迁移的方法,用于在主集群与备集群之间进行数据迁移,该方法包括:一个或多个迁移单元解析与要迁移数据相关的日志文件;所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中;其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与所述要迁移数据相关的日志文件;所述日志文件包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息;所述一个或多个迁移单元配置在所述主集群或备集群中的一个或多个服务器上。
[0021]根据本申请的实施例,在该方法中,所述一个或多个迁移单元与所述主集群的一个或多个区域管理单元一一对应地被配置在同一台服务器上。
[0022]根据本申请的实施例,在该方法中,所述一个或多个迁移单元中的主迁移单元,将所述一个或多个区域管理单元生成的与所述要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理,其中,所述主迁移单元为所述一个或多个迁移单元中的任意一个。
[0023]根据本申请的实施例,在该方法中,还包括:所述一个或多个迁移单元中的主迁移单元监控所述一个或多个迁移单元中每个迁移单元运行的状态是否正常。
[0024]根据本申请的实施例,在该方法中,所述一个或多个迁移单元解析与所述要迁移数据相关的日志文件的步骤包括:在持续的数据迁移模式下,获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件;解析所述日志文件,以获取所述要迁移数据;所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中的步骤进一步包括:在持续的数据迁移模式下将所述要迁移数据写入指定的备集群中。
[0025]根据本申请的实施例,在该方法中,所述一个或多个迁移单元解析与所述要迁移数据相关的日志文件的步骤进一步包括:在指定时间段的数据迁移模式下,获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件;解析所述时间信息符合所述指定时间段要求的日志文件,以获取所述指定时间段的要迁移数据;以及所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中的步骤进一步包括:在指定时间段的数据迁移模式下将所述指定时间段内的要迁移数据写入指定的备集群中。
[0026]根据本申请的实施例,在该方法中,还包括:所述一个或多个迁移单元将解析所述日志文件所得到的增量数据写入对应的增量表中。
[0027]根据本申请的实施例,在该方法中,还包括:所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换。
[0028]根据本申请的实施例,在该方法中,所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换,包括:暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
[0029]根据本申请的实施例,在该方法中,所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换,还包括:保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息,并记录当暂停所述持续的数据迁移模式时相应的区域管理单元所生成的最后生成的日志文件中的最小时间点;暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点开启所述持续的数据迁移模式。
[0030]根据本申请的实施例,在该方法中,还包括:所述一个或多个迁移单元对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性。
[0031]根据本申请的实施例,在该方法中,还包括:所述一个或多个迁移单元对所述主集群向所述指定备集群进行数据迁移的迁移表、增量表、迁移单元集群开关、日志路径、多备集群功能以及一致性对比开关进行动态配置。
[0032]与现有技术相比,根据本申请的技术方案,既可以支持Push方式(推模式)的数据迁移,也可以支持Pull方式(拉模式)的数据迁移,能够减少主集群的性能压力;不仅可以支持持续的数据迁移,也可以支持指定时间段的数据迁移,解决了指定时间段的数据补齐;并且,还可以实时对比主、备集群数据是否一致。

【专利附图】

【附图说明】
[0033]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0034]图1是本申请实施例的一种数据迁移的系统的迁移单元配置在主集群中的一台或多台服务器上的示意图;
[0035]图2是本申请实施例的一种数据迁移的系统的迁移单元配置在备集群中的一台或多台服务器上的示意图;
[0036]图3是本申请实施例的迁移单元的结构框图;
[0037]图4是本申请实施例的数据迁移的方法的流程图;
[0038]图5是本申请实施例的图4中的步骤S401的一种实施方式的流程图;以及
[0039]图6是本申请实施例的图4中的步骤S401的另一种实施方式的流程图。

【具体实施方式】
[0040]本申请的主要思想在于,通过数据迁移单元在主集群和备集群之间进行数据迁移,迁移单元可以部署在主集群,也可以部署在备集群,部署在备集群可以减小主集群的性能压力,同时,实时对比主、备集群中数据的一致性,以保证数据迁移过程中的两个集群数据一致。
[0041 ]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042]根据本申请的实施例,提供了一种数据迁移的系统。
[0043]本申请的数据迁移系统可以用于在分布式数据库主集群与备集群之间进行数据迁移,尤其可以应用于HBase (Hadoop Database)数据库的主集群和备集群之间的数据迁移。
[0044]根据本申请的实施例,该数据迁移系统可以包括:主集群以及一个或多个备集群,其中,可以在主集群或备集群中的一个或多个服务器上配置一个或多个迁移单元。
[0045]主集群可以包括一个或多个服务器,每个服务器一般可以具有一个区域管理单元,其中每个区域管理单元可以生成至少一个与要迁移数据相关的日志文件,该日志文件可以存储在分布式文件系统HDFS中;日志文件包括:要迁移数据的内容、要迁移数据写入所述主集群的时间信息(或被更改的时间信息);当数据被更改时(例如,要迁移数据因被进行写操作而被更改时),区域管理单元可以将更改后的数据及更改的时间等写入日志文件中,所述区域管理单元,可以用于处理用户对主集群中数据的读写请求。
[0046]所述一个或多个迁移单元可以用于通过解析与所述要迁移数据相关的日志文件获取所述要迁移数据,并将所述要迁移数据写入指定的备集群中。其中,指定的备集群可以为一个也可以为多个,当指定的备集群为一个时,将通过日志解析的得到的要迁移数据全部写入该备集群中。当指定的备集群为多个时,将通过日志解析得到的所有要迁移数据分别全部写入每个指定的备集群中,即每个指定的备集群都被写入通过日志解析得到的全部要迁移数据。
[0047]可以在主集群或备集群中的一个或多个服务器上配置所述一个或多个迁移单元,即,所述迁移单元可以配置在所述主集群也可以配置在所述备集群中,也可以配置在不相关的集群上。应注意,本申请中提到的备集群可以包括除所述主集群之外的任意集群,备集群可以为与所述主集群的备集群、也可以为所述主集群的备集群之外的其他集群(其他集群可以为与所述主集群不相关的任意集群)。
[0048]根据本申请的实施例,所述一个或多个迁移单元,其中任意一个为主迁移单元。例如,在HBase数据库中,当某个迁移单元获得相应的锁,则会成为主迁移单元。所述主迁移单元,可以用于将所述一个或多个区域管理单元生成的与所述要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理。具体而言,所述一个或多个迁移单元可以组成迁移单元集群,主迁移单元可以将所述一个或多个区域管理单元分配给相应的迁移单元进行处理,即,使所述一个或多个迁移单元处理相应的一个或多个区域管理单元生成的与要迁移数据相关的日志文件。
[0049]根据本申请的实施例,当所述迁移单元被配置在主集群的一个或多个服务器中时,即,所述迁移单元被配置在主集群中时,可以实现Push方式的数据迁移,S卩,将数据从主集群向指定的备集群推送。可选地,可以将一个或多个迁移单元与主集群的一个或多个区域管理单元对应地配置在同一台服务器上。可参考图1所示,图1是本申请实施例的一种数据迁移的系统将一个或多个迁移单元与主集群的一个或多个区域管理单元对应地配置在同一台服务器上的示意图。
[0050]如图1所示,数据迁移系统100的主集群10有服务器11-1?11-N,将一个或多个迁移单元12-1?12-N与主集群10的一个或多个区域管理单元13-1?13-N对应的配置在同一台服务器(物理机)11上,也就是每一个区域管理单元13所在的服务器11上对应配置一个迁移单元12,每个迁移单元12通过读取并解析对应的区域管理单元13的日志文件,将要迁移数据写入多个备集群(备集群20-1?20-M)中指定的备集群20-1中。其中,每个迁移单元12所对应处理的区域管理单元13可以为与其在同一台服务器11上的区域管理单元,也可以是别台物理机上的区域管理单元,可以由主迁移单元为各个迁移单元12(其中可以包括该主迁移单元)指派其对应的区域管理单元13,当其中某个迁移单元无法正常工作(例如,宕机)时,主迁移单元还可以指派其他迁移单元来处理该迁移单元相应的区域管理单元。其中,指定的备集群可以为一个也可以为多个,图1所示为指定的备集群为一个时的情况,如图1所示,当指定的备集群20为一个时,将通过日志解析的得到的要迁移数据写入指定的备集群20中。另外,当指定的备集群为多个时,各个迁移单元将通过日志解析得到的要迁移数据分别全部写入每个指定的备集群中,即每个指定的备集群都被写入通过日志解析得到的全部要迁移数据。需要说明的是,图1所示为本申请的可选实施方式,本申请的实施方式不限于此,例如,当主集群中有N个区域管理单元时,可以在主集群上配置M个迁移单元来处理N个区域管理单元,N可以不等于M。
[0051]根据本申请的实施例,当所述迁移单元被配置在备集群的一个或多个服务器中时,即,当迁移单元被配置在所述备集群中时,可以实现Pull方式的数据迁移,即,从备集群将主集群的数据拉取到指定的备集群中。应注意,本申请中提到的备集群可以包括除所述主集群之外的任意集群,备集群可以为所述主集群的备集群、也可以为所述主集群的备集群之外的其他集群(即,与所述主集群不相关的任意集群)。例如,可以将一个或多个迁移单元配置在主集群的指定的备集群的一个或多个服务器中或者可以将一个或多个迁移单元配置在所述指定的备集群之外的其他集群的一个或多个服务器中。可参考图2所示,图2是本申请实施例的一种数据迁移的系统将一个或多个迁移单元配置在主集群指定的备集群之外的其他集群的示意图。如图2所示,数据迁移系统200的主集群50有服务器51-1?51-N,在主集群50指定备集群40之外的备集群30的多个服务器31_1?31-N中设置多个迁移单元32-1?32-N,由主迁移单元为各个迁移单元32 (其中可以包括该主迁移单元)指派其对应的区域管理单元52。多个迁移单元32通过读取并解析主集群50中所对应的区域管理单元52生成的要迁移数据相关的日志文件从而将要迁移数据写入该指定的备集群40中。需要说明的是,虽然图2所示的配置在备集群30中的迁移单元32与主集群50中区域管理单元52是数量相等,并且可以是一一对应的,但本申请的实施方式不限于此,迁移单元与区域管理单元的数量可以不相等,可以由主迁移单元为各个迁移单元(其中可以包括该主迁移单元)指派其对应的区域管理单元。
[0052]如图3所示,图3为根据本申请实施例的迁移单元的结构框图。根据本申请的一个实施例,所述一个或多个迁移单元中的每一个迁移单元300可以包括获取模块310、解析模块320以及写入模块330。
[0053]本申请的数据迁移系统可以在持续的数据迁移模式下进行主集群与备集群之间的数据迁移,即实现持续的数据迁移模式。
[0054]在持续的数据迁移模式下,所述获取模块310,可以用于在持续的数据迁移模式下获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件。
[0055]所述解析模块320,可以用于解析所述日志文件,以获取所述要迁移数据。
[0056]所述写入模块330,可以用于将所述要迁移数据写入指定的备集群中。
[0057]当迁移单元被配置在主集群的一个或多个服务器中时,也就是被配置在主集群中时,S卩,以Push方式进行数据迁移。例如,每一个区域管理单元所在的服务器上对应配置一个迁移单元的情况,每个迁移单元300通过读取模块310读取本地的区域管理单元的日志文件,并通过解析模块320对日志文件进行解析,再由写入模块330将解析模块320解析所述日志文件得到的要迁移数据写入指定的备集群,其中,指定的备集群可以为指定的一个备集群,也可以为指定的多个备集群。
[0058]这种Push的数据迁移方式,可以通过读取迁移单元本地的区域管理单元所生成的日志文件并进行解析获得迁移数据并写入指定的备集群中,可以减少网络的读取压力。
[0059]当迁移单元被配置在备集群的一个或多个服务器中时,也就是配置在备集群中时,即Pull方式的数据迁移,例如,可以将一个或多个迁移单元配置在指定备集群的一个或多个服务器中,或将一个或多个迁移单元配置在其他集群的一个或多个服务器中,其他集群可以为与所述主集群不相关的任意集群。
[0060]在备集群中的每个迁移单元300通过读取模块310读取远程的主集群的区域管理单元所生成的与要迁移数据相关的日志文件,并通过解析模块320对所述日志文件进行解析,再由写入模块330将解析模块320解析所述日志文件得到的要迁移数据写入指定的备集群中,其中,指定的备集群可以为指定的一个备集群,也可以为指定的多个备集群。
[0061]这种Pull的数据迁移方式,通过读取远程的主集群的相应的区域管理单元所生成的日志文件并解析后按照一定的规则写入备集群,由于是在备集群(指定的备集群或指定的备集群之外的其他备集群)中进行数据的解析等操作,可以减小解析和处理日志文件对主集群读写的影响转嫁到压力较小的备集群中,减小主集群的性能压力。
[0062]在上述的持续的数据迁移模式中,无论是Push方式还是Pull方式的数据迁移,都可以针对不断生成的所述要迁移数据的日志文件进行解析并获取要迁移的数据写入指定的备集群中,可以达到近实时的数据迁移的效果。
[0063]本申请的数据迁移系统除了可以在上述的持续的数据迁移模式下进行主集群与备集群之间的数据迁移,还可以在指定时间段的数据迁移模式下进行主集群与备集群之间的数据迁移,即根据所述指定时间段要求在主集群与备集群之间进行数据迁移。下面介绍本申请的数据迁移系统如何实现在指定时间段的数据迁移模式下进行主集群与备集群之间的数据迁移。
[0064]根据本申请的实施例,在所述指定时间段的数据迁移模式下,所述获取模块310,还可以用于在指定时间段的数据迁移模式下,获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件。
[0065]所述解析模块320,还可以用于解析所述时间信息符合所述指定时间段的日志文件,以获取所述指定时间段的要迁移数据。
[0066]所述写入模块330,还可以用于将所述指定时间段内的要迁移数据写入指定的备集群中。
[0067]由于日志文件包括所述要迁移数据写入主集群的时间信息或数据发生改变的时间信息,因此可以根据所述时间信息,对指定时间段内的要迁移数据进行数据迁移。这种指定时间段的数据迁移还可以用于主集群向备集群切换时的数据补齐。并且,既可用于上述的迁移单元在主集群中的情况也可用于迁移单元在备集群中的情况。即,在指定时间段的数据迁移模式下,迁移单元300的读取模块310根据数据迁移的指定时间段要求,读取本地或远程的区域管理单元所生成的时间信息符合所述指定时间段要求的日志文件,解析模块320解析所述日志文件,以获取该指定时间段内的要迁移数据,再由写入模块330将解析模块320解析日志文件得到的要迁移数据写入指定的备集群中,这就实现了指定时间段的数据迁移。
[0068]根据本申请的实施例,所述一个或多个迁移单元中的每一个迁移单元还可以包括:一致性对比模块,该模块可以用于对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性。
[0069]所述一致性对比模块可以将解析所述日志文件获得的要迁移数据与所述指定的备集群的数据作比较,还可以将主、备集群中的数据进行比较。例如,在HBase集群中,当处于插入模式的操作时(HBase中,只有插入和删除两种基本模式),将解析所述日志文件获得的数据与备集群查询的数据作比较,由于HBase中,大部分的操作都是插入模式,这样不需要查询主集群,减轻了主集群的性能压力,又达到了对账(即,主、备集群的数据一致性的对比)的目的。当处于删除模式的操作时,则同时将主、备集群的数据作比较。一致性对比模块可以为动态开启的。
[0070]根据本申请的实施例,所述一个或多个迁移单元中的每一个迁移单元还可以包括动态配置模块,该模块可以用于动态配置迁移表、增量表、迁移单元集群开关、日志路径(Hlog Path)、多备集群功能以及一致性对比开关。其中,动态配置迁移表可以为记录要迁移数据的表,增量表可以为记录增量数据的表;迁移单元集群开关,可以根据实际情况的需要,开启和关闭迁移单元集群;日志路径(Hlog Path)为要迁移数据对应的日志文件的存储路径;多备集群功能,即,增加一个或多个备集群;一致性对比开关,可以为进行一致性对比的开启和关闭的开关。
[0071]根据本申请的实施例,所述一个或多个迁移单元中的每一个迁移单元还可以包括监控模块,该模块可以用于当该迁移单元成为主迁移单元时,监控所述一个或多个迁移单元中每个迁移单元运行的状态是否正常。可以通过收集以下指标来监控各个迁移单元的运行状态是否正常:迁移单元的个数,正在迁移数据的迁移单元的个数,每个迁移单元正在处理哪些区域管理单元,区域管理单元的个数,还未处理的日志文件Hlog总数,每个区域管理单元还未处理的日志文件Hlog的个数。
[0072]根据本申请的实施例,无论是在持续数据迁移模式下还是指定时间段数据迁移模式中,写入模块都可以将解析所述日志文件所得到的增量数据写入对应的增量表中。例如,HBase数据库中,通过解析Hlog,可以得到相应表的数据(HBase数据库中,一般以表的形式存储数据,通过主键rowkey,也称为行健来检索数据),从而得到所述要迁移数据写入主集群的时间戳(timestamp),可以在数据的原主键rowkey前面增加写入主集群的时间戳(timestamp)组成新的主键rowkey,因此,可以由写入模块330将这些新生成的主键和对应的数据写到按照预定命名规则生成的新表中,即增量表中,增量表可以用来查询任意时段原表写入了哪些数据,即增量数据。
[0073]本申请既支持持续的数据迁移的模式,也支持指定时间段的数据迁移的模式,还能够实现持续的数据迁移模式和指定时间段的数据迁移模式的转换。
[0074]根据本申请的实施例,所述一个或多个迁移单元中的每一个迁移单元还可以包括模式转换模块,该模块可以用于将所述迁移单元的工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换。
[0075]所述模式转换模块包括:转换子模块,该模块可以用于暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。当从所述持续数据迁移模式转换到指定时间段数据迁移模式时,暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
[0076]根据本申请的实施例,所述模式转换模块还可以包括:保存子模块和记录子模块。
[0077]保存子模块,可以用于保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息。
[0078]记录子模块,可以用于记录当暂停所述持续的数据迁移模式时相应的区域管理单元最后生成的日志文件中的最小时间点。
[0079]并且,所述转换子模块,进一步用于暂停所述指定时间段的数据迁移模式,并根据所述最小时间点恢复所述持续的数据迁移模式的工作。
[0080]具体来说,当从持续数据迁移模式向指定时间段的数据迁移模式转换时,保存子模块保存暂停持续的数据迁移模式时没有处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息,并记录相应的区域管理单元最后生成的日志文件中的最小时间点,当迁移单元将工作模式从指定时间段的数据迁移模式恢复到持续的数据迁移模式时,转换子模块暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点恢复所述持续的数据迁移模式的工作,即,继续处理所述没有处理完的日志文件的没有被处理完的部分,并根据所述最小时间点重新开始持续的数据迁移(从所述最小时间点开始还会有新生成的与所述要迁移数据相对应的日志文件,从这个时间点开始继续进行数据迁移)。
[0081 ] 本申请还提供了一种数据迁移的方法。
[0082]图4示意性地示出了根据本申请一个实施例的数据迁移的方法的流程图。
[0083]根据本申请的实施例,该方法可以用于在分布式数据库的主集群与备集群之间进行数据迁移,尤其可以应用于HBase (Hadoop Database)数据库的主集群和备集群之间的数据迁移,如图所示:
[0084]在步骤S401中,一个或多个迁移单元解析与所述要迁移数据相关的日志文件,其中,所述一个或多个迁移单元配置在所述主集群或备集群中的一个或多个服务器上。
[0085]在步骤S402中,所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中。
[0086]其中,所述主集群可以包括一个或多个服务器,每个服务器一般可以具有一个区域管理单元,每个区域管理单元可以生成至少一个与所述要迁移数据相关的日志文件;所述日志文件可以包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息(或被更改的时间信息);当数据被更改时(例如,当要迁移数据因被进行写操作或其他操作而被更改时),区域管理单元会将更改后的数据及更改的时间等写入该日志文件中。
[0087]迁移单元可以配置在所述主集群的一个或多个服务器中,也可以配置在所述备集群的一个或多个服务器中。应注意,本申请中提到的备集群可以包括除所述主集群之外的任意集群,备集群可以为所述主集群的备集群、也可以为所述主集群的备集群之外的其他集群(即,与所述主集群不相关的任意集群)。当迁移单元被配置在所述主集群的一个或多个服务器,即,迁移单元配置在主集群中时,可以实现Push方式的数据迁移,即将数据从主集群向指定的备集群推送。可选地,可以将一个或多个迁移单元与主集群的一个或多个区域管理单元对应的配置在同一台服务器上,即,在主集群的每个区域管理单元所在的服务器上配置一个迁移单元。当迁移单元配置在备集群的一个或多个服务器,即迁移单元配置在备集群中时,可以实现Pull方式的数据迁移,即从备集群将主集群的数据拉取到备集群中。例如,可以将多个迁移单元配置在主集群的指定的备集群的一个或多个服务器中或者将所述迁移单元配置在所述主集群指定的备集群之外的其他备集群(所述其他备集群,也可以称作其他集群,是指所述要迁移数据原来所在的主集群之外的任意集群)的一个或多个服务器中。其中,指定的备集群可以为一个也可以为多个,当指定的备集群为一个时,将通过日志解析的得到的要迁移数据全部写入该备集群中。当指定的备集群为多个时,将通过日志解析得到的所有要迁移数据分别全部写入每个指定的备集群中,即每个指定的备集群都被写入通过日志解析得到的全部要迁移数据。
[0088]根据本申请的实施例,所述主迁移单元将所述一个或多个区域管理单元所生成的与要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理。具体来说,所述一个或多个迁移单元可以组成一个集群,其中任意一个迁移单元为主迁移单元,其他的迁移单元为从迁移单元,任意迁移单元都可能成为主迁移单元,例如,在HBase数据库中,当某个迁移单元获得相应的锁,就会成为主迁移单元。主迁移单元可以将所述一个或多个区域管理单元分配给相应的迁移单元进行处理,即,使所述一个或多个迁移单元对应处理所述一个或多个区域管理单元生成的与要迁移数据相关的日志文件。
[0089]根据本申请的实施例,本申请可以在持续的数据迁移模式下进行主集群与备集群之间的数据迁移,即在主集群与备集群之间进行持续的数据迁移。
[0090]在持续的数据迁移模式下,步骤S401可以包括步骤S501-S502。参考图5,图5为根据本申请一实施例的步骤S401流程图。
[0091]如图5所示,在步骤S501中,在持续的数据迁移模式下获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件。即,在持续的数据迁移模式下,读取主迁移单元分配的对应的区域管理单元所生成的日志文件。
[0092]在步骤S502中,通过解析所述日志文件,以获取所述要迁移数据。即,基于日志解析的方式获取所述要迁移数据。
[0093]并且,在步骤S402中,在所述持续的数据迁移模式下将所述要迁移数据写入指定的备集群中。
[0094]上述的持续迁移模式,可以对于不断生成的与所述要迁移数据相关的日志文件进行解析获得所述要迁移数据进行持续的迁移,可以达到近实时的数据迁移。并且,即可用于迁移单元设置在主集群中的情况也可用于迁移单元设置在备集群中的情况,也就是说这种持续的数据迁移模式既可以用于Push方式的数据迁移,也可以用于Pull方式的数据迁移。
[0095]根据本申请的另一实施例,本申请还可以在指定时间段的数据迁移模式下进行主集群与备集群之间的数据迁移,即在主集群与备集群之间进行指定时间段内的数据的迁移。
[0096]在指定时间段的数据迁移模式下,步骤S401可以包括步骤S601-S602。参考图6,为根据本申请另一实施例的步骤S401流程图。
[0097]如图6所示,在步骤S601中,在指定时间段的数据迁移模式下,获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件。
[0098]由于日志文件包括要迁移数据写入所述主集群的时间信息或数据发生改变的时间信息,因此可以根据所述时间信息,获取符合指定时间段内的日志文件。
[0099]在步骤S602中,解析所述时间信息符合所述指定时间段要求的日志文件,以获取所述指定时间段的要迁移数据。
[0100]并且,在步骤S402中,在所述指定时间段的数据迁移模式下,将所述指定时间段内的要迁移数据写入指定的备集群中。
[0101]上述的数据迁移方式是通过解析指定时间段的日志文件获得要迁移数据进行的数据迁移,这种指定时间段的数据迁移还可以用于主集群向备集群切换时的数据补齐。并且,即可用于迁移单元设置在主集群中的情况也可用于迁移单元设置在备集群中的情况,也就是说这种指定时间段的数据迁移既可以用于Push方式的数据迁移,也可以用于Pull方式的数据迁移。
[0102]根据本申请的实施例,无论是在持续的数据迁移模式下还是指定时间段的数据迁移模式下,还可以包括所述一个或多个迁移单元将解析所述日志文件所得到的增量数据写入对应的增量表中的步骤。例如,HBase数据库中,通过解析Hlog,都可以得到相应表的数据(HBase数据库中,一般以表的形式存储数据,通过主键rowkey,也称为行健来检索数据),从而得到所述要迁移数据写入主集群的时间戳(timestamp),可以在数据的原主键rowkey前面增加写入主集群的时间戳(timestamp)组成新的主键rowkey,因此,可以由写入模块330将这些新生成的主键和对应的数据写到按照预定命名规则生成的新表中,即增量表中,增量表可以用来查询任意时段原表写入了哪些数据,即增量数据。
[0103]根据本申请的实施例,还可以包括:所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换的步骤。当迁移单元将工作模式从所述持续数据迁移转换到指定时间段数据迁移时,迁移单元暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
[0104]所述一个或多个迁移单元还可以保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息,并记录当暂停所述持续的数据迁移模式时相应的区域管理单元最后生成的日志文件中的最小时间点,也就是说,当所述迁移单元将工作模式从持续数据迁移模式向指定时间段的数据迁移模式转换时,保存暂停持续的数据迁移模式时没有处理完的日志文件,并记录相应的区域管理单元最后生成的日志文件中的最小时间点,当迁移单元将工作模式从指定时间段的数据迁移模式恢复到持续的数据迁移模式时,暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点恢复所述持续的数据迁移模式的工作,即,迁移单元继续处理所述没有处理完的日志文件中没有被处理完的部分,并根据所述最小时间点重新开始持续的数据迁移(从该最小时间点开始还会有新生成的与所述要迁移数据相对应的日志文件,从这个时间点开始继续进行数据迁移)。
[0105]根据本申请的实施例,还可以包括:所述一个或多个迁移单元对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性的步骤。
[0106]所述迁移单元可以将解析所述日志文件获得的要迁移数据与所述指定的备集群的数据作比较,以确定主、备集群数据的一致性;还可以将主、备集群中的数据进行比较。例如,在HBase集群中,当处于插入模式的操作时(HBase中,只有插入和删除两种基本模式),将解析所述日志文件获得的数据与备集群查询的数据作比较,由于HBase中,大部分的操作都是插入模式,这样不需要查询主集群,减轻了主集群的性能压力,又达到了对账(即,主、备集群的数据一致性的对比)的目的。当处于删除模式的操作时,则同时将主、备集群的数据作比较。一致性对比功能可以为动态开启的。
[0107]根据本申请的实施例,还可以包括:所述一个或多个迁移单元对所述主集群向所述指定备集群进行数据迁移的迁移表、增量表、迁移单元集群开关、日志路径、多备集群功能以及一致性对比开关进行动态配置的步骤。其中,动态配置迁移表可以为记录要迁移数据的表,增量表可以为记录增量数据的表;迁移单元集群开关,可以根据实际情况的需要,开启和关闭迁移单元集群;日志路径(Hlog Path)为要迁移数据对应的日志文件的存储路径);多备集群功能,即,增加一个或多个备集群;一致性对比开关,可以为进行一致性对比的开启和关闭的开关。
[0108]根据本申请的实施例,还可以包括:所述一个或多个迁移单元中的主迁移单元监控所述一个或多个迁移单元中每个迁移单元运行的状态是否正常。主要通过收集以下指标来进行监控:迁移单元的个数,正在迁移数据的迁移单元的个数,每个迁移单元正在处理哪些区域管理单元,区域管理单元的个数,还未处理的Hlog总数,每个区域管理单元还未处理的Hlog的个数。
[0109]由于本申请的方法的操作步骤与装置的结构特征基本对应,可以相互参照,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
[0110]在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0111]内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
[0112]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0113]还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0114]本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0115]以上所述仅为本申请的实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
【权利要求】
1.一种数据迁移的系统,用于在分布式数据库的主集群与备集群之间进行数据迁移,其特征在于,包括:主集群以及一个或多个备集群; 其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与要迁移数据相关的日志文件;所述日志文件包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息;并且其中,在所述主集群或备集群中的一个或多个服务器上配置有一个或多个迁移单元; 所述一个或多个迁移单元,用于通过解析与所述要迁移数据相关的日志文件从而将所述要迁移数据写入指定的备集群中。
2.根据权利要求1所述的系统,其特征在于,所述一个或多个迁移单元与所述一个或多个区域管理单元一一对应地被配置在同一台服务器上。
3.根据权利要求1所述的系统,其特征在于, 所述一个或多个迁移单元,其中任意一个为主迁移单元,用于将所述一个或多个区域管理单元生成的与所述要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理。
4.根据权利要求3所述的系统,其特征在于,所述一个或多个迁移单元中的每一个迁移单元包括: 监控模块,用于当该迁移单元成为主迁移单元时监控所述一个或多个迁移单元中每个迁移单元的运行状态是否正常。
5.根据权利要求1所述的系统,其特征在于,所述迁移单元包括: 获取模块,用于在持续的数据迁移模式下获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件; 解析模块,用于解析所述日志文件,以获取所述要迁移数据;以及 写入模块,用于将所述要迁移数据写入指定的备集群中。
6.根据权利要求5所述的系统,其特征在于, 所述获取模块,还用于在指定时间段的数据迁移模式下获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件; 所述解析模块,还用于解析所述时间信息符合所述指定时间段要求的日志文件,以获取所述指定时间段的要迁移数据;以及 所述写入模块,还用于将所述指定时间段内的要迁移数据写入指定的备集群中。
7.根据权利要求5或6所述的系统,其特征在于,所述写入模块,还用于将解析所述日志文件所得到的增量数据写入对应的增量表中。
8.根据权利要求6所述的系统,其特征在于,所述迁移单元还包括:模式转换模块,用于将所述迁移单元的工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换。
9.根据权利要求8所述的系统,其特征在于,所述模式转换模块包括: 转换子模块,用于暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
10.根据权利要求9所述的系统,其特征在于,所述模式转换模块还包括: 保存子模块,用于保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息;以及 记录子模块,用于记录当暂停所述持续的数据迁移模式时相应的区域管理单元最后生成的日志文件中的最小时间点; 所述转换子模块,进一步用于暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点开启所述持续的数据迁移模式。
11.根据权利要求1所述的系统,其特征在于,所述迁移单元包括:一致性对比模块,用于对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性。
12.根据权利要求11所述的系统,其特征在于,所述迁移单元包括:动态配置模块,用于对所述主集群向所述指定备集群进行数据迁移的迁移表、增量表、迁移单元集群开关、日志路径、多备集群功能以及一致性对比开关进行动态配置。
13.一种数据迁移的方法,用于在主集群与备集群之间进行数据迁移,其特征在于,包括: 一个或多个迁移单元解析与要迁移数据相关的日志文件; 所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中; 其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与所述要迁移数据相关的日志文件;所述日志文件包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息;所述一个或多个迁移单元配置在所述主集群或备集群中的一个或多个服务器上。
14.根据权利要求13所述的方法,其特征在于,所述一个或多个迁移单元与所述主集群的一个或多个区域管理单元一一对应地被配置在同一台服务器上。
15.根据权利要求13所述的方法,其特征在于,还包括: 所述一个或多个迁移单元中的主迁移单元,将所述一个或多个区域管理单元生成的与所述要迁移数据相关的日志文件分配给所述一个或多个迁移单元进行处理,其中,所述主迁移单元为所述一个或多个迁移单元中的任意一个。
16.根据权利要求15所述的方法,其特征在于,还包括:所述一个或多个迁移单元中的主迁移单元监控所述一个或多个迁移单元中每个迁移单元运行的状态是否正常。
17.根据权利要求13所述的方法,其特征在于, 所述一个或多个迁移单元解析与所述要迁移数据相关的日志文件的步骤包括: 在持续的数据迁移模式下,获取相应的区域管理单元所生成的与所述要迁移数据相关的日志文件; 解析所述日志文件,以获取所述要迁移数据; 所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中的步骤进一步包括: 在持续的数据迁移模式下将所述要迁移数据写入指定的备集群中。
18.根据权利要求17所述的方法,其特征在于, 所述一个或多个迁移单元解析与所述要迁移数据相关的日志文件的步骤进一步包括: 在指定时间段的数据迁移模式下,获取相应的区域管理单元所生成的时间信息符合指定时间段要求的与所述要迁移数据相关的日志文件; 解析所述时间信息符合所述指定时间段要求的日志文件,以获取所述指定时间段的要迁移数据;以及 所述一个或多个迁移单元将所述要迁移数据写入指定的备集群中的步骤进一步包括: 在指定时间段的数据迁移模式下将所述指定时间段内的要迁移数据写入指定的备集群中。
19.根据权利要求17或18所述的方法,其特征在于,还包括:所述一个或多个迁移单元将解析所述日志文件所得到的增量数据写入对应的增量表中。
20.根据权利要求18所述的方法,其特征在于,还包括:所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换。
21.根据权利要求20所述的方法,其特征在于,所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换,包括: 暂停所述持续的数据迁移模式,并开启所述指定时间段的数据迁移模式。
22.根据权利要求21所述的方法,其特征在于,所述一个或多个迁移单元将工作模式在所述持续的数据迁移模式与所述指定时间段的数据迁移模式之间转换,还包括: 保存当暂停所述持续的数据迁移模式时没有被处理完的日志文件及所述日志文件中没有被处理完的部分在所述日志文件中对应的位置信息,并记录当暂停所述持续的数据迁移模式时相应的区域管理单元所生成的最后生成的日志文件中的最小时间点; 暂停所述指定时间段的数据迁移模式,并根据所述没有被处理完的日志文件中没有被处理完的部分在所述日志文件中对应的位置信息以及所述最小时间点开启所述持续的数据迁移模式。
23.根据权利要求13所述的方法,其特征在于,还包括:所述一个或多个迁移单元对所述主集群和所述指定的备集群中数据进行对比,以确定主、备集群数据的一致性。
24.根据权利要求23所述的方法,其特征在于,还包括:所述一个或多个迁移单元对所述主集群向所述指定备集群进行数据迁移的迁移表、增量表、迁移单元集群开关、日志路径、多备集群功能以及一致性对比开关进行动态配置。
【文档编号】G06F17/30GK104424283SQ201310388988
【公开日】2015年3月18日 申请日期:2013年8月30日 优先权日:2013年8月30日
【发明者】付大超 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1