数据容灾方法及容灾服务器技术

技术编号:13864211 阅读:70 留言:0更新日期:2016-10-19 17:04
本发明专利技术公开了一种数据容灾方法及容灾服务器,所述方法应用在容灾服务器;所述方法包括:从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;判断所述原始数据是否为经过压缩的数据;若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;存储所述恢复数据。

【技术实现步骤摘要】

本专利技术涉及信息处理领域,尤其涉及一种数据容灾方法及容灾服务器
技术介绍
随着信息技术的发展,数据库的应用在越来越广泛,具体如在电信、金融、电子商务等行业都形成有自己的数据库或数据中心。为了保证数据遭遇重大灾难时,不至于给电信、金融或电子商务等行业的业务系统的正常运行造成阻碍,数据库或数据中心必须要有一定的容灾能力。在现有技术中,为了提升数据库或数据中心的容灾能力,通常会采用以下方法进行数据容灾:第一种:实现一对一的镜像容灾备份;采用同类型的容灾备份数据库或主机进行容灾备份。这种方法的能够有很好的容灾能力,在一台主机或一个数据库出现异常时,可以通过立即启动另一个台主机或数据库;但是这种方式,硬件和维护成本高、且在后续数据管理、扩容等各方面都会有诸多的限制。第二种:基于归档日志或重做日志等信息的容灾备份方式,这种备份方式很好的解决了硬件和维护成本高的问题,但是可能存在的问题是若数据库中的数据存储有备份数据,则需要后续在维护工作人员的手动解压下,才能进行数据的完整恢复,显然这种方式的智能性不够、时间延迟大、效率低等问题。比如,在Oracle数据库灾备份应用中,就包括上述第一种和第二种容灾备份方式。在第二种方式中可用Oracle DataGuard工具进行基于日志的数据容灾备份。Oracle DataGuard工具是为了提高Oracle应用在遭遇数据中心不可用时的持续服务能力。Oracle DataGuard工具通过将Oracle的archivelog和redolog从生产的源服务器传输到目标服务器,并将日志在目标服务器上进行重演的方
式实现Oracle数据库本地或异地容灾。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种数据容灾方法及容灾服务器,以解决容灾成本高、数据管理或扩容限制大及容灾效率低等问题至少其中之一。为达到上述目的,本专利技术的技术方案是这样实现的:本专利技术实施例第一方面提供一种数据容灾方法,所述方法应用在容灾服务器;所述方法包括:从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;判断所述原始数据是否为经过压缩的数据;若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;存储所述恢复数据。优选地,所述方法还包括:若所述原始数据为未经压缩的数据,则直接存储所述原始数据。优选地,所述从源数据库接收由安装在所述原始数据中的数据抓取组件抓取的原始数据,包括:从源数据库接收基于远程直接内存访问协议传输的所述原始数据。优选地,所述解压所述原始数据形成恢复数据,包括:判断所述原始数据中的数据块的数据结构,形成判断结果;若所述原始数据为经过混合列压缩处理的压缩数据,查找所述原始数据中各压缩单元CU的压缩头部;依据所述压缩头部确定对应每一压缩单元的数据块;还原所述数据块,形成所述恢复数据。优选地,所述容灾服务器的工作模式包括数据恢复模式和应用模式;当所述容灾服务器工作在所述数据恢复模式时,所述容灾服务器用于基于
所述原始数据形成恢复数据或直接存储所述原始数据;当所述容灾服务器工作在所述应用模式时,所述容灾服务器用于将所述恢复数据或所述原始数据提供业务服务器。优选地,所述源数据库为Oracle数据库。本专利技术实施例第二方面提供一种容灾服务器,所述容灾服务器包括:接收单元,用于从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;判断单元,用于判断所述原始数据是否为经过压缩的数据;解压单元,用于若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;存储单元,用于存储所述恢复数据。优选地,所述存储单元,还用于若所述原始数据为未经压缩的数据,则直接存储所述原始数据。优选地,所述接收单元,具体用于从源数据库接收基于远程直接内存访问协议传输的所述原始数据。优选地,所述解压单元,具体用于判断所述原始数据中的数据块的数据结构,形成判断结果;若所述原始数据为经过混合列压缩处理的压缩数据,查找所述原始数据中各压缩单元CU的压缩头部;依据所述压缩头部确定对应每一压缩单元的数据块;及还原所述数据块,形成所述恢复数据。优选地,所述容灾服务器的工作模式包括数据恢复模式和应用模式;所述容灾服务器,用于工作在所述数据恢复模式时,基于所述原始数据形成恢复数据或直接存储所述原始数据;所述容灾服务器,用于工作在所述应用模式时,将所述恢复数据或所述原始数据提供业务服务器。本专利技术实施例所述的数据容灾方法及容灾服务器,通过接收安装在源数据库中的数据抓取组件所抓取的原始数据,通过判断获取的原始数据是否为经过压缩的压缩数据,若是压缩数据,则自动进行解压缩;显然相对人工手动解压
来实现数据容灾,显然时延小且效率高;相对于设置一台镜像设备,本专利技术实施例所述容灾服务器可以为不同于源数据库的各种类型的数据库或数据主机,且实践证明容灾成本也有所降低,且更为重要的是,本实施例所述数据容灾方法和容灾服务器,也能解决现有技术中数据管理、扩容等多方面的限制。附图说明图1为本专利技术实施例所述的数据容灾方法的流程示意图之一;图2为本专利技术实施例所述的数据容灾方法的流程示意图之二;图3为本专利技术实施例所述的容灾服务器的结构示意图;图4为本专利技术实施例所述的数据容灾方法应用的数据系统的结构示意图。具体实施方式以下结合说明书附图及具体实施例对本专利技术的技术方案做进一步的详细阐述。如图1所示,本实施例提供一种数据容灾方法,所述方法应用在容灾服务器;所述方法包括:步骤S110:从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;步骤S120:判断所述原始数据是否为经过压缩的数据;步骤S130:若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;步骤S140:存储所述恢复数据。此处所述的源数据库可为Oracle数据库等类型的数据库。所述数据抓取组件为安装在数据库中用于获取源数据库中存储的数据的数据获取逻辑实体。在步骤S120中可以通过获取的原始数据的数据格式判断该原始数据是否为经过了压缩的数据。此处的所述压缩数据可包括经过列压缩处理的压缩数据。
在步骤S120中条同样可通过根据原始数据的数据格式确定是否经过了列压缩处理。通常不同的数据压缩方法将对应了不同的压缩格式,将形成不同的数据格式。此处的数据格式可判断出当前接收的数据是否为压缩包,具体是什么类型的压缩包。根据压缩包的文件后缀名等数据格式信息可确定出数据是否经过了列压缩处理,是否包括了列压缩技术。在步骤S130中若确实原始数据确实为压缩数据,则进行解压处理,将数据恢复成业务服务器可以直接使用的数据。显然本实施例所述容灾服务器可以自动进行数据解压恢复处理,相对于基于人工解压,更好的利用了服务设备的软硬件资源,提高了服务设备的智能性,且具有容灾处理效率高的优点;相对于与源数据库同类型的镜像设备进行容灾,又具有成本低且扩容和管理等各方面限制少的优点。如图2所示,所述方法还包括:步骤S150:若所述原始数据为未经压缩的数据,则直接存储所述原始数据。若原始数据为未经压缩的数据,可为直接能被业务服务器使用的数据,故直接存储所述原始数据即可实现数据容灾处理。所述步骤S110可包括:从源数据库接收基于远程直接内存访问协议传输的所述原本文档来自技高网
...

【技术保护点】
一种数据容灾方法,其特征在于,所述方法应用在容灾服务器;所述方法包括:从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;判断所述原始数据是否为经过压缩的数据;若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;存储所述恢复数据。

【技术特征摘要】
1.一种数据容灾方法,其特征在于,所述方法应用在容灾服务器;所述方法包括:从源数据库接收由安装在所述源数据库中的数据抓取组件抓取的原始数据;判断所述原始数据是否为经过压缩的数据;若所述原始数据为经过压缩的压缩数据,则解压所述原始数据形成恢复数据;存储所述恢复数据。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:若所述原始数据为未经压缩的数据,则直接存储所述原始数据。3.根据权利要求1所述的方法,其特征在于,所述从源数据库接收由安装在所述原始数据中的数据抓取组件抓取的原始数据,包括:从源数据库接收基于远程直接内存访问协议传输的所述原始数据。4.根据权利要求1所述的方法,其特征在于,所述解压所述原始数据形成恢复数据,包括:判断所述原始数据中的数据块的数据结构,形成判断结果;若所述原始数据为经过混合列压缩处理的压缩数据,查找所述原始数据中各压缩单元CU的压缩头部;依据所述压缩头部确定对应每一压缩单元的数据块;还原所述数据块,形成所述恢复数据。5.根据权利要求1至4任一项所述的方法,其特征在于,所述容灾服务器的工作模式包括数据恢复模式和应用模式;当所述容灾服务器工作在所述数据恢复模式时,所述容灾服务器用于基于
\t所述原始数据形成恢复数据或直接存储所述原始数据;当所述容灾服务器工作在所述应用模式时,所述容灾服务器用于将所述恢复数据或所述原始数据提供业务服务器。6.根据权利要求1至4...

【专利技术属性】
技术研发人员:郭岳王晓征张式勤徐征
申请(专利权)人:中国移动通信集团浙江有限公司
类型:发明
国别省市:浙江;33

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

1