[发明专利]一种数据迁移的系统和数据迁移的方法在审
申请号: | 201310388988.9 | 申请日: | 2013-08-30 |
公开(公告)号: | CN104424283A | 公开(公告)日: | 2015-03-18 |
发明(设计)人: | 付大超 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/48;H04L29/08 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许志勇 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 迁移 系统 方法 | ||
技术领域
本申请涉及分布式数据库领域,尤其涉及一种数据迁移的系统和数据迁移的方法。
背景技术
HBase是分布式数据库,一般包括对外提供读写服务的主(Master)集群和主集群的备(Slave)集群,当主集群出现问题时,一般需要切换到备集群,由备集群对外提供读写服务,主集群需要将数据拷贝(复制)到备集群中。假设有两个集群:M集群和S集群,其中,M是主集群,S是备集群。开启了主集群M到备集群S的复制(replication)。当M集群由于某种原因无法提供服务时,会将所有读写请求切换到S集群上。考虑两个场景:其一,M集群中的有一部分数据还没有来得及拷贝到S集群中去,那么切换到S集群之后,这部分数据不一致,也就导致了这部分数据的不可用性。其二,当M集群恢复正常后,将所有读写请求切换回M集群时,有部分数据在S集群中存在而在M集群中不存在,这部分数据不一致,也会导致这部分数据的不可用性。并且,在以上两个场景中,还需要考虑:现有方案的复制(replication)功能是部署在M集群,而M集群是对外提供读写服务的主集群,这会影响主集群的读写性能。另外,如何实现数据实时对账,即,在数据的同步过程中怎么保证数据同步过去了,怎么确认主、备集群中的数据是否一致?现有的集群间数据迁移中,并没有能够确认主、备集群之间数据数据是否一致方案。
目前为止还没有一种能够解决以上场景出现时产生的问题,以提高集群可用性的方案。
例如,现有的HBase系统,一般通过解析日志文件(Hlog)来将主集群中的数据异步地写入备集群,每一台主集群的机器上都有一个区域管理单元(例如,RegionServer,简称RS),负责处理用户的读写请求,每一个区域管理单元对应一个日志文件(Hlog),Hlog存放在Hadoop分布式文件系统(HDFS)中。HBase会将新生成的Hlog加入到相应区域管理单元的Zookeeper路径下,同时每个区域管理单元所生成的Hlog都有一个复制(replication)线程来解析,并将解析出的数据写入指定的Slave集群中,并且记录已经处理的Hlog的偏移(offset)位置。当处理完某个Hlog之后,会在Zookeeper上删除相应的Hlog节点。当某个区域管理单元宕机后,会有其他的区域管理单元来接着处理相应的Hlog,主要是通过争抢一个锁(lock)节点来获得处理这个宕机的区域管理单元的Hlog的机会,然后将宕机的区域管理单元路径下的Hlog复制到自己的路径下,并将宕机的区域管理单元的路径删除。
现有的HBase集群,将主集群中数据复制(replication)到备集群的过程有以下缺点:1、只支持从主集群Push(主动将数据复制到)数据到备集群(推模式),这就决定复制的过程需要在主集群上进行,因此,会影响主集群的性能。2、只支持持续的数据迁移这种模式,不支持指定时间段的数据迁移模式,因此,无法满足指定时间段的数据的补齐,当主集群由于某种原因无法提供服务,例如,出现机房断电等情况时,若主集群的部分数据还没有来得及写入备集群,会造成备集群的部分数据不可用。3、区域管理单元宕机是通过Zookeeper(分布式管理协调系统)事件通知的,所有区域管理单元得到事件通知后都来争抢宕机的区域管理单元的锁,这个过程中并没有自动均衡机制,可能会造成一个区域管理单元处理很多宕机的区域管理单元的Hlog。4、数据迁移的过程中,无法确认数据是否同步过去了,无法确认两个集群数据是否一致,也就是没有实现对账功能。
针对目前的将主集群的数据复制到备集群的过程,需要能够保证主备切换过程中数据的可用性和一致性以及支持指定时间段的数据的补齐的方案。
发明内容
本申请的主要目的在于提供一种数据迁移的系统及数据迁移的方法,以解决现有技术存在的主集群切换到备集群过程中数据的可用性和一致性问题,其中:
本申请提供的一种数据迁移的系统,用于在分布式数据库的主集群与备集群之间进行数据迁移,该系统包括:主集群以及一个或多个备集群;其中,所述主集群包括一个或多个服务器,每个服务器具有区域管理单元,每个区域管理单元生成至少一个与要迁移数据相关的日志文件;所述日志文件包括:所述要迁移数据的内容、所述要迁移数据写入所述主集群的时间信息;并且其中,在所述主集群或备集群中的一个或多个服务器上配置有一个或多个迁移单元;所述一个或多个迁移单元,用于通过解析与所述要迁移数据相关的日志文件从而将所述要迁移数据写入指定的备集群中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310388988.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息处理方法及电子设备
- 下一篇:多媒体素材插入文档文件中的方法和装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置