数据库备份性能的控制方法、系统及具有该系统的服务器技术方案

技术编号:14487774 阅读:190 留言:0更新日期:2017-01-28 19:43
本发明专利技术提供一种数据库备份性能的控制方法、系统及具有该系统的服务器,数据库备份性能的控制方法包括:根据生成函数生成的备份片数据的名称,创建一个该备份片数据的名称相同的数据对象;创建用于存储备份片数据的内存块,并将内存块的内存地址返回至获取函数;调用获取函数,从获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;将内存块的内存地址上的数据块发送至一介质池。本发明专利技术所述的数据库备份性能的控制方法、系统及具有该系统的服务器解决了MML进程与备份进程间的性能损耗,提升Oracle单通道备份性能,加快了Oracle大数据量备份速度。

【技术实现步骤摘要】

本专利技术属于结构化数据保护
,涉及一种控制方法及系统,特别是涉及一种数据库备份性能的控制方法、系统及具有该系统的服务器
技术介绍
Oracle提供一套介质管理层的接口(MediaManagementLayer(MML)API),让第三方厂商构建自己的介质管理器(MediaManager)。通常的做法是,通过MML从Oracle获取备份数据,然后共享给第三方厂商的备份进程,由备份进程将备份数据发送到介质池中。Oracle服务器的备份速度能达到每秒成百上千兆。也就是说,MML进程与备份进程之间的消息通信的压力很大,每秒要共享大量的数据。进程间的消息通信带来的性能损耗,直接影响到Oracle备份性能。因此,如何提供一种数据库备份性能的控制方法、系统及具有该系统的服务器,以解决现有技术中沟通读取备份数据和发送备份数据,是通过进程间通信的方式,而进程间通讯势必会带来较大的IO负荷,带来性能损耗,进而影响到数据库备份性能等缺陷,实以成为本领域从业者亟待解决的技术问题。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种数据库备份性能的控制方法、系统及具有该系统的服务器,用于解决现有技术中沟通读取备份数据和发送备份数据,是通过进程间通信的方式,而进程间通讯势必会带来较大的IO负荷,带来性能损耗,进而影响到数据库备份性能的问题。为实现上述目的及其他相关目的,本专利技术一方面提供一种数据库备份性能的控制方法,所述数据库在备份过程中,产生一用于控制备份的控制进程,所述控制进程包括用于执行备份以生成备份片数据的生成函数,和/或用于获取所述备份片数据的获取函数;所述数据库备份性能的控制方法包括以下步骤:根据所述生成函数生成的备份片数据的名称,创建一个与该备份片数据的名称相同的数据对象;创建用于存储备份片数据的内存块,并将该内存块的内存地址返回至所述获取函数;调用所述获取函数,从所述获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;将内存块的内存地址上的数据块发送至一介质池。于本专利技术的一实施例中所述控制进程还包括:用于关闭所述数据对象的关闭函数;和/或用于结束备份的结束函数;其中,若继续调用所述生成函数,则表示还存在备份片数据。于本专利技术的一实施例中所述数据库备份性能的控制方法还包括:调用所述关闭函数,以关闭所述数据对象;继续调用所述生成函数,以判断是否还存在备份片数据;若是,则返回执行创建一个与还存在的备份片数据的名称相同的数据对象;若否,调用所述结束函数,以结束备份。于本专利技术的一实施例中所述内存块的内存地址的数据类型为整数数据类型,该整数数据类型定义的标示符为int;根据操作系统的不同,内存块的内存地址的大小为4Byte或8Byte。于本专利技术的一实施例中所述数据库为Oracle数据库,所述控制进程为介质管理层进程,所述介质管理层进程执行所述数据库备份性能的控制方法。于本专利技术的一实施例中所述数据库备份性能的控制方法还包括循环调用所述获取函数,直至获取完所述数据对象中的数据块。本专利技术另一方面提供一种数据库备份性能的控制系统,所述数据库在备份过程中,产生一用于控制备份的控制进程,所述控制进程包括用于执行备份以生成备份片数据的生成函数,和/或用于获取所述备份片数据的获取函数;所述数据库备份性能的控制系统包括:第一创建模块,用于根据所述生成函数生成的备份片数据的名称,创建一个与该备份片数据的名称相同的数据对象;第二创建模块,用于创建用于存储备份片数据的内存块,并将该内存块的地址返回至所述获取函数;处理模块,用于调用所述获取函数,从所述获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;数据发送模块,用于将内存块的内存地址上的数据块发送至一介质池。于本专利技术的一实施例中所述数据库为Oracle数据库,所述控制进程为介质管理层进程,所述介质管理层进程运行所述数据库备份性能的控制系统;所述控制进程还包括:用于关闭所述数据对象的关闭函数;和/或用于结束备份的结束函数;其中,若继续调用所述生成函数,则表示还存在备份片数据。于本专利技术的一实施例中所述数据库备份性能的控制系统还包括:关闭模块,用于调用所述关闭函数,以关闭所述数据对象;判断模块,用于继续调用所述生成函数,判断是否还存在备份片数据;若是,则返回令所述第一创建模块执行创建一个与还存在的备份片数据的名称相同的数据对象;若否,则令用于调用所述结束函数,以结束备份的结束模块。本专利技术又一方面提供一种服务器,包括所述的数据库备份性能的控制系统。如上所述,本专利技术的数据库备份性能的控制方法、系统及具有该系统的服务器,具有以下有益效果:本专利技术所述的数据库备份性能的控制方法、系统及具有该系统的服务器将在备份进程和MML进出间传递4MB的行为,改进成,在单个MML进程内传递4~8Byte的行为,且不需要将备份片数据保存到共享内存或管道中,让另外进程去处理;解决了MML进程与备份进程间的性能损耗,提升Oracle单通道备份性能,加快了Oracle大数据量备份速度。附图说明图1显示为本专利技术的数据库备份性能的控制方法于一实施例中的流程示意图。图2显示为本专利技术的数据库备份性能的控制系统于一实施例中的原理结构示意图。图3显示为本专利技术的服务器于一实施例中的原理结构示意图。元件标号说明1数据库备份性能的控制系统11初始化模块12第一创建模块13第二创建模块14处理模块15数据发送模块16关闭模块17判断模块18结束模块S1~S8步骤具体实施方式以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本专利技术的基本构想,遂图式中仅显示与本专利技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。实施例一本实施例提供一种数据库备份性能的控制方法,所述数据库在备份过程中,产生一用于控制备份的控制进程,所述控制进程包括用于执行备份以生成备份片数据的生成函数,和/或用于获取所述备份片数据的获取函数;所述数据库备份性能的控制方法包括以下步骤:根据所述生成函数生成的备份片数据的名称,创建一个与该备份片数据的名称相同的数据对象;创建一用于存储备份片数据的内存块,并将该内存块的内存地址返回至所述获取函数;调用所述获取函数,从所述获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;将内存块的内存地址上的数据块发送至一介质池。以下将结合图示对本实施例所述的数据库备份性能的控制方法进行详细说明。本实施例所提供的数据库备份性能的控制方法仅通过MML进程处理,无需MML进程与数据发送间的消息传递数据块信息,且传递的也不是数据块,而是传递的数据块地址。换句话说,就是将一个在进程间传递4MB的行为,改为在单进程间传递4~8Byte的行为。节约了大本文档来自技高网...
数据库备份性能的控制方法、系统及具有该系统的服务器

【技术保护点】
一种数据库备份性能的控制方法,其特征在于,所述数据库在备份过程中,产生一用于控制备份的控制进程,所述控制进程包括用于执行备份以生成备份片数据的生成函数,和/或用于获取所述备份片数据的获取函数;所述数据库备份性能的控制方法包括以下步骤:根据所述生成函数生成的备份片数据的名称,创建一个与该备份片数据的名称相同的数据对象;创建用于存储备份片数据的内存块,并将该内存块的内存地址返回至所述获取函数;调用所述获取函数,从所述获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;将内存块的内存地址上的数据块发送至一介质池。

【技术特征摘要】
1.一种数据库备份性能的控制方法,其特征在于,所述数据库在备份过程中,产生一用于控制备份的控制进程,所述控制进程包括用于执行备份以生成备份片数据的生成函数,和/或用于获取所述备份片数据的获取函数;所述数据库备份性能的控制方法包括以下步骤:根据所述生成函数生成的备份片数据的名称,创建一个与该备份片数据的名称相同的数据对象;创建用于存储备份片数据的内存块,并将该内存块的内存地址返回至所述获取函数;调用所述获取函数,从所述获取函数中获取所述数据对象中的数据块,并将其填充至该内存块的内存地址上;将内存块的内存地址上的数据块发送至一介质池。2.根据权利要求1所述的数据库备份性能的控制方法,其特征在于:所述控制进程还包括:用于关闭所述数据对象的关闭函数;和/或用于结束备份的结束函数;其中,若继续调用所述生成函数,则表示还存在备份片数据。3.根据权利要求2所述的数据库备份性能的控制方法,其特征在于:所述数据库备份性能的控制方法还包括:调用所述关闭函数,以关闭所述数据对象;继续调用所述生成函数,以判断是否还存在备份片数据;若是,则返回执行创建一个与还存在的备份片数据的名称相同的数据对象;若否,调用所述结束函数,以结束备份。4.根据权利要求1所述的数据库备份性能的控制方法,其特征在于:所述内存块的内存地址的数据类型为整数数据的指针类型,该整数数据类型定义的标示符为int*;根据操作系统的不同,内存块的内存地址的大小为4Byte或8Byte。5.根据权利要求1所述的数据库备份性能的控制方法,其特征在于:所述数据库为Oracle数据库,所述控制进程为介质管理层进程,所述介质管理层进程执行所述数据库备份性能的控制方法。6.根据权利要求1所述的数据库备份性能...

【专利技术属性】
技术研发人员:陈沐豪
申请(专利权)人:上海爱数信息技术股份有限公司
类型:发明
国别省市:上海;31

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

1