预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共29页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN110532225A(43)申请公布日2019.12.03(21)申请号201910828325.1(22)申请日2019.09.03(71)申请人北京百度网讯科技有限公司地址100085北京市海淀区上地十街10号百度大厦2层(72)发明人李勇李理田勇(74)专利代理机构北京品源专利代理有限公司11332代理人孟金喆(51)Int.Cl.G06F16/11(2019.01)G06F3/06(2006.01)权利要求书6页说明书16页附图6页(54)发明名称存储引擎切换方法、装置、电子设备和介质(57)摘要本申请公开了一种存储引擎切换方法、装置、电子设备和介质,涉及数据存储技术领域。具体实现方案为:响应存储引擎切换请求,获取目标存储引擎类型;基于目标存储引擎类型创建第一空引擎,并将所述第一空引擎的状态设置为激活状态,其中,处于激活状态的所述第一空引擎用于接收实时的新数据,并对外提供服务;将数据从当前旧引擎迁移到所述第一空引擎,并在迁移过程中保留所述数据的最新值。本申请不仅实现引擎间自动切换,而且在切换过程中通过创建空引擎并激活,让激活的空引擎接收实时的新数据,然后在数据从旧引擎向空引擎的迁移过程中保留数据最新值,不仅不影响实时新数据的存储,对上层无感知,而且还保证迁移过程中数据的稳定性和一致性。CN110532225ACN110532225A权利要求书1/6页1.一种存储引擎切换方法,其特征在于,包括:响应存储引擎切换请求,获取目标存储引擎类型;基于所述目标存储引擎类型创建空引擎,并将所述空引擎的状态设置为激活状态,其中,处于激活状态的所述空引擎用于接收实时的新数据,并对外提供服务;将数据从当前旧引擎迁移到所述空引擎,并在迁移过程中保留所述数据的最新值。2.根据权利要求1所述的方法,其特征在于,在所述将数据从当前旧引擎迁移到所述空引擎的执行过程中,所述方法还包括:响应对任一目标数据的读操作,在所述空引擎中查询是否存在所述目标数据的key;如果存在,则从所述空引擎中读取所述目标数据的值;如果不存在,则在所述当前旧引擎中查询是否存在所述目标数据的key,如果在所述当前旧引擎中存在,则从所述当前旧引擎中读取所述目标数据的值。3.根据权利要求1所述的方法,其特征在于,在所述将数据从当前旧引擎迁移到所述空引擎的执行过程中,所述方法还包括:响应对任一目标数据的删除操作,在所述当前旧引擎中查询是否存在所述目标数据的key;如果存在,则在所述当前旧引擎中删除所述目标数据的值;如果不存在,则在所述空引擎中查询是否存在所述目标数据的key,如果在所述空引擎中存在,则在所述空引擎中删除所述目标数据的值。4.根据权利要求1所述的方法,其特征在于,如果所述存储引擎切换请求是基于对增量数据的存储需求而生成,则在所述创建空引擎之前,所述方法还包括:依据所述目标存储引擎类型创建第一增量引擎,将所述第一增量引擎的状态设置为预加载,其中,所述第一增量引擎的预加载表示正在将所述增量数据迁移到所述第一增量引擎,并且在预加载阶段所述第一增量引擎不对外提供服务;如果预加载成功,则将所述第一增量引擎的状态设置为已加载;相应的,所述将所述空引擎的状态设置为激活状态之后,所述方法还包括:将状态为已加载的所述第一增量引擎的状态设置为激活状态,激活后所述第一增量引擎对外提供服务;相应的,所述将数据从当前旧引擎迁移到所述空引擎,包括:将所述第一增量引擎的数据迁移到所述空引擎,并在迁移完毕后,将所述当前旧引擎的数据迁移到所述空引擎。5.根据权利要求1所述的方法,其特征在于,如果所述存储引擎切换请求是基于对冷备数据的恢复需求而生成,则在所述创建空引擎之前,所述方法还包括:依据所述目标存储引擎类型创建第二增量引擎,将所述第二增量引擎的状态设置为预加载,其中,所述第二增量引擎的预加载表示正在将所述冷备数据迁移到所述第二增量引擎,并且在预加载阶段所述第二增量引擎不对外提供服务;相应的,在将所述空引擎的状态设置为激活状态之后,所述方法还包括:如果所述第二增量引擎预加载成功,则将所述第二增量引擎的状态设置为激活状态,激活后所述第二增量引擎对外提供服务;相应的,所述将数据从当前旧引擎迁移到所述空引擎,包括:2CN110532225A权利要求书2/6页将所述第二增量引擎的数据迁移到所述空引擎,并在迁移完毕后,将所述当前旧引擎的数据迁移到所述空引擎。6.根据权利要求4或5所述的方法,其特征在于,在所述第一/第二增量引擎与空引擎,以及当前旧引擎与空引擎之间进行数据迁移的过程中,所述方法还包括:响应对任一目标数据的读操作,按照从空引擎到第一/第二增量引擎到当前旧引擎的顺序,查询是否存在所述目标数据的key,并从查询到存在该key的