[发明专利]一种数据重分布方法、装置及数据库集群有效
申请号: | 201710038202.9 | 申请日: | 2017-01-18 |
公开(公告)号: | CN108319623B | 公开(公告)日: | 2021-10-22 |
发明(设计)人: | 张学富;孟凡彬;向昊 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23;G06F9/46 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 杨泽;刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 分布 方法 装置 数据库 集群 | ||
本发明实施例提供一种数据库集群中的数据重分布方法、装置及数据库集群。该数据库集群包括至少一个第一节点,至少一个第一节点上存储有原始表,该方法包括:启动数据重分布过程,数据重分布过程用于将原始表重分布至至少一个第一节点和第二节点上;数据重分布过程包括:启动第一事务,第一事务在至少一个第一节点和第二节点上创建临时表,并关联原始表和临时表的导入操作,启动第二事务,第二事务根据第一事务的事务标识在原始表中筛选出旧的元组,并将筛选出的旧的元组重分布至临时表中,在第二事务结束后,交换原始表与该临时表的元数据。本发明实施例可以有效提升数据库集群的处理性能。
技术领域
本发明实施例涉及数据库集群技术,尤其涉及一种数据重分布方法、装置和数据库集群。
背景技术
数据库集群是指利用至少两台数据库服务器,构成一个虚拟单一数据逻辑映像,然后像单机数据库系统那样,向客户端提供数据服务的分布式数据库。数据库集群主要有两种架构:共享磁盘(Shared Disk)和无共享(Shared Nothing)。其中,在Shared Disk架构的数据库集群中,多个服务器节点共享同一存储介质,每一个节点都可以访问共享存储介质中的全量数据并对外提供服务。而在Shared Nothing架构的数据库集群中,每一个节点都拥有自己的内存和磁盘,节点之间不互相共享内存及磁盘,数据库中的数据分布到多个节点上,节点之间通过网络连接,通常是通过光钎等专用网络。
为了适应不同的业务场景,数据库集群通常具有可伸缩性,即数据库集群所包含的节点可以根据业务需求改变。例如,随着数据规模的增长,为了支持更大规模的数据存储和查询,需要对数据库集群进行扩容,即添加新的节点至集群中并完成数据的搬移。对于Shared Nothing架构的数据库集群,在添加新的节点到数据库集群之后,需要将原有节点上的部分数据重分布到新加入的节点来完成扩容。同样地,如果数据库集群的资源闲置较多,可以对数据库集群进行缩容,即移除部分节点,从而避免资源浪费。在移除数据库集群的节点之前,需要将待移除节点上的数据重分布至其它节点。在数据重分布的过程中,为了保证扩容前后数据的一致性,正在被重分布的表将会被锁定,不能对其进行读写操作,直到此表中的数据的重分布全部完成。
由此可见,现有的数据库集群的数据重分布阶段需要将部分数据锁定以保证数据一致性,而根据数据量的大小,数据重分布的耗时在几小时到几天不等,导致用户长时间无法对正在重分布的数据进行操作,从而对业务造成严重影响。
发明内容
本发明实施例提供一种数据库集群中的数据重分布方法、装置及数据库集群,解决数据库集群在进行数据重分布的过程中,用户长时间无法对正在重分布的数据进行操作的问题。
第一方面,本发明实施例提供一种数据库集群的数据重分布方法,该数据库集群包括至少一个第一节点,该至少一个第一节点上存储有原始表,该方法包括:在该数据库集群新增第二节点之后,启动数据重分布过程,以将该原始表重分布至该至少一个第一节点和该第二节点上;其中,该原始表包括多个元组,一个元组的事务标识为导入该元组的事务的标识;该数据重分布过程具体包括:启动第一事务,所述第一事务用于在该至少一个第一节点和该第二节点上创建临时表,并关联该原始表和该临时表的导入操作,使得该重分布过程中导入的新的元组同时插入到该原始表和该临时表中;启动第二事务,该第二事务用于根据该第一事务的事务标识在该原始表中筛选出旧的元组,并将筛选出的旧的元组重分布至该临时表中;该第一事务的事务标识大于该原始表中该旧的元组的事务标识;在该第二事务结束后,交换该原始表与该临时表的元数据。
采用上述方法,可以实现在数据库集群扩容时允许对数据库集群的访问和导入新的元组,有效提升数据库集群的处理性能。
结合第一方面,在一种可能的实现方式中,根据第一事务的事务标识在原始表中筛选出旧的元组,并将筛选出的旧的元组重分布至临时表中,包括:分别获取该原始表中的各个元组的事务标识,其中,事务标识小于第一事务的事务标识的元组为该旧的元组;将该旧的元组重分布至该临时表中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710038202.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种媒体内容推荐方法及装置
- 下一篇:数据加载方法及装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置