【技术实现步骤摘要】
分布式数据库表结构灰度升级方法、装置及系统
本专利技术涉及数据库升级
,尤其涉及一种分布式数据库表结构灰度升级方法、装置及系统。
技术介绍
随着分布式数据库的大规模推广使用,在对数据库的表结构进行变更升级时,需要保障业务运行的连续性、降低数据库的停机变更时间以减少业务影响。现有的数据库表结构变更升级时,不同的应用需要结合自身的实际业务场景,由应用研发人员制定仅适用于本应用的表结构变更方案。例如,传统的MySQL数据库表结构升级方法是把同步的MySQL主库和备库的一个备库分离出来,对该备库进行表结构升级、重新搭建主从同步的高可用架构,然后停止主库的业务,通过移行程序从主库迁移增量数据到备库中,最后把业务切换到备库,由该备库作为新的主库对外提供数据库服务。这种数据库表结构升级存在以下几个问题:一是分布式数据库节点太多,业务停机时间过长,需要分钟级甚至小时级的停机时间;二是需要开发人员编写增量的数据移行程序;三是备库要重新搭建高可用架构;四是操作步骤多而复杂,中途出现问题会增加停机时间,停机时长不可控;五是升级方案只适用于本应用的本次升级,不具备通用性。
技术实现思路
为了解决以上问题的至少之一,本专利技术的一个目的在于提供一种分布式数据库表结构灰度升级方法,实现数据库表结构的快速升级,减少数据库表结构升级的停机时间。本专利技术的另一个目的在于提供一种分布式数据库表结构灰度升级装置。本专利技术的再一个目的在于提供一种分布式数据库表结构灰度升级系统。本专利技术的还一个目的在于提供一种计算机设备。本专 ...
【技术保护点】
1.一种分布式数据库表结构灰度升级方法,其特征在于,包括:/n根据表结构变更指令确定待升级的所有目标数据库、源表以及灰度升级优先级;/n在灰度升级优先级最高的所述目标数据库中建立表结构变更后的临时表,通过数据迁移方式将待升级源表的表数据迁移至所述临时表并将所述临时表替换为所述源表,目标数据库表结构变更完成;/n当灰度升级优先级最高的目标数据库表结构变更完成后,向应用服务器反馈升级成功信息。/n
【技术特征摘要】
1.一种分布式数据库表结构灰度升级方法,其特征在于,包括:
根据表结构变更指令确定待升级的所有目标数据库、源表以及灰度升级优先级;
在灰度升级优先级最高的所述目标数据库中建立表结构变更后的临时表,通过数据迁移方式将待升级源表的表数据迁移至所述临时表并将所述临时表替换为所述源表,目标数据库表结构变更完成;
当灰度升级优先级最高的目标数据库表结构变更完成后,向应用服务器反馈升级成功信息。
2.根据权利要求1所述的分布式数据库表结构灰度升级方法,其特征在于,进一步包括:
基于预设条件在未进行表结构变更的目标数据库中建立表结构升级后的临时表,通过数据迁移方式将待升级源表的表数据迁移至所述临时表并将所述临时表替换为所述源表,未进行表结构变更的目标数据库表结构升级完成。
3.根据权利要求1所述的分布式数据库表结构灰度升级方法,其特征在于,所述根据所述表结构变更指令确定待升级的所有目标数据库及源表具体包括:
根据表结构变更指令确定所述目标数据库的数据库信息和源表信息;
根据所述数据库信息确定所述数据库的IP地址,并根据所述源表信息获取所述数据库中源表的表数据。
4.根据权利要求1所述的分布式数据库表结构灰度升级方法,其特征在于,所述在灰度升级优先级最高的所述目标数据库中建立表结构变更后的临时表具体包括:
根据所述表结构变更指令确定表结构变更后的目标表结构;
根据所述目标表结构建立一个空表作为所述临时表。
5.根据权利要求1所述的分布式数据库表结构灰度升级方法,其特征在于,所述通过数据迁移方式将源表数据迁移至所述临时表并将所述临时表替换为所述源表具体包括:
根据所述表结构变更指令确定数据迁移规则;
根据所述数据迁移规则将所述待升级源表中的数据迁移至所述临时表;
待数据迁移完成后,将所述临时表替换为所述源表。
6.根据权利要求1所述的分布式数据库表结构灰度升级方法,其特征在于,所述根据所述数据迁移规则将所述待升级源表中的数据迁移至所述临时表具体包括:
根据所述数据迁移规则确定所述临时表相对于所述待升级源表的新增字段的赋值规则、所述待升级源表的表数据处理规则以及需要迁移的字段;
将所述源表中需要迁移的字段的表数据根据所述表数据处理规则得到变更后数据;
将所述变更后数据迁移至所述临时表对应的位置并为所述临时表中所述新增字段赋值。
7.根据权利...
【专利技术属性】
技术研发人员:杨诗平,李奇伟,唐阳光,黄景超,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。