本公开涉及数据库,尤其涉及一种内存数据库的数据持久化方法、装置以及存储介质。
背景技术:
1、内存数据库由于速度快,响应快,使用简单,广泛用于各种场景,比如金融行业、传统互联网行业、游戏行业等。内存数据库大多数场景用来缓存数据,部分场景用来存储数据,由于内存数据库的自身特性,为了提高资源利用率,多数公司都会采用单机多实例的方式部署,并且用于内存数据库部署的服务器磁盘性能都不是特别好。为了保障存储数据的内存数据库数据安全,我们需要开启数据持久化功能,将数据持续的持久化到磁盘当中,还需要定时全量持久化内存中的数据,保证服务重启后能快速提供服务。
2、现有技术中,内存数据库集群的每个节点单独配置自己全量持久化策略,如果一台服务器上的多个内存数据库实例都在同一时间内全量持久化数据,则很容易导致服务器磁盘性能达到瓶颈,影响内存数据库的性能。
技术实现思路
1、本申请提出了一种内存数据库的数据持久化方法、装置以及存储介质,旨在至少在一定程度上解决相关技术中的技术问题之一。
2、本申请第一方面实施例提出了一种内存数据库的数据持久化方法,包括:根据预设持久化策略确定待持久化的目标内存数据库,其中,持久化策略用于记录多个内存数据库可执行持久化的时间信息;判断目标内存数据库是否满足持久化要求;以及如果目标内存数据库满足持久化要求,则对目标内存数据库进行数据持久化。
3、本申请第二方面实施例提出了一种内存数据库的数据持久化装置,包括:确定模块,用于根据预设持久化策略确定待持久化的目标内存数据库,其中,持久化策略用于记录多个内存数据库可执行持久化的时间信息;判断模块,用于判断目标内存数据库是否满足持久化要求;以及持久化模块,用于在目标内存数据库满足持久化要求时,对目标内存数据库进行数据持久化。
4、本申请第三方面实施例提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请实施例的内存数据库的数据持久化方法。
5、本申请第四方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请实施例公开的内存数据库的数据持久化方法。
6、本实施例中,通过根据预设持久化策略确定待持久化的目标内存数据库,其中,持久化策略用于记录多个内存数据库可执行持久化的时间信息;判断目标内存数据库是否满足持久化要求;以及如果目标内存数据库满足持久化要求,则对目标内存数据库进行数据持久化。因此,可以根据时间信息对多个内存数据库进行数据持久化,避免了对全部内存数据库同时进行数据持久化而降低内存数据库性能的问题,达到了在进行数据持久化的过程中兼顾内存数据库性能的技术效果。进而解决了相关技术中同时进行数据持久化容易导致服务器磁盘性能达到瓶颈,影响内存数据库的性能的技术问题。
7、本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
1.一种内存数据库的数据持久化方法,其特征在于,由持久化控制器执行,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述判断所述目标内存数据库是否满足持久化要求,包括:
3.如权利要求1-2任意一项所述的方法,其特征在于,所述判断所述目标内存数据库是否满足持久化要求,包括:
4.如权利要求3所述的方法,其特征在于,所述服务器运行有所述目标内存数据库的多个目标内存数据库实例,所述对所述目标内存数据库进行数据持久化,包括:
5.如权利要求1所述的方法,其特征在于,对所述目标内存数据库进行数据持久化,包括:
6.如权利要求1所述的方法,其特征在于,根据预设持久化策略确定待持久化的目标内存数据库之前,还包括:
7.一种内存数据库的数据持久化装置,其特征在于,包括:
8.如权利要求7所述的装置,其特征在于,所述判断模块,包括:第一判断子模块,用于判断所述目标内存数据库是否与副本内存数据库对应。
9.如权利要求7-8任意一项所述的装置,其特征在于,所述判断模块,包括:
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-6中任一项所述的方法。