文件型数据库升级优化的方法、系统、设备和存储介质技术方案

技术编号:36935974 阅读:12 留言:0更新日期:2023-03-22 18:57
本发明专利技术涉及分布式存储系统领域。本发明专利技术提供一种文件型数据库升级优化的方法、系统、设备和存储介质,方法包括:通过主控制器将节点控制器下发至各节点并进行安装和启动,并采用心跳方式监控节点控制器的状态;根据分布式存储系统的并发升级策略制定数据库升级策略;以及根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级。本发明专利技术实现了文件型数据库的在线升级,保证在数据库升级期间仍可以对外提供正常的读写服务;并实现了同时支持新老数据结构的读写服务即在整个分布式存储系统升级期间,无论数据库操作接口是否完成了升级都可以对数据库进行正常的读写操作。常的读写操作。常的读写操作。

【技术实现步骤摘要】
文件型数据库升级优化的方法、系统、设备和存储介质


[0001]本专利技术涉及分布式文件系统领域,更具体地,特别是指一种文件型数据库升级优化的方法、系统、设备和存储介质。

技术介绍

[0002]轻量级文件型数据库具有轻便、操作简单、并发读特性好、存储简单高效等优点,文件型数据库实现了零配置访问即无需进行任何系统配置就可以直接访问数据库获取数据信息,因此分布式存储系统常采用此类数据库来存储告警、缓存以及临时信息。文件型数据库缺点也非常明显:由于文件型数据库并发访问的锁机制问题导致它的并发读写的性能并不理想,数据库可能会被写操作独占,从而导致其它读写操作阻塞。并且在执行并发写时甚至有可能会导致数据库死锁;其次该类文件型数据库对于SQL标准支持也不完整,尤其是缺少对于数据库表字段的修改操作。由于缺少标准的数据库表字段修改命令,因此在升级该类数据库时只能采用先创建新表然后在将历史数据重新导入的方式来实现表字段的更新。基于以上原因为了保证文件型数据库的升级效率以及数据库安全(升级数据库的写操作与正常数据的写操作为并发写有可能会造成数据库的死锁),通常采用离线的方式对文件型数据库进行升级即在数据库升级期间需要停止外界对数据库的读写访问。

技术实现思路

[0003]有鉴于此,本专利技术实施例的目的在于提出一种文件型数据库升级优化的方法、系统、计算机设备及计算机可读存储介质,本专利技术实现了文件型数据库的在线升级,保证在数据库升级期间仍可以对外提供正常的读写服务;实现了同时支持新老数据结构的读写服务即在整个分布式存储系统升级期间,无论数据库操作接口是否完成了升级都可以对数据库进行正常的读写操作。
[0004]基于上述目的,本专利技术实施例的一方面提供了一种文件型数据库升级优化的方法,包括如下步骤:通过主控制器将节点控制器下发至各节点并进行安装和启动,并采用心跳方式监控节点控制器的状态;根据分布式存储系统的并发升级策略制定数据库升级策略;以及根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级。
[0005]在一些实施方式中,方法还包括:通过主控制器根据不同的升级阶段触发不同的回滚策略。
[0006]在一些实施方式中,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于数据库升级阶段发生异常,直接使用临时数据库替换源库内容并阻塞节点存储系统升级。
[0007]在一些实施方式中,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于节点分布式存储系统升级节点发生异常,触发降级,将数据库表结构回滚至升级前并保留升级期间新写入的数据。
[0008]在一些实施方式中,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于集群分布式存储系统升级失败,触发强制回滚,主控制器将所有节点数据库全部强制回滚至升级前状态。
[0009]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:在数据库设置升级标记,并通过所述升级标记触发数据库操作接口进行重定向以将数据库操作命令全部重定向到节点控制器的重定向接口进行处理。
[0010]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:将数据库升级期间,通过重定向下发的写入数据全部写入数据缓存器。
[0011]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:将文件型数据库进行复制生成临时数据库,在数据库升级期间将所述临时数据库作为主库对外提供数据查询服务。
[0012]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:对源库中有数据结构变动的表进行相应的调整,并将数据缓存器内的数据按照新的数据结构下刷至源库。
[0013]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:对源库本身以及结构发生变化的表进行读写测试,若测试异常则直接使用临时数据库进行回滚。
[0014]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:响应于源库升级完成后,通过节点控制器直接对源库进行读写。
[0015]在一些实施方式中,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:响应于文件型数据库升级完成,通过节点控制器取消升级标记,将数据库操作接口恢复正常操作流程。
[0016]在一些实施方式中,方法还包括:通过节点控制器同时记录新库与旧库的表结构数据信息,基于新库与旧库的表结构信息将信息转化为符合重定向接口要求的数据信息进行响应。
[0017]在一些实施方式中,方法还包括:通过节点控制器的重定向接口根据数据库升级状态进行临时数据库与源库的自动切换。
[0018]在一些实施方式中,方法还包括:通过节点控制器的重定向接口接收外部写入的数据并将数据保存至数据缓存器,并通过重定向接口将数据库缓存器内数据和临时数据库数据进行拼装来响应外部的读操作。
[0019]在一些实施方式中,方法还包括:通过节点控制器的数据缓存器缓存新增数据并将缓存数据按照源库结构进行序列化。
[0020]在一些实施方式中,方法还包括:通过节点控制器的升级控制器对源库的数据结构进行升级和数据更新。
[0021]本专利技术实施例的另一方面,提供了一种文件型数据库升级优化的系统,包括:监控模块,配置用于通过主控制器将节点控制器下发至各节点并进行安装和启动,并采用心跳
方式监控节点控制器的状态;策略模块,配置用于根据分布式存储系统的并发升级策略制定数据库升级策略;以及执行模块,配置用于根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级。
[0022]本专利技术实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现如上方法的步骤。
[0023]本专利技术实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
[0024]本专利技术具有以下有益技术效果:1、可以实现分布式存储系统文件型数据库的在线升级即在分布式存储系统升级过程中不影响数据库的读写操作;2、可根据不同升级阶段采取不同的数据库回滚策略,进而减少数据库或升级失败对业务的影响;3、实现了数据库新老结构数据的相互转换,实现按需自动切换新老结构数据并对外进行响应,保证数据库在升级期间无论是新老接口查询或写入都可以正常执行;4、通过重定向接口实现了在分布式存储系统升级期间对外数据的正常读写。数据转换器和重定向接口相互配合可以实现数据查询的无缝衔接即重定向接口可以根据外部接口升级状态来自动切换新老数据结构并进行响应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件型数据库升级优化的方法,其特征在于,包括如下步骤:通过主控制器将节点控制器下发至各节点并进行安装和启动,并采用心跳方式监控节点控制器的状态;根据分布式存储系统的并发升级策略制定数据库升级策略;以及根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级。2.根据权利要求1所述的方法,其特征在于,方法还包括:通过主控制器根据不同的升级阶段触发不同的回滚策略。3.根据权利要求2所述的方法,其特征在于,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于数据库升级阶段发生异常,直接使用临时数据库替换源库内容并阻塞节点存储系统升级。4.根据权利要求2所述的方法,其特征在于,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于节点分布式存储系统升级节点发生异常,触发降级,将数据库表结构回滚至升级前并保留升级期间新写入的数据。5.根据权利要求2所述的方法,其特征在于,所述通过主控制器根据不同的升级阶段触发不同的回滚策略包括:响应于集群分布式存储系统升级失败,触发强制回滚,主控制器将所有节点数据库全部强制回滚至升级前状态。6.根据权利要求1所述的方法,其特征在于,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:在数据库设置升级标记,并通过所述升级标记触发数据库操作接口进行重定向以将数据库操作命令全部重定向到节点控制器的重定向接口进行处理。7.根据权利要求6所述的方法,其特征在于,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:将数据库升级期间,通过重定向下发的写入数据全部写入数据缓存器。8.根据权利要求7所述的方法,其特征在于,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:将文件型数据库进行复制生成临时数据库,在数据库升级期间将所述临时数据库作为主库对外提供数据查询服务。9.根据权利要求8所述的方法,其特征在于,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:对源库中有数据结构变动的表进行相应的调整,并将数据缓存器内的数据按照新的数据结构下刷至源库。10.根据权利要求9所述的方法,其特征在于,所述根据所述数据库升级策略通过所述节点控制器对每个节点的文件型数据库进行在线升级包括:对源库本身以...

【专利技术属性】
技术研发人员:韩宾
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1