CN103034564A - 数据容灾演练方法、数据容灾演练装置及系统 - Google Patents
数据容灾演练方法、数据容灾演练装置及系统 Download PDFInfo
- Publication number
- CN103034564A CN103034564A CN2012105164475A CN201210516447A CN103034564A CN 103034564 A CN103034564 A CN 103034564A CN 2012105164475 A CN2012105164475 A CN 2012105164475A CN 201210516447 A CN201210516447 A CN 201210516447A CN 103034564 A CN103034564 A CN 103034564A
- Authority
- CN
- China
- Prior art keywords
- data
- storage array
- database
- protected
- checking
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据容灾演练方法、数据容灾演练装置及系统,方法包括:触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确;在所述触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。通过将创建的校验数据与待保护的数据库数据一起复制到灾备端,使得灾备端能够根据校验数据的复制结果获知待保护的数据库数据是否被正确复制到灾备端,从而保证了灾备端容灾演练的准确性。
Description
技术领域
本发明涉及数据保护技术,尤其涉及一种数据容灾演练方法、数据容灾演练装置及系统。
背景技术
随着信息技术(Information Technology,IT)技术日新月异的发展,用户的业务系统也越来越依赖数据中心的服务支持,信息数据甚至已经成为了企业进一步发展的关键,因此,数据安全非常重要。
容灾技术是一种保证数据安全的技术。由于容灾技术具有复杂性和多样性,如从最原始的“卡车运送数据介质容灾”,发展到如今的“应用级容灾”。因此,如何设计一个更有效、更安全的容灾系统,显得更加重要。容灾演练正是为了解决这一问题而出现的技术。
容灾演练是容灾系统模拟生产端发生灾难后,业务系统从生产端切换到灾备端继续运行的一项的技术。完善的容灾演练技术以及演练结果的准确性能够提高容灾系统的可靠性,从而保证真实情况下容灾业务切换的成功率。
目前,在业界主流的容灾软件应用场景中,主要分为物理机和虚拟机两种场景下的容灾演练。
物理机场景下的容灾演练,是指用户的业务系统运行在物理机之上,物理机之间一般构成集群系统,集群系统的后端外接存储阵列,生产端的容灾软件利用存储阵列的远程复制等功能,将生产端的业务数据复制到灾备端,而灾备端的容灾软件为了对这些复制到灾备端的数据进行有效性验证,将会对这些数据进行测试。这个测试的过程就是容灾演练,即容灾软件模拟生产端故障后,试图利用复制到灾备端的数据恢复生产端的业务系统的过程。
虚拟机场景的容灾演练,是指用户的业务系统运行在虚拟机里面,多个虚拟机运行在一台物理服务器之上,服务器后端外接存储阵列,生产端的容灾软件利用存储阵列的远程复制等功能,将生产端的虚拟机及其之上的业务数据复制到灾备端;然后,灾备端的容灾软件对这些复制到灾备端的数据进行有效性验证,即试图利用复制到灾备端的数据拉起虚拟机。
从以上两种容灾方案中可以看出,现有技术由于无法对复制到灾备端的数据的正确性进行判断,因而无法有效保证真实情况下容灾业务切换的成功率。
发明内容
本发明实施例提供一种数据容灾演练方法、数据容灾演练装置及系统,以保证容灾演练的准确性。
本发明实施例的第一个方面是提供一种数据容灾演练方法,包括:
触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确;
在所述触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。
本发明实施例的第二个方面是提供一种数据容灾演练方法,包括:
存储阵列存储生产端复制到灾备端的新数据,所述存储阵列存储的新数据由所述生产端将待保护的数据库数据及所述第一校验数据复制到所述存储阵列后得到;
利用所述存储阵列存储的新数据启动数据库;
从所述数据库中读取第二校验数据;
根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
本发明实施例的第三个方面是提供一种数据容灾演练装置,包括:
策略调度单元,用于触发复制任务;
校验数据创建单元,用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确;
存储阵列,用于在所述测量调度单元的触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。
本发明实施例的第四个方面是提供一种数据容灾演练装置,包括:
存储阵列,用于存储生产端复制到灾备端的新数据,所述存储阵列存储的新数据由所述生产端将待保护的数据库数据及第一校验数据复制到所述存储阵列后得到;
容灾演练单元,用于利用所述存储阵列存储的新数据启动数据库;
数据校验单元,用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
本发明实施例的第五个方面是提供一种容灾系统,包括上述两种数据容灾演练装置。
本发明实施例的第六个方面是提供一种数据容灾演练装置,包括:
策略调度单元,用于触发复制任务;
校验数据创建单元,用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验第一待保护的数据库数据复制到灾备端后是否正确;
阵列管理单元,用于在所述测量调度单元的触发下,控制所述存储阵列将所述第一待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述第一待保护的数据库数据。
本发明实施例的第七个方面是提供一种数据容灾演练装置,包括:
容灾演练单元,用于利用存储阵列存储的新数据启动数据库,所述存储阵列存储的新数据由生产端将待保护的数据库数据及第一校验数据复制到所述存储阵列后得到;
数据校验单元,用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
本发明实施例提供的数据容灾演练方法、数据容灾演练装置及系统,通过将创建的校验数据与待保护的数据库数据一起复制到灾备端,使得灾备端能够根据校验数据的复制结果获知待保护的数据库数据是否被正确复制到灾备端,从而保证了灾备端容灾演练的准确性。
附图说明
图1为本发明实施例提供的一种数据容灾演练方法的流程图;
图2为本发明实施例提供的另一种数据容灾演练方法的流程图;
图3为本发明实施例提供的又一种数据容灾演练方法的流程图;
图4为本发明实施例提供的一种数据容灾演练装置的结构示意图;
图5为本发明实施例提供的另一种数据容灾演练装置的结构示意图;
图6为本发明实施例提供的一种容灾系统的结构示意图;
图7为本发明实施例提供的一种数据容灾演练装置的结构示意图;
图8为本发明实施例提供的另一种数据容灾演练装置的结构示意图;
图9为本发明实施例提供的又一种数据容灾演练装置的结构示意图;
图10为本发明实施例提供的数据容灾演练方法所应用的物理机场景示意图;
图11为本发明实施例提供的数据容灾演练方法所应用的虚拟机机场景示意图。
具体实施方式
图1为本发明实施例提供的一种数据容灾演练方法的流程图。本实施例所示的方法为生产端的操作流程,如图1所示,该流程包括:
步骤11、触发复制任务后,创建第一校验数据,该第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确。
例如,生产端的容灾软件根据配置的时间策略触发复制任务,以触发生产端将待保护的数据库数据复制到灾备端。
其中,待保护的数据库数据包括生产端主机服务器缓存中的数据,还包括安装在生产端存储阵列中的数据库存储的数据。
创建第一校验数据,可以是生产端在主机服务器的缓存中创建第一校验数据。该第一校验数据可以是一串数字、可以是时间戳,只要是可读的即可,不限于这些例子。
步骤12、在上述触发下,将上述待保护的数据库数据及上述第一校验数据复制到灾备端的存储阵列,以根据该第一校验数据的复制结果,校验该灾备端的存储阵列中复制到的数据是否为该待保护的数据库数据。
复制任务被触发后,生产端的容灾软件首先执行步骤11,然后将主机服务器缓存中的数据下刷到存储阵列,最后将存储阵列中的数据复制到灾备端的存储阵列。由于第一校验数据创建在缓存中,因此,缓存中的数据下刷到存储阵列后,第一校验数据也存储在存储阵列中,并连同数据库数据一起被复制到灾备端。
可选地,创建第一校验数据,包括:
在待保护的数据库中创建临时表;
在该临时表中插入时间戳。其中,插入的时间戳可以为当前时间戳。
可选地,将上述待保护的数据库数据及上述第一校验数据复制到灾备端的存储阵列,包括:
先将上述待保护的数据库数据复制到上述灾备端的存储阵列中;
再将上述第一校验数据复制到该灾备端的存储阵列中。这样,当第一校验数据被正确复制到灾备端时,上述待保护的数据库数据也必然被正确复制到灾备端,即容灾演练的数据即上述待保护的数据库数据,是正确的演练数据,从而进一步提高了第一校验数据校验的准确性。
可选地,将上述待保护的数据库数据及上述第一校验数据复制到灾备端的存储阵列之后,还包括:
删除上述第一校验数据,以保证生产端继续正常运行业务。由于容灾演练并不是生产端真正的发生故障,因此,删除第一校验数据,以避免影响生产端的正常运行。
上述实施例通过将创建的校验数据与待保护的数据库数据一起复制到灾备端,使得灾备端能够根据校验数据的复制结果获知待保护的数据库数据是否被正确复制到灾备端,从而保证了灾备端容灾演练的准确性。
图2为本发明实施例提供的另一种数据容灾演练方法的流程图。本实施例所示的方法为灾备端的操作流程,如图2所示,该流程包括:
步骤21、存储阵列存储生产端复制到灾备端的新数据,该存储阵列存储的新数据由该生产端将待保护的数据库数据及上述第一校验数据复制到该存储阵列后得到。
接上述步骤12,生产端的容灾软件将生产端的存储阵列(为便于描述,下面将生产端的存储阵列称为第一存储阵列)中的数据复制到灾备端的存储阵列(为便于描述,下面将灾备端的存储阵列称为第二存储阵列)之后,灾备端的存储阵列中便存储了新数据,但是该新数据不一定是生产端的待保护数据块数据和第一校验数据。例如,当复制出错时,第二存储阵列中存储的新数据便已不同于生产端的待保护数据块数据和第一校验数据;当复制准确无误时,第二存储阵列中存储的新数据便与生产端的待保护数据块数据和第一校验数据相同。
其中,第一校验数据及其创建详见上述步骤11中的说明。
步骤22、利用步骤上述存储阵列(即第二存储阵列)存储的新数据启动数据库。
例如,灾备端的容灾软件通过调用操作系统接口识别到存储阵列中存储了新数据后,调用数据库接口读取这些新数据启动数据库。如果新数据与生产端的待保护数据块数据和第一校验数据相同的话,那么启动的数据库便是生产端运行的数据库。
步骤23、从上述数据库中读取第二校验数据。
例如,灾备端的容灾软件从上述步骤22启动的数据库中读取第二校验数据。这里第二校验数据是第一校验数据的被复制结果,也就是说,第一校验数据被复制到灾备端后成为第二校验数据,如果复制正确,则第二校验数据就等于第一校验数据,否则,第二校验数据就不等于第一校验数据。
步骤24、根据读取结果及上述第二校验数据与上述第一校验数据的比较结果,校验上述存储阵列(即第二存储阵列)存储的新数据是否为上述待保护的数据库数据。
例如,灾备端的容灾软件如果读取不到第二校验数据,或读取到的第二校验数据与上述第一校验数据不一致,说明步骤22中用来启动数据库的数据不正确,即第二存储阵列中的新数据与第一存储阵列中待保护的数据库数据不同,或者说,生产端待保护的数据库数据没有被正确复制到灾备端。这样,演练结果也是错误的。
可选地,从上述数据库(即上述步骤22启动的数据库)中读取第二校验数据,包括:
从上述数据库(即上述步骤22启动的数据库)中查询临时表;
从该临时表中读取时间戳。这样,可以用时间戳来进行校验。
可选地,根根据读取结果及上述第二校验数据与上述第一校验数据的比较结果,校验上述存储阵列(即第二存储阵列)存储的新数据是否为上述待保护的数据库数据之后,还包括:
显示校验结果,以使用户了解容灾演练的准确性。
上述实施例中,灾备端通过读取启动的数据库中的校验数据,并利用校验数据获知待保护的数据库数据是否被正确复制到灾备端,保证了灾备端容灾演练的准确性。
下面以图3为例,从生产端和灾备端两侧综合说明容灾演练的方法。
本实施例中,生产端侧在将本端的业务数据复制到灾备端以前,生产端的容灾软件首先在要保护的数据库中创建一张临时表,并向该表中插入一条记录,记录的内容是当前时间戳。其中,业务数据即数据库数据,包括生产端主机服务缓存中的数据(以下简称缓存数据)及存储阵列中的数据。上述临时表可在缓存数据中创建。
然后,生产端调用数据库接口将缓存数据下刷到存储阵列,如果临时表在缓存数据中创建,那么,同时临时表也被下刷到存储阵列。
最后,生产端通知存储阵列将存储的数据复制到灾备端。其中,存储阵列存储的数据也包含有临时表,临时表中包含有时间戳。因此,待复制完成后,临时表及时间戳也被生产端的存储阵列复制到了灾备端的存储阵列。这样,灾备端的存储阵列便存储了新数据,当然,该新数据是生产端存储阵列复制的结果。
灾备端侧,容灾软件利用存储阵列存储的新数据,启动数据库。如果演练成功,那么启动的数据库即生产端待保护的数据库。并且,容灾软件判断启动的数据库中是否存在有生产端创建的临时表,如果存在该临时表,则从中读出时间戳,并将该时间戳与生产端容灾软件插入的时间戳进行比对,如果两者完全相同,则表明容灾数据正确,演练成功。如果不存在临时表或时间戳比对不一致,则表明在容灾演练过程中损失了数据,存在数据丢失或者不一致的风险。最后,灾备端侧的容灾软件界面上将该演练任务的比对结果展现给用户,这样,用户可以对整个演练过程进行综合判断。
具体如图3所示,生产端侧的容灾软件运行步骤包括:
步骤31.当其配置的时间策略满足要求时,复制任务被定时触发。
其中,时间策略可以由用户根据实际应用场景在容灾软件中进行配置。例如,用户根据实际应用场景的不同,在容灾软件中配置不同时间策略的复制任务;再如,用户根据实际应用场景的不同,在容灾软件中配置不同时间策略的演练任务。其中,演练任务是指执行复制任务后,利用复制的数据启动数据库,以使得生产端运行的业务继续在灾备端能够继续运行,因此,演练任务仅限于灾备端。
步骤32.复制任务被触发后,生产端的容灾软件在所保护的数据库数据中创建一张临时表,并在该临时表中插入一条记录,记录的内容是当前时间戳。这里以临时表为my_temp_table,时间为2012-10-01 01:01:01为例,进行说明,如可以使用如下通用的数据库SQL语句来实现:
create table my_temp_table(timestamp varchar(20));
insert into my_temp_table(timestamp)values('2012-10-01 01:01:01')。
步骤33.生产端的容灾软件调用数据库接口,将主机服务器缓存中的数据下刷到存储阵列中,以使得存储阵列在开始远程复制之前缓存中的数据已经到达存储阵列,保证被复制数据的完整性。
步骤34.生产端的容灾软件通知存储阵列执行远程复制操作,将生产端的存储阵列中的数据复制到灾备端的存储阵列。
步骤35.远程复制后,生产端的容灾软件可以再次使用SQL语句删除掉刚刚创建的临时表。
例如:使用drop table my_temp_table删除临时表。
灾备端的容灾软件运行步骤:
步骤36.生产端的复制任务完成后,灾备端的存储阵列便存储了新数据。灾备端的容灾软件可以根据配置的任务策略触发灾备端的演练任务,即利用存储阵列中的新数据启动数据库。其中,任务策略例如生产端的复制任务完成后,立即触发演练任务。或者容灾软件可以按照步骤31中的时间策略触发演练任务。
步骤37.灾备端的容灾软件调用操作系统接口,使灾备端的主机服务器正确识别到从生产端复制过来的最新数据,也即存储阵列中的新数据。
步骤38.灾备端的容灾软件调用数据库接口,利用识别到的数据在灾备端的主机服务器上启动数据库。
步骤39.灾备端的容灾软件使用数据库SQL语句,从启动的数据库中读取临时表,从临时表中读出时间戳。如果启动的数据库中不存在临时表,或者读出时间戳失败,表明从生产端复制到灾备端的数据存在丢失或者与生产端待保护的数据库数据不一致的风险。
例如:采用SQL语句select*from my_temp_table从临时表中读出时间戳。
如果读出了时间戳,则执行步骤310,否则,直接执行步骤311。
步骤310.将读出的时间戳记录与生产端写入的时间戳记录进行比对,如果二者不一致,则存在数据丢失、或从生产端复制到灾备端的数据与生产端待保护的数据库数据不一致的风险。
步骤311.灾备端将步骤39与步骤310的运行结果通过容灾软件的管理界面呈现给用户。这样,可以使用户根据演练任务执行情况和数据正确性校验结果对整个容灾系统的运行情况有一个更加全面的了解,以便于发现数据安全问题并及时解决。
在上述实施例所示的容灾演练方案中,在现有容灾软件执行演练任务的基础上,增加了对数据正确性的校验,即在灾备端增加对业务系统数据正确性的验证,除了将演练任务的执行结果呈现给用户外,进一步将其数据正确性的验证结果呈现给用户,使得用户能够综合掌握整个容灾演练任务的执行情况,从确保实际的容灾更加可行。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图4为本发明实施例提供的一种数据容灾演练装置的结构示意图。本实施例所示的装置用于实现上述图1所示的方法,可为生产端设备。如图4所示,该装置包括:策略调度单元41、校验数据创建单元42及存储阵列43。
策略调度单元41用于触发复制任务。
校验数据创建单元42用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确。
存储阵列43用于在所述测量调度单元的触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。
可选地,校验数据创建单元42包括:表创建子单元421及插入子单元422。
表创建子单元421用于在待保护的数据库中创建临时表。插入子单元422用于在所述表创建子单元421创建的临时表中插入时间戳。
可选地,存储阵列43具体用于先将所述待保护的数据库数据复制到所述灾备端的存储阵列中;再将所述第一校验数据复制到所述灾备端的存储阵列中。
可选地,本发明实施例提供的数据容灾演练装置还包括:校验数据删除单元44,用于删除所述第一校验数据。
上述实施例中,策略调度单元、校验数据创建单元及校验数据删除单元可基于容灾软件实现。
上述实施例中,生产端通过存储阵列将创建的校验数据与待保护的数据库数据一起复制到灾备端,使得灾备端能够根据校验数据的复制结果获知待保护的数据库数据是否被正确复制到灾备端,从而保证了灾备端容灾演练的准确性。
图5为本发明实施例提供的另一种数据容灾演练装置的结构示意图。本实施例所示的装置用于实现上述图2所示的方法,可为灾备端设备。如图5所示,该装置包括:存储阵列51、容灾演练单元52和数据校验单元53。
存储阵列51用于存储生产端复制到灾备端的新数据,所述存储阵列存储的新数据由所述生产端将待保护的数据库数据及所述第一校验数据复制到所述存储阵列后得到。
容灾演练单元52用于利用所述存储阵列存储的新数据启动数据库。
数据校验单元53用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
可选地,数据校验单元53包括:表查询子单元531及时间戳读取单元532。
表查询子单元531用于从所述数据库中查询临时表;时间戳读取单元532用于从所述临时表中读取时间戳。
可选地,本发明实施例提供的数据容灾演练装置还包括:显示单元54,用于在所述数据校验单元53根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据之后,显示校验结果。
上述实施例中,灾备端通过数据校验单元读取启动的数据库中的校验数据,并通过数据校验单元利用校验数据获知待保护的数据库数据是否被正确复制到灾备端,保证了灾备端容灾演练的准确性。
图6为本发明实施例提供的一种容灾系统的结构示意图。该容灾系统可用于实现图3所示的方法,包括生产端61和灾备端62。其中,生产端61为上述图4所示的任意一种数据容灾演练装置,灾备端62为上述图5所示的任一种数据容灾演练装置。
当进行容灾演练时,生产端61首先创建校验数据,然后将主机服务器缓存中的数据下刷到存储阵列。存储阵列将存储的数据发送到灾备端62的存储阵列。灾备端62在生产端61完成复制后调用操作系统接口识别本端存储阵列中存储的新数据,然后调用数据库接口读取这些新数据启动新的数据库,实现容灾演练。灾备端62还从启动的新的数据库中读取校验数据,当该校验数据与生产端创建的校验数据一致时,则说明容灾演练所用的数据是正确的,就是生产端61进行容灾演练时所要保护的数据库数据,那么容灾演练的结果也是正确的。若灾备端62从启动的新的数据库中读取校验数据失败,或者读取的校验数据与生产端61创建的校验数据不一致,则说明容灾演练所用的数据是错误的,与生产端61所要保护的数据库数据不一致,那么容灾演练的结果是错误的。具体详见上述方法实施例中的说明。
图7为本发明实施例提供的一种数据容灾演练装置的结构示意图。本实施例所示的装置可完全通过计算机程序实现,如图7所示,该装置包括:策略调度单元71、校验数据创建单元72及阵列管理单元73。
策略调度单元71用于触发复制任务;
校验数据创建单元72用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验第一待保护的数据库数据复制到灾备端后是否正确;
阵列管理单元73用于在所述测量调度单元的触发下,控制所述存储阵列将所述第一待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述第一待保护的数据库数据。
可选地,校验数据创建单元72包括:表创建子单元及插入子单元。
表创建子单元用于在待保护的数据库中创建临时表;
插入子单元用于在所述表创建子单元创建的临时表中插入时间戳。
可选地,阵列管理单元具体用于控制所述存储阵列先将所述第一待保护的数据库数据复制到所述灾备端的存储阵列中;再将所述第一校验数据复制到所述灾备端的存储阵列中。
可选地,本发明实施例提供的数据容灾演练装置还包括:校验数据删除单元,用于删除所述第一校验数据。
可选地,本发明实施例提供的数据容灾演练装置还包括:容灾演练单元及数据校验单元。
容灾演练单元用于利用存储阵列存储的新数据启动数据库,所述存储阵列存储的新数据为第二待保护的数据库数据及第三校验数据从生产端复制到所述存储阵列的复制结果;
数据校验单元用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第三校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述第二待保护的数据库数据,所述第二校验数据为所述第三校验数据从生产端复制到所述存储阵列的复制结果。
上述实施例中,当数据容灾演练装置包括策略调度单元、校验数据创建单元及阵列管理单元时,数据容灾演练装置可应用于生产端;当数据容灾演练装置进一步包括容灾演练单元及数据校验单元时,数据容灾演练装置还可应用于灾备端,也就是说,安装有该数据容灾演练装置的主机服务器既可作为生产端,也可作为灾备端。
本实施例提供的数据容灾演练装置可以安装在生产端,在实现容灾演练的同时,可用来实现容灾演练的数据校验。
图8为本发明实施例提供的另一种数据容灾演练装置的结构示意图。本实施例所示的数据容灾演练装置可以是具有对容灾演练结果进行数据正确性校验功能的容灾软件,其主要包括:应用管理单元81、阵列管理单元82、策略调度单元83、容灾恢复单元84、容灾演练单元85及数据校验单元86。
应用管理单元81通过调用数据库软件提供的接口,来完成将主机服务器缓存中的数据下刷到存储阵列的工作。容灾软件在将生产端的数据复制到灾备端时,为了保证数据的一致性,需要先将主机服务器缓存中的数据下刷到存储阵列,然后再调用存储阵列的远程复制接口复制到灾备端。
阵列管理单元82阵列管理单元82主要用于容灾软件与具体阵列之间的通信,发送复制命令给存储阵列执行,再将存储阵列的执行结果或查询信息等返回给容灾软件。当主机服务器缓存中的数据下刷到存储阵列后,容灾软件将会调用存储阵列的远程复制接口进行数据复制。
策略调度单元83是一个调度器,用于控制整个容灾软件何时进行数据远程复制,何时进行容灾演练。具体的调度策略可由用户在界面上面根据不同应用场景进行配置。策略调度单元83是所有软件组成单元模块的大脑,协调各个单元之间的关联性,保证他们定时、有序的执行。
当生产端发生故障或者用户有意将业务切换到灾备端(前者称为计划外切换,后者称为计划内切换)运行时,容灾恢复单元84将会在灾备端将业务运行起来,包括拉起虚拟机服务或者数据库业务。
容灾演练单元85用于按照用户配置的策略,模拟灾难发生时如何在灾备端恢复业务。
数据校验单元86用于在执行容灾演练任务后,要对灾备端与生产端的数据进行正确性校验,如果相同,则整个容灾系统正常、有效,反之,则存在数据丢失或不一致的风险。
本实施例提供的数据容灾演练装置既可以安装在生产端,也可以安装在灾备端,在实现容灾演练的同时,均可用来实现容灾演练的数据校验。
图9为本发明实施例提供的又一种数据容灾演练装置的结构示意图。本实施例所示的装置可完全通过计算机程序实现,如图9所示,该装置包括:容灾演练单元91和数据校验单元92。
容灾演练单元91用于利用存储阵列存储的新数据启动数据库,所述存储阵列存储的新数据由生产端将待保护的数据库数据及第一校验数据复制到所述存储阵列后得到;
数据校验单元92用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
可选地,所述数据校验单元包括:表查询子单元和时间戳读取单元。
表查询子单元用于从所述数据库中查询临时表;
时间戳读取单元用于从所述临时表中读取时间戳。
可选地,本发明实施例提供的数据容灾演练装置还包括:显示单元,用于在所述数据校验单元根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据之后,显示校验结果。
本实施例提供的数据容灾演练装置可安装在灾备端,既可进行容灾演练,也可对容灾演练的数据进行校验。
上述方法及装置实施例所示的技术方案不仅可用于如图10所示的物理机场景下的容灾演练,也可用于如图11所示的虚拟机场景下的容灾演练。
对于物理机场景下的容灾演练,通过上述技术方案,灾备端不仅拉起了业务系统本身,还对业务系统的数据的正确性进行校验。类似地,对于虚拟机场景下的容灾演练,通过上述技术方案,灾备端不只是拉起了虚拟机本身,还对业务系统的数据正确性进行了校验,既也能够获知拉起的业务系统和运行的虚拟机中的数据是否正确,从而有效保证真实情况下容灾业务切换的成功率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (23)
1.一种数据容灾演练方法,其特征在于,包括:
触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确;
在所述触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。
2.根据权利要求1所述方法,其特征在于,创建第一校验数据,包括:
在待保护的数据库中创建临时表;
在所述临时表中插入时间戳。
3.根据权利要求1或2所述方法,其特征在于,将所述待保护的数据库数据及所述第一校验数据复制到灾备端的存储阵列,包括:
先将所述待保护的数据库数据复制到所述灾备端的存储阵列中;
再将所述第一校验数据复制到所述灾备端的存储阵列中。
4.根据权利要求1或2所述方法,其特征在于,将所述待保护的数据库数据及所述第一校验数据复制到灾备端的存储阵列之后,还包括:
删除所述第一校验数据。
5.一种数据容灾演练方法,其特征在于,包括:
存储阵列存储生产端复制到灾备端的新数据,所述存储阵列存储的新数据由所述生产端将待保护的数据库数据及所述第一校验数据复制到所述存储阵列后得到;
利用所述存储阵列存储的新数据启动数据库;
从所述数据库中读取第二校验数据;
根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
6.根据权利要求5所述方法,其特征在于,从所述数据库中读取第二校验数据,包括:
从所述数据库中查询临时表;
从所述临时表中读取时间戳。
7.根据权利要求5或6所述方法,其特征在于,根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据之后,还包括:
显示校验结果。
8.一种数据容灾演练装置,其特征在于,包括:
策略调度单元,用于触发复制任务;
校验数据创建单元,用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验待保护的数据库数据复制到灾备端后是否正确;
存储阵列,用于在所述测量调度单元的触发下,将所述待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述待保护的数据库数据。
9.根据权利要求8所述装置,其特征在于,所述校验数据创建单元包括:
表创建子单元,用于在待保护的数据库中创建临时表;
插入子单元,用于在所述表创建子单元创建的临时表中插入时间戳。
10.根据权利要求8或9所述装置,其特征在于,所述存储阵列具体用于先将所述待保护的数据库数据复制到所述灾备端的存储阵列中;再将所述第一校验数据复制到所述灾备端的存储阵列中。
11.根据权利要求8或9所述装置,其特征在于,还包括:
校验数据删除单元,用于删除所述第一校验数据。
12.一种数据容灾演练装置,其特征在于,包括:
存储阵列,用于存储生产端复制到灾备端的新数据,所述存储阵列存储的新数据由所述生产端将待保护的数据库数据及第一校验数据复制到所述存储阵列后得到;
容灾演练单元,用于利用所述存储阵列存储的新数据启动数据库;
数据校验单元,用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
13.根据权利要求12所述装置,其特征在于,所述数据校验单元包括:
表查询子单元,用于从所述数据库中查询临时表;
时间戳读取单元,用于从所述临时表中读取时间戳。
14.根据权利要求12或13所述装置,其特征在于,还包括:
显示单元,用于在所述数据校验单元根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据之后,显示校验结果。
15.一种容灾系统,其特征在于,包括上述权利要求8-11任一项所述的数据容灾演练装置及上述权利要求12-14任一项所述的数据容灾演练装置。
16.一种数据容灾演练装置,其特征在于,包括:
策略调度单元,用于触发复制任务;
校验数据创建单元,用于在所述策略调度单元触发复制任务后,创建第一校验数据,所述第一校验数据用于校验第一待保护的数据库数据复制到灾备端后是否正确;
阵列管理单元,用于在所述测量调度单元的触发下,控制所述存储阵列将所述第一待保护的数据库数据及所述第一校验数据复制到所述灾备端的存储阵列,以根据所述第一校验数据的复制结果,校验所述灾备端的存储阵列中复制到的数据是否为所述第一待保护的数据库数据。
17.根据权利要求16所述装置,其特征在于,所述校验数据创建单元包括:
表创建子单元,用于在待保护的数据库中创建临时表;
插入子单元,用于在所述表创建子单元创建的临时表中插入时间戳。
18.根据权利要求16或17所述装置,其特征在于,所述阵列管理单元具体用于控制所述存储阵列先将所述第一待保护的数据库数据复制到所述灾备端的存储阵列中;再将所述第一校验数据复制到所述灾备端的存储阵列中。
19.根据权利要求16或17所述装置,其特征在于,还包括:
校验数据删除单元,用于删除所述第一校验数据。
20.根据权利要求16或17所述装置,其特征在于,还包括:
容灾演练单元,用于利用存储阵列存储的新数据启动数据库,所述存储阵列存储的新数据为第二待保护的数据库数据及第三校验数据从生产端复制到所述存储阵列的复制结果;
数据校验单元,用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第三校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述第二待保护的数据库数据,所述第二校验数据为所述第三校验数据从生产端复制到所述存储阵列的复制结果。
21.一种数据容灾演练装置,其特征在于,包括:
容灾演练单元,用于利用存储阵列存储的新数据启动数据库,所述存储阵列存储的新数据由生产端将待保护的数据库数据及第一校验数据复制到所述存储阵列后得到;
数据校验单元,用于从所述数据库中读取第二校验数据,并根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据。
22.根据权利要求21所述装置,其特征在于,所述数据校验单元包括:
表查询子单元,用于从所述数据库中查询临时表;
时间戳读取单元,用于从所述临时表中读取时间戳。
23.根据权利要求21或22所述装置,其特征在于,还包括:
显示单元,用于在所述数据校验单元根据读取结果及所述第二校验数据与所述第一校验数据的比较结果,校验所述存储阵列存储的新数据是否为所述待保护的数据库数据之后,显示校验结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210516447.5A CN103034564B (zh) | 2012-12-05 | 2012-12-05 | 数据容灾演练方法、数据容灾演练装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210516447.5A CN103034564B (zh) | 2012-12-05 | 2012-12-05 | 数据容灾演练方法、数据容灾演练装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103034564A true CN103034564A (zh) | 2013-04-10 |
CN103034564B CN103034564B (zh) | 2016-06-15 |
Family
ID=48021482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210516447.5A Active CN103034564B (zh) | 2012-12-05 | 2012-12-05 | 数据容灾演练方法、数据容灾演练装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103034564B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103984309A (zh) * | 2014-05-09 | 2014-08-13 | 浙江中烟工业有限责任公司 | 一种具有容灾功能的卷烟生产系统及其容灾演练方法 |
CN106095614A (zh) * | 2016-05-27 | 2016-11-09 | 上海新炬网络信息技术有限公司 | 一种数据库容灾演练管控系统 |
CN106571949A (zh) * | 2016-09-23 | 2017-04-19 | 北京五八信息技术有限公司 | 埋点处理方法及装置 |
CN106850342A (zh) * | 2017-01-20 | 2017-06-13 | 郑州云海信息技术有限公司 | 测试交换机兼容性和稳定性的方法及装置 |
CN108874611A (zh) * | 2017-05-12 | 2018-11-23 | 北京金山云网络技术有限公司 | 一种测试数据的构建方法及装置 |
CN110209556A (zh) * | 2018-04-04 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 容灾测试方法、支付方法、装置、介质及服务设备 |
CN111309432A (zh) * | 2018-12-12 | 2020-06-19 | 阿里巴巴集团控股有限公司 | 一种故障演练方法、装置及系统 |
CN112583660A (zh) * | 2020-12-02 | 2021-03-30 | 广州品唯软件有限公司 | 一种推荐平台的主域、备域测试对比方法、装置及系统 |
CN114389849A (zh) * | 2021-12-17 | 2022-04-22 | 中电信数智科技有限公司 | 一种网络安全的灾备演练方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050286379A1 (en) * | 2004-06-24 | 2005-12-29 | Sony Corporation | System, method, and computer program for verifying data on information recording medium |
CN101094154A (zh) * | 2007-06-28 | 2007-12-26 | 北京亚细亚智业科技有限公司 | 一种多主控模式的数据备份异地保护系统以及保护方法 |
CN101251812A (zh) * | 2008-02-28 | 2008-08-27 | 浪潮电子信息产业股份有限公司 | 一种应用于集群系统数据容错的方法 |
US20090210743A1 (en) * | 2006-10-24 | 2009-08-20 | Huawei Technologies Co., Ltd. | Method and device for realizing ip multimedia subsystem disaster tolerance |
CN101635638A (zh) * | 2008-07-25 | 2010-01-27 | 中兴通讯股份有限公司 | 一种容灾系统及其容灾方法 |
CN101989929A (zh) * | 2010-11-17 | 2011-03-23 | 中兴通讯股份有限公司 | 容灾数据备份的方法及系统 |
CN102156703A (zh) * | 2011-01-24 | 2011-08-17 | 南开大学 | 一种低功耗的高性能重复数据删除系统 |
-
2012
- 2012-12-05 CN CN201210516447.5A patent/CN103034564B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050286379A1 (en) * | 2004-06-24 | 2005-12-29 | Sony Corporation | System, method, and computer program for verifying data on information recording medium |
US20090210743A1 (en) * | 2006-10-24 | 2009-08-20 | Huawei Technologies Co., Ltd. | Method and device for realizing ip multimedia subsystem disaster tolerance |
CN101094154A (zh) * | 2007-06-28 | 2007-12-26 | 北京亚细亚智业科技有限公司 | 一种多主控模式的数据备份异地保护系统以及保护方法 |
CN101251812A (zh) * | 2008-02-28 | 2008-08-27 | 浪潮电子信息产业股份有限公司 | 一种应用于集群系统数据容错的方法 |
CN101635638A (zh) * | 2008-07-25 | 2010-01-27 | 中兴通讯股份有限公司 | 一种容灾系统及其容灾方法 |
CN101989929A (zh) * | 2010-11-17 | 2011-03-23 | 中兴通讯股份有限公司 | 容灾数据备份的方法及系统 |
CN102156703A (zh) * | 2011-01-24 | 2011-08-17 | 南开大学 | 一种低功耗的高性能重复数据删除系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103984309B (zh) * | 2014-05-09 | 2017-02-15 | 浙江中烟工业有限责任公司 | 一种具有容灾功能的卷烟生产系统及其容灾演练方法 |
CN103984309A (zh) * | 2014-05-09 | 2014-08-13 | 浙江中烟工业有限责任公司 | 一种具有容灾功能的卷烟生产系统及其容灾演练方法 |
CN106095614A (zh) * | 2016-05-27 | 2016-11-09 | 上海新炬网络信息技术有限公司 | 一种数据库容灾演练管控系统 |
CN106571949A (zh) * | 2016-09-23 | 2017-04-19 | 北京五八信息技术有限公司 | 埋点处理方法及装置 |
CN106850342B (zh) * | 2017-01-20 | 2020-11-24 | 苏州浪潮智能科技有限公司 | 测试交换机兼容性和稳定性的方法及装置 |
CN106850342A (zh) * | 2017-01-20 | 2017-06-13 | 郑州云海信息技术有限公司 | 测试交换机兼容性和稳定性的方法及装置 |
CN108874611A (zh) * | 2017-05-12 | 2018-11-23 | 北京金山云网络技术有限公司 | 一种测试数据的构建方法及装置 |
CN110209556A (zh) * | 2018-04-04 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 容灾测试方法、支付方法、装置、介质及服务设备 |
CN111309432A (zh) * | 2018-12-12 | 2020-06-19 | 阿里巴巴集团控股有限公司 | 一种故障演练方法、装置及系统 |
CN111309432B (zh) * | 2018-12-12 | 2023-06-27 | 阿里巴巴集团控股有限公司 | 一种故障演练方法、装置及系统 |
CN112583660A (zh) * | 2020-12-02 | 2021-03-30 | 广州品唯软件有限公司 | 一种推荐平台的主域、备域测试对比方法、装置及系统 |
CN114389849A (zh) * | 2021-12-17 | 2022-04-22 | 中电信数智科技有限公司 | 一种网络安全的灾备演练方法及系统 |
CN114389849B (zh) * | 2021-12-17 | 2024-04-16 | 中电信数智科技有限公司 | 一种网络安全的灾备演练方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103034564B (zh) | 2016-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103034564A (zh) | 数据容灾演练方法、数据容灾演练装置及系统 | |
US10795788B2 (en) | Remote data replication method and system | |
CN102306115B (zh) | 异步远程复制方法、系统及设备 | |
CN103136074B (zh) | 多个磁盘阵列系统的数据储存方法及数据储存系统 | |
CN101436151B (zh) | 基于文件系统的数据实时备份方法及其系统 | |
CN102521072B (zh) | 虚拟磁带库设备及数据恢复方法 | |
CN102945278B (zh) | 一种数据库记录重做日志的方法和装置 | |
CN106021016A (zh) | 在快照之间的虚拟时间点访问 | |
CN104166605A (zh) | 基于增量数据文件的数据备份方法及系统 | |
WO2012097691A1 (zh) | 一种数据备份方法和装置 | |
EP3147797B1 (en) | Data management method, node and system for database cluster | |
CN105302667A (zh) | 基于集群架构的高可靠性数据备份与恢复方法 | |
CN104063187A (zh) | 适用于安防应用的硬盘文件系统及其运行方法 | |
CN103970834A (zh) | 一种异构数据库同步系统中增量数据同步故障的恢复方法 | |
CN104809178A (zh) | 一种键值数据库内存日志的写入方法 | |
CN105302665A (zh) | 一种改进的写时拷贝快照方法及系统 | |
CN107870731A (zh) | 独立盘冗余阵列系统的管理方法和电子设备 | |
CN104516796A (zh) | 一种基于命令集的网元备份与恢复方法及装置 | |
KR100922584B1 (ko) | 객체 기반 분산 공유 시스템 및 그의 방법 | |
CN105404561A (zh) | 一种分布式存储的纠删码实现方法及装置 | |
CN101751231A (zh) | 数据写入、读出方法及装置、虚拟磁带库设备 | |
CN103678025A (zh) | 一种磁盘阵列中的磁盘故障处理方法 | |
CN103064759A (zh) | 数据修复的方法及装置 | |
CN103502970B (zh) | 一种键值对的操作方法及装置 | |
CN110737504A (zh) | 一种深度学习模型训练容错方法、系统、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |