内存数据库远程容灾的方法、装置和系统制造方法及图纸

技术编号:2833940 阅读:325 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种内存数据库远程容灾的方法,该方法包括:接收主内存数据库执行业务操作后生成的逻辑日志并备份;执行所述逻辑日志,更新容灾内存数据库中的数据,将容灾内存数据库中的数据备份;主内存数据库故障时,如果容灾数据库正常,使用容灾内存数据库,如果容灾数据库故障,使用备份的数据和逻辑日志恢复容灾内存数据库,再使用容灾数据库。本发明专利技术还公开了一种内存数据库远程容灾的异地侧装置、一种内存数据库远程容灾的本地侧装置和一种内存数据库远程容灾的系统。应用本发明专利技术,能够以内存作为数据存储主体,实现内存数据库的远程容灾。

【技术实现步骤摘要】

本专利技术涉及内存数据库技术,特别涉及内存数据库远程容灾的方法、装 置和系统。
技术介绍
数据库容灾建立在数据库基础上,通过逻辑的方式建立一个和主数据库 相同的容灾数据库并实时更新,用于主数据库发生灾难时,及时接管业务系 统,保证业务的持续性。灾难的原因是多方面的,可以由数据库所在的计算机系统的因素导致, 例如存储介质的损坏,或者由非计算机系统的因素导致,例如自然灾害。采 用远程容灾,将地理位置划分为本地和异地,在本地建立主数据库,而在异 地建立容灾数据库,相当于在地理上将主数据库和容灾数据库分离,已经成 为保证业务持续性的一种重要手段。目前应用广泛的物理数据库远程容灾,主要通过数据库产品自带的复制 工具或第三方工具实现,这些工具通过将本地主数据库中记录业务操作的日 志文件传输到异地容灾数据库,并在异地容灾数据库中执行日志文件,实时 更新异地容灾数据库中的数据,以实现异地容灾数据库与本地数据库的数据 同步,从而在本地数据库出现灾难时,异地容灾数据库能够及时接管业务系 统。随着运营商运营水平的不断提高,对数据库操作的实时性也提出了更高 的要求,物理数据库的数据存储主体为磁盘,而磁盘中的数据存取必须涉及到输入/输出(1/0)接口,因此物理数据库在操作执行方面存在延迟,成为物理数据库在实时性方面的性能瓶颈,也同样影响物理数据库远程容灾时,主数据库和容灾数据库的数据同步效果。基于上述问题,内存数据库应运而 生,希望业务系统对数据库的操作只针对内存,由于内存的数据存取无需涉 及I/0接口,因此在实时性方面具备很大的优势。现有内存数据库的应用多 是以内存作为快速查询的緩存,从而在数据存取方面满足实时性的要求,而 数据存储的主体依然为磁盘,因此目前针对内存数据库提出的远程容灾方 案,也是基于物理数据库实现的。随着应用需求和性能要求的提高,内存数据库的数据存储主体将由磁盘 逐渐转换为内存本身,但是,由于内存的数据易失性,如果内存数据库所在 的系统出现故障,内存中的数据将会全部丢失无法恢复,因此以内存作为数 据存储主体的内存数据库的远程容灾能力显得尤为重要。目前还未出现以内存作为数据存储主体的内存数据库远程容灾方案。
技术实现思路
本专利技术实施例提供一种内存数据库的远程容灾方法,该方法能够以内存 作为数据存储主体,实现内存数据库的远程容灾。本专利技术实施例提供一种内存数据库的远程容灾异地侧装置,该装置能够 以内存作为数据存储主体,实现内存数据库的远程容灾。本专利技术实施例提供一种内存数据库的远程容灾本地侧装置,该装置能够 以内存作为数据存储主体,实现内存数据库的远程容灾。本专利技术实施例提供一种内存数据库的远程容灾系统,该系统能够以内存 作为数据存储主体,实现内存数据库的远程容灾。本专利技术实施例提供一种内存数据库的远程容灾方法,在本地建立主内存数据库,在异地建立容灾内存数据库,该方法还包括接收主内存数据库执行业务操作后生成的逻辑日志并备除; 执行所述逻辑日志,更新容灾内存数据库中的数据,将容灾内存数据库中的数据备份;主内存数据库故障时,如果容灾数据库正常,使用容灾内存数据库,如果容灾数据库故障,使用备份的数据和逻辑日志恢复容灾内存数据库,再使 用容灾数据库。本专利技术实施例提供一种内存数据库的远程容灾异地侧装置,该装置包括 逻辑日志处理模块,用于接收来自本地侧装置的逻辑日志并备份;执行接 收的逻辑日志,更新容灾内存数据库模块中的数据; 容灾内存数据库模块,用于存储数据;磁盘镜像模块,用于将所述容灾内存数据库模块中的数据备份;在所述 容灾内存数据库模块出现故障时,使用所述备份的数据和逻辑日志恢复所述 容灾内存数据库模块中的数据。本专利技术实施例提供一种内存数据库远程容灾本地侧装置,该装置包括主内存数据库模块,用于存储数据;逻辑日志生成模块,用于生成针对所述主内存数据库模块的业务操作的逻 辑曰志;逻辑日志处理模块,用于从所述逻辑日志生成模块中读取逻辑日志,将 逻辑日志发送到异地侧装置。本专利技术实施例提供一种内存数据库远程容灾的系统,该系统包括本地侧 装置和异地侧装置;所述本地侧装置中包括存储数据的主内存数据库,异地侧 装置中包括存储数据的容灾内存数据库;所述本地侧装置,用于生成针对所述主内存数据库的业务操作的逻辑日志, 将所述逻辑日志发送到异地侧装置;所述异地侧装置,用于接收来自所述本地側装置的逻辑日志并备份;执行 接收的逻辑日志,更新所述容灾内存数据库中的数据,将所述容灾内存数据库 中的数据备份;在所述容灾内存数据库出现故障时,使用所述备份的数据和逻 辑日志恢复所述容灾内存数据库中的数据。可见,本专利技术实施例内存数据库远程容灾的方法、装置和系统,使用逻 辑日志同步主内存数据库和容灾内存数据库中的数据,在主内存数据库出现 故障时,使用容灾内存数据库及时接管业务系统;又由于数据存储的主体为内存,具有数据易失性的特点,将来自主内存数据库的逻辑日志和容灾内存 数据库中的数据再进行备份,在容灾内存数据库出现故障时,使用备份的数 据和逻辑日志恢复容灾内存数据库,再使用容突内存数据库及时接管业务系统。附图说明图1为本专利技术实施例内存数据库远程容灾的异地侧装置结构示意图; 图2为本专利技术实施例内存数据库远程容灾的本地侧装置结构示意图; 图3为本专利技术实施例内存数据库远程容灾的方法流程图; 图4为本专利技术实施例内存数据库远程容灾的方法中的日志同步流程图; 图5为本专利技术实施例内存数据库远程容灾的方法中的日志接收流程图; 图6为本专利技术实施例内存数据库远程容灾的方法中的磁盘镜像流程图; 图7为本专利技术实施例内存数据库远程容灾的方法中的恢复流程图。具体实施方式为使本专利技术实施例的目的和优点更清楚,下面结合附图对本专利技术实施例 作进一步的详细说明。首先,介绍本专利技术实施例内存数据库远程容灾的装置,包括本地侧装置 和异地側装置。图1为本专利技术实施例内存数据库远程容灾的异地侧装置结构示意图,该 异地侧装置包括逻辑日志处理模块,用于接收来自本地侧装置的逻辑日志并备份;执行接 收的逻辑日志,更新容灾内存数据库模块中的数据。 容灾内存数据库模块,用于存储数据。磁盘镜像模块,用于将所述容突内存数据库模块中的数据备份;在所述 容灾内存数据块出现故障时,使用所述备份的数据和逻辑日志恢复所述容灾 内存数据库模块中的数据。本专利技术实施例提供的内存数据库远程容灾的异地侧装置,接收本地侧装 置发送的逻辑日志,将逻辑日志备份并执行逻辑日志,从而更新容灾内存数据库中的数据;又由于数据存储的主体为内存,将容灾内存数据库中的数据也进行备份,在主内存数据库出现故障时,使用容灾内存数据库及时接管业 务系统,处理业务请求,在容灾内存数据库出现故障时,使用备份的数据和 逻辑日志恢复容灾内存数据库,再使用容灾内存数据库及时接管业务系统, 处理业务请求,从而保证了以内存数据库为数据主体的远程容突能力。上述本专利技术实施例提供的内存数据库远程容灾的异地侧装置,在装置内 部可以包括镜像^磁盘,或者该装置可以直连有位于装置外部的镜像磁盘,镜 像磁盘的作用为存储所述备份的逻辑日志和容灾内存数据库中的数据,图1 示出的是异地侧装置直连有镜像磁盘的情况。基于这种情况,该异地侧装置 中还可以进一步包括心跳消息处理模块,用于接收来自本地侧装置的心跳消本文档来自技高网
...

【技术保护点】
一种内存数据库的远程容灾方法,其特征在于,在本地建立主内存数据库,在异地建立容灾内存数据库,该方法还包括:接收主内存数据库执行业务操作后生成的逻辑日志并备份;执行所述逻辑日志,更新容灾内存数据库中的数据,将容灾内存数据库中的 数据备份;主内存数据库故障时,如果容灾数据库正常,使用容灾内存数据库,如果容灾数据库故障,使用备份的数据和逻辑日志恢复容灾内存数据库,再使用容灾数据库。

【技术特征摘要】
1、一种内存数据库的远程容灾方法,其特征在于,在本地建立主内存数据库,在异地建立容灾内存数据库,该方法还包括接收主内存数据库执行业务操作后生成的逻辑日志并备份;执行所述逻辑日志,更新容灾内存数据库中的数据,将容灾内存数据库中的数据备份;主内存数据库故障时,如果容灾数据库正常,使用容灾内存数据库,如果容灾数据库故障,使用备份的数据和逻辑日志恢复容灾内存数据库,再使用容灾数据库。2、 如权利要求l所述的方法,其特征在于,在异地设置镜^^兹盘;所述将 逻辑日志备份为将所述逻辑日志存储到所述镜像磁盘;所述将容灾内存数据 库中的数据备份为将容突内存数据库中的数据存储到所述镜^^兹盘。3、 如权利要求1或2所述的方法,其特征在于,在本地建立緩存区和逻辑 曰志緩存磁盘;所述接收主内存数据库逻辑日志为在本地和异地间的通信正常时,接收来自所述本地緩存区的逻辑日志;在 通信故障时,等待通信恢复后,接收来自所述本地逻辑日志緩存^兹盘和緩存区 的逻辑日志,所述逻辑日志緩存-兹盘中的逻辑日志包括,本地和异地通信不正 常时存储的逻辑日志,以及本地和异地通信恢复但逻辑日志緩存磁盘中的逻辑 曰志没有全部被接收之前,新存储的逻辑日志。4、 如权利要求2所述的方法,其特征在于,所述将逻辑日志存储到镜^^兹 盘之后、执行逻辑日志之前进一步包括向本地返回逻辑日志正确接收的确认消息,所述确认消息中包括已经正确 接收的逻辑日志的标识,供本地删除所述标识对应的逻辑日志。5、 如权利要求2所述的方法,其特征在于,所述将逻辑日志存储到镜像磁 盘之前进一步包括判断当前是否正在进行将容灾数据库中的数据存储到镜像 磁盘;所述将逻辑日志存储到镜像^兹盘为 如果当前正在进行将容灾数据库中的数据存储到镜像^磁盘,将逻辑日志存 储到镜像磁盘中当前磁盘镜像进行中的逻辑日志文件,否则,将逻辑日志存储 到镇/f^磁盘中当前正常通信时的逻辑日志文件。6、 如权利要求5所述的方法,其特征在于,所述将容灾内存数据库中的数 据存储到镜^^兹盘为将容灾内存数据库中的数据定期备份为镜像文件,并将 镜像文件写入镜像磁盘。7、 如权利要求6所述的方法,其特征在于,所述将镜像文件写入镜像^兹盘 之后进一步包括如果写入成功,将镜傳J兹盘中当前正常通信时的逻辑日志文件,以及镜像 磁盘中已存储的镜像文件删除,将所述当前磁盘镜像进行中的逻辑日志文件更 改为下一次写入逻辑日志时的正常通信时的逻辑日志文件,并新建下一次写入 逻辑日志时的磁盘镜像进行中的逻辑日志文件;如果写入失败,将已存储的镜 像文件作为当前镜像文件。8、 如权利要求l所述的方法,其特征在于,在异地建立緩存区,所述接收 逻辑日志并备份之后,执行逻辑日志之前进一步包括将逻辑日志存储到所述 缓存区。9、 如权利要求2所述的方法,其特征在于,所述使用备份的数据和逻辑曰 志恢复容灾内存凄t据库为将镜像》兹盘中的数据恢复到容灾内存数据库中; 使用所述恢复的数据重建索引;使用镜^^兹盘中的逻辑日志更新恢复后的容灾内存数据库中的数据。10、 一种内存数据库的远程容灾异地侧装置,其特征在于,该装置包括 逻辑日志处理模块,用于接收来自本地侧装置的逻辑日志并备份;执行接收的逻辑日志,更新容突内存数椐库模块中的数据; 容灾内存数据库模块,用于存储数据;磁盘镜像模块,用于将所述容灾内存数据库模块中的数据备份;在所述容 灾内存数据库模块出现故障时,使用所述备份的数据和逻辑日志恢复所述容灾 内存数据库模块中的数据。11、 如权利要求IO所述的装置,其特征在于,...

【专利技术属性】
技术研发人员:周丹弟
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

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

1