分区移动方法、装置、设备和存储介质制造方法及图纸

技术编号:38604151 阅读:9 留言:0更新日期:2023-08-26 23:37
本公开涉及一种分区移动方法,所述方法包括:在接收到的管控节点的分区加载指令时,向源端工作节点发送分区移动指令;在接收到源端工作节点的第一响应信息时,根据第一响应信息对待移动的分区的内存数据及日志数据进行预加载;在预加载的日志数据满足条件时,向源端工作节点发送分区停止指令;在接收到源端工作节点的停止通知信息时,根据第一响应信息进行初始化处理,获得目标分区。根据本公开的实施例的分区移动方法,可通过源端工作节点与目标工作节点的互相通信,使目标工作节点预加载待移动分区的部分内存数据和日志数据,在待移动分区停止服务后,目标工作节点只需加载剩余数据即可获得目标分区,使待移动分区不可服务的时间缩短。时间缩短。时间缩短。

【技术实现步骤摘要】
分区移动方法、装置、设备和存储介质


[0001]本公开涉及计算机
,尤其涉及一种分区移动方法、装置、设备和存储介质。

技术介绍

[0002]在分布式系统中,由于需要进行版本升级、均衡负载等原因,其数据库可能需要执行分区移动操作,即,将分区从分布式系统的源端工作节点移动至目标工作节点。在相关技术中,通常由管控节点向源端工作节点发送卸载分区的指令,并同时向目标工作节点发送加载分区的指令,在源端工作节点卸载分区后,分区即处于不可服务的状态,即,无法针对待移动分区进行请求,例如,请求读写数据等,直到目标工作节点加载成功后,待移动分区才可恢复正常。然而,在目标工作节点加载分区的过程中,加载日志数据等数据所需时间较长,导致分区不可服务的时间较长,造成分区移动的便利性较低。
[0003]公开于本申请
技术介绍
部分的信息仅旨在加深对本申请的一般
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。

技术实现思路

[0004]本公开提出了一种分区移动方法、装置、设备和存储介质。
[0005]根据本公开的一方面,提供了一种分区移动方法,所述方法用于分布式系统的目标工作节点,包括:
[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]在一种可能的实现方式中,所述方法还包括:
[0033]在接收到所述分区停止指令的情况下,释放所述待移动分区的分区锁。
[0034]根据本公开的另一方面,提供了一种分区移动装置,所述装置设置于分布式系统的目标工作节点,包括:
[0035]分区移动指令发送模块,用于在接收到所述分布式系统的管控节点的分区加载指令的情况下,向源端工作节点发送分区移动指令,其中,所述分区移动指令为将所述源端工作节点中的待移动分区移动至所述目标工作节点的指令;
[0036]预加载模块,用于在接收到所述源端工作节点的第一响应信息的情况下,根据所述第一响应信息,对待移动的分区的内存数据及日志数据进行预加载;
[0037]分区停止指令发送模块,用于在预加载的所述日志数据满足预加载条件的情况下,向所述源端工作节点发送分区停止指令,其中,所述分区停止指令使得所述源端工作节点停止所述待移动分区的服务;
[0038]目标分区获得模块,用于在接收到所述源端工作节点的停止通知信息的情况下,根据所述第一响应信息进行初始化处理,获得目标分区。
[0039]在一种可能的实现方式中,所述第一响应信息包括所述待移动分区的元数据;
[0040]所述预加载模块进一步用于:
[0041]根据所述元数据创建所述目标分区;
[0042]根据所述元数据,在所述目标分区中加载所述待移动分区的部分内存数据,所述部分内存数据包括不涉及磁盘读写的内存数据。
[0043]在一种可能的实现方式中,所述第一响应信息包括日志回放信息,所述日志回放信息用于表示对所述日志数据进行回放的起点;
[0044]所述预加载模块进一步用于:
[0045]向所述源端工作节点发送预回放指令;
[0046]在接收到所述源端工作节点发送的所述日志回放信息的情况下,根据所述日志回放信息,加载所述源端工作节点中所述待移动分区的未存储到磁盘的日志数据。
[0047]在一种可能的实现方式中,所述预加载条件包括所述源端工作节点中待移本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分区移动方法,其特征在于,所述方法用于分布式系统的目标工作节点,包括:在接收到所述分布式系统的管控节点的分区加载指令的情况下,向源端工作节点发送分区移动指令,其中,所述分区移动指令为将所述源端工作节点中的待移动分区移动至所述目标工作节点的指令;在接收到所述源端工作节点的第一响应信息的情况下,根据所述第一响应信息,对待移动的分区的内存数据及日志数据进行预加载;在预加载的所述日志数据满足预加载条件的情况下,向所述源端工作节点发送分区停止指令,其中,所述分区停止指令使得所述源端工作节点停止所述待移动分区的服务;在接收到所述源端工作节点的停止通知信息的情况下,根据所述第一响应信息进行初始化处理,获得目标分区。2.根据权利要求1所述的方法,其特征在于,所述第一响应信息包括所述待移动分区的元数据;所述根据所述第一响应信息,对待移动分区的内存数据进行预加载,包括:根据所述元数据创建所述目标分区;根据所述元数据,在所述目标分区中加载所述待移动分区的部分内存数据,所述部分内存数据包括不涉及磁盘读写的内存数据。3.根据权利要求1所述的方法,其特征在于,所述第一响应信息包括日志回放信息,所述日志回放信息用于表示对所述日志数据进行回放的起点;根据所述第一响应信息,对待移动的分区的日志数据进行预加载,包括:向所述源端工作节点发送预回放指令;在接收到所述源端工作节点发送的所述日志回放信息的情况下,根据所述日志回放信息,加载所述源端工作节点中所述待移动分区的未存储到磁盘的日志数据。4.根据权利要求1所述的方法,其特征在于,所述预加载条件包括所述源端工作节点中待移动分区的所有日志数据加载完毕,或者未加载的日志数据的数量小于或等于预设阈值。5.根据权利要求1所述的方法,其特征在于,所述分区停止指令还用于使得所述源端工作节点释放所述待移动分区的分区锁,所述方法还包括:在接收到所述源端工作...

【专利技术属性】
技术研发人员:丁禹衡郑翊
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

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

1