数据库的数据重分布方法、装置、设备和存储介质制造方法及图纸

技术编号:26790876 阅读:20 留言:0更新日期:2020-12-22 17:06
本公开提供一种数据库的数据重分布方法、装置、设备和存储介质。该方法包括:接收客户端发送的重分布命令,重分布命令用于指示对第一数据表存储的基础数据进行重分布以生成第二数据表,第一数据表按照第一预设规则存储数据,第二数据表按照第二预设规则存储数据,对基础数据进行重分布,将基础数据写入第二数据表,在对基础数据进行重分布的时间段内,接收到客户端发送的增量数据的写入指令,将增量数据写入到第一数据表,在对基础数据进行重分布结束后,对增量数据进行重分布,将增量数据写入第二数据表,在对增量数据进行重分布的时间段内,禁止第一数据表写入数据,在对增量数据进行重分布结束后,将第一数据表的指针指向第二数据表。

【技术实现步骤摘要】
数据库的数据重分布方法、装置、设备和存储介质
本公开涉及数据库
,尤其涉及一种数据库的数据重分布方法、装置、设备和存储介质。
技术介绍
在业务需求变化的情况下,无共享的分布式数据库需要进行扩容或者缩容,也就是增加或者减少节点,从而实现改变其存储或者计算能力的目的,以适应业务的变化需求。以数据库扩容为例,传统的数据库扩容方法需要将数据库停机,把节点加入的数据库中,然后把表数据重分布到新的数据库的各个节点中,然而,传统的扩容方法在数据重分布过程中,无法对数据库进行访问,导致无法进行相应的数据库业务。为解决传统的数据库扩容方法的上述问题,可以采用在线扩容的方法,也就是无需停机,可以在线添加新节点,在线进行各个数据表的数据重分布,对于未正在执行数据重分布的数据表可以执行正常的读/写等任何操作,对于正在重分布的表上无法执行任何操作。然而,这将导致需要访问正在重分布的表的业务中断或者长时间无响应,降低了数据库的可用性。
技术实现思路
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种数据库本文档来自技高网...

【技术保护点】
1.一种数据库的数据重分布方法,其特征在于,包括:/n接收客户端发送的重分布命令,所述重分布命令用于指示对第一数据表存储的基础数据进行重分布以生成第二数据表,所述第一数据表按照第一预设规则存储数据,所述第二数据表按照第二预设规则存储数据;/n对所述基础数据进行重分布,将所述基础数据写入所述第二数据表;/n在对所述基础数据进行重分布的时间段内,接收到所述客户端发送的增量数据的写入指令,将所述增量数据写入到所述第一数据表;/n在对所述基础数据进行重分布结束后,对所述增量数据进行重分布,将所述增量数据写入第二数据表;/n在对所述增量数据进行重分布的时间段内,禁止所述第一数据表写入数据;/n在对所述增...

【技术特征摘要】
1.一种数据库的数据重分布方法,其特征在于,包括:
接收客户端发送的重分布命令,所述重分布命令用于指示对第一数据表存储的基础数据进行重分布以生成第二数据表,所述第一数据表按照第一预设规则存储数据,所述第二数据表按照第二预设规则存储数据;
对所述基础数据进行重分布,将所述基础数据写入所述第二数据表;
在对所述基础数据进行重分布的时间段内,接收到所述客户端发送的增量数据的写入指令,将所述增量数据写入到所述第一数据表;
在对所述基础数据进行重分布结束后,对所述增量数据进行重分布,将所述增量数据写入第二数据表;
在对所述增量数据进行重分布的时间段内,禁止所述第一数据表写入数据;
在对所述增量数据进行重分布结束后,将所述第一数据表的指针指向第二数据表。


2.根据权利要求1所述的方法,其特征在于,所述将所述第一数据表的指针指向第二数据表之后,还包括:
接收到所述客户端发送的写入指令,将所述写入指令对应的数据写入所述第二数据表。


3.根据权利要求1或2所述的方法,其特征在于,在对所述基础数据进行重分布结束后,在禁止所述第一数据表写入数据之前,还包括:
对未完成的写事务进行中断。


4.根据权利要求3所述的方法,其特征在于,所述接收客户端发送的重分布命令之前,还包括:
接收客户端发送的第二预设规则。


5.根据权利要求4所述的方法,其特征在于,所述接收客户端发送的第二预设规则之前,还包括:
接收客户端发送节点变化指令,所述节点变化指令用于指示增加存储节点或者减少存储节点。


6.一种数据库的数据重分布装置,其特征在于,包括:
第一接收模块,用于接收客户...

【专利技术属性】
技术研发人员:王鸿翔
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:北京;11

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

1