CN110990191B - 一种基于镜像存储的数据恢复方法及系统 - Google Patents

一种基于镜像存储的数据恢复方法及系统 Download PDF

Info

Publication number
CN110990191B
CN110990191B CN201911060874.5A CN201911060874A CN110990191B CN 110990191 B CN110990191 B CN 110990191B CN 201911060874 A CN201911060874 A CN 201911060874A CN 110990191 B CN110990191 B CN 110990191B
Authority
CN
China
Prior art keywords
storage
data
mirror
main
read
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.)
Active
Application number
CN201911060874.5A
Other languages
English (en)
Other versions
CN110990191A (zh
Inventor
赵王义
彭隽
陈林园
朱小明
胡恺珣
袁倩
邱志
胡义华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
722th Research Institute of CSIC
Original Assignee
722th Research Institute of CSIC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 722th Research Institute of CSIC filed Critical 722th Research Institute of CSIC
Priority to CN201911060874.5A priority Critical patent/CN110990191B/zh
Publication of CN110990191A publication Critical patent/CN110990191A/zh
Application granted granted Critical
Publication of CN110990191B publication Critical patent/CN110990191B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于镜像存储的数据恢复方法及系统,方法包括:当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。本发明在将主存储中的数据恢复到镜像存储中时,对主存储和镜像存储写入数据的存储单元设置标志位,避免对主存储中未初始化的存储单元进行数据恢复,以及对镜像存储中已恢复的数据进行再次恢复,提高了数据恢复的效率和减小了数据恢复过程中的冗余。

Description

一种基于镜像存储的数据恢复方法及系统
技术领域
本发明属于数据存储技术领域,尤其涉及一种基于镜像存储的数据恢复方法及系统。
背景技术
当前通信系统、计算机系统等离不开存储设备支持,恶劣环境中的存储设备的存储性能易受影响甚至引发故障,直接导致通信系统或计算机系统的崩溃。针对存储在恶劣环境下可能出现的数据不可靠问题,传统技术领域采用存储热备份和镜像存储的方式。存储热备份和镜像存储都需要两倍的主存储容量,在存储热备份模式下,当存储操作出现错误的次数超过允许阈值,系统开始进行双重写操作(同时写入两个存储),直到两个存储数据完全一致后,再将主存储隔离,备用存储完全替代主存储进行操作。在镜像存储模式下,参见图1,是将存储数据做两个拷贝,分别放在主存储和镜像存储。常见的磁盘阵列RAID1模式就属于一种镜像存储,一旦其中一个存储发生故障,存储控制器就将数据转移到另一个存储,以避免中断,当故障修复后,数据可以进行同步。
因此,镜像存储必须支持热切换和在线添加:数据同时被写入到两个独立的存储中,平时数据的读取只在激活的存储进行,如果一个存储中出现了足以引起系统报警的软故障,系统频繁向管理员报告这个存储将出现故障,或者存储损坏,服务器会自动切换到镜像存储工作,直到故障的存储被替换。
在镜像存储的恢复问题上,传统技术检测到新的存储添加到系统后,需要完全将数据从原主存储拷贝至镜像存储中,这需要借助于镜像管理器完成。由于缺乏适当数据有效标志,所以未初始化数据段也一起参与拷贝,造成数据拷贝过程持续时间很长,延长了系统工作的不可靠时间。另外,数据拷贝期间势必出现与系统访存冲突的问题,这将造成系统的不时卡顿,明显影响系统工作的实时性,情况严重则会出现数据不同步问题,造成虽完成数据恢复但系统状态失效的结果。
发明内容
为克服上述现有问题或者至少部分地解决上述问题,本发明实施例提供一种基于镜像存储的数据恢复方法、系统、电子设备及存储介质。
根据本发明实施例的第一方面,提供一种基于镜像存储的数据恢复方法,包括:
当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
在上述技术方案的基础上,本发明还可以作出如下改进。
进一步的,所述当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位包括:
当系统以单存储方式上电运行且向主存储中写入数据时,将所述主存储中被写入数据的存储单元的标志位置1,所述标志位形成dirty位,存放于所述存储单元的奇偶校验位;
相应的,所述从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中包括:
当存储系统的存储读写通道空闲时,从低地址开始将所述主存储中dirty位为1的存储单元中的数据读出,写入镜像存储中dirty位为0的存储单元中,并对主存储中的存储单元的地址递增,实现数据向镜像存储中的恢复。
进一步的,通过如下方式检测存储系统的存储读写通道是否空闲:
设置一定时器,对所述定时器设定定时器阈值,根据所述定时器阈值定时检测存储系统的存储读写通道是否空闲。
进一步的,还包括:
在数据恢复过程中,若向存储系统中写入数据时,则同时将数据写入主存储和所述镜像存储,且将所述主存储和所述镜像存储中相应的存储单元的dirty位置1。
进一步的,还包括:
在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据。
进一步的,所述在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据还包括:
将向存储系统读取数据的读地址与向所述镜像存储中恢复数据的当前恢复地址进行大小比较;
若读地址大于恢复地址,则将所述主存储中读取的数据恢复到所述镜像存储中,且将所述镜像存储中相应的存储单元的dirty位置1。
进一步的,在将所述主存储中的数据向所述镜像存储中恢复的过程中,当所述主存储中的恢复地址所在的数据已经恢复到所述镜像存储时,则跳过所述恢复地址。
根据本发明实施例第二方面提供一种基于镜像存储的数据恢复系统,包括:
设置模块,用于当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
恢复模块,用于当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
根据本发明实施例的第三个方面,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器调用所述程序指令能够执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的基于镜像存储的数据恢复方法。
根据本发明实施例的第四个方面,还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的基于镜像存储的数据恢复方法。
本发明实施例提供一种基于镜像存储的数据恢复方法、系统、电子设备及存储介质,该方法通过在将主存储中的数据恢复到镜像存储中时,对主存储和镜像存储写入数据的存储单元设置标志位,避免对主存储中未初始化的存储单元进行数据恢复,以及对镜像存储中已恢复的数据进行再次恢复,提高了数据恢复的效率和减小了数据恢复过程中的冗余。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的镜像存储技术示意图;
图2为本发明实施例提供的基于镜像存储的数据恢复方法整体流程示意图;
图3为本发明实施例提供的基于镜像存储的数据恢复方法流程示意图;
图4为本发明实施例提供的基于镜像存储的数据恢复方法主存储的状态流程图;
图5为本发明实施例提供的基于镜像存储的数据恢复方法镜像存储的状态流程图;
图6为本发明实施例提供的基于镜像存储的数据恢复系统示意图;
图7为本发明实施例提供的电子设备整体结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
在本发明的一个实施例中提供一种基于镜像存储的数据恢复方法,图2为本发明实施例提供的基于镜像存储的数据恢复方法整体流程示意图,该方法包括:
当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
可以理解的是,在现有技术中,镜像存储是当主存储出现问题时,将主存储中的数据恢复到镜像存储中,由于是将主存储中的所有数据均恢复到镜像存储中,当主存储中的存储单元中没有数据时,也会对这些存储单元进行遍历,这样会降低数据恢复的效率。为了解决这个问题,本发明实施例当存储系统上电向主存储中写入数据时,将主存储中被写入数据的存储单元设置标志位,表示该存储单元中存储有数据。当向存储系统中插入镜像存储时,表明需要向镜像存储中恢复数据,在将主存储中的数据恢复到镜像存储中时,从主存储的低地址开始,将主存储中具有标志位的数据依次写入镜像存储中的相应地址中,实现从主存储到镜像存储的数据恢复。
本发明实施例通过在将主存储中的数据恢复到镜像存储中时,对主存储和镜像存储写入数据的存储单元设置标志位,避免对主存储中未初始化(对初始化的数据设置了标志位)的存储单元进行数据恢复,以及对镜像存储中已恢复的数据进行再次恢复,提高了数据恢复的效率和减小了数据恢复过程中的冗余。
在上述实施例的基础上,本发明实施例中,所述当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位包括:
当系统以单存储方式上电运行且向主存储中写入数据时,将主存储中被写入数据的存储单元的标志位置1,标志位形成dirty位,存放于存储单元的奇偶校验位;
相应的,从低地址开始将主存储中具有标志位的存储单元中的数据写入镜像存储中包括:
在数据的恢复过程中,当存储系统的存储读写通道空闲时,从低地址开始将主存储中dirty位为1的存储单元中的数据读出,写入镜像存储中dirty位为0的存储单元中,并对主存储中的存储单元的地址递增,实现数据向镜像存储中的恢复。
可以理解的是,除了一些非易失性存储,许多易失性存储都存在存储系统上电后原始数据随机的问题,为了能够准确标记出存储系统操作过的存储单元,便于在数据拷贝恢复过程中有选择性地进行拷贝,至少需要先将所有存储单元的奇偶校验位写0,也可以直接将全部的存储单元写为0。
当向存储单元中写入数据时,将该写入数据的存储单元的奇偶校验位写1,当对主存储中的数据进行恢复时,只需要将主存储中奇偶校验位为1的存储单元中的数据恢复到镜像存储中即可。
在上述各实施例的基础上,本发明实施例中,通过如下方式检测存储系统的存储读写通道是否空闲:
设置一定时器,对定时器设定定时器阈值,根据所述定时器阈值定时检测存储系统的存储读写通道是否空闲。
在上述各实施例的基础上,本发明实施例中,还包括:
在数据恢复过程中,若向存储系统中写入数据时,则同时将数据写入主存储和所述镜像存储,且将主存储和所述镜像存储中相应的存储单元的dirty位置1。
在上述各实施例的基础上,本发明实施例中,还包括:
在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据。
其中,参见图3,在存储系统运行一段时间后,当向存储系统中在线加入第二个存储(即本发明实施例中的镜像存储),在开始将主存储中的数据恢复到镜像存储的过程中,会存在三种情形。
第一种情形,当检测到存储系统的存储读写通道处于空闲状态时,从低地址开始将主存储中dirty位为1的存储单元中的数据读出,写入镜像存储中dirty位为0的存储单元中,并对主存储中的存储单元的地址递增,实现数据向镜像存储中的恢复。
其中,存储读写通道的空闲检测需要利用定时器来实现,通过对定时器设定恰当的定时阈值,这样可以实现对“空转”的存储控制器检测。定时阈值可以设置为在通常情况下访存一次存储系统的时间间隔若干倍,比如3倍,该倍数关系可以通过多次在存储系统测试调优。一旦检测到存储控制器进入空闲状态,就从主存储上次暂停的恢复地址开始,从低地址开始将主存储中dirty位为1的存储单元中的存储数据读出,然后写入镜像存储中相应地址的存储单元。在恢复地址递增情况下,最早开始恢复的地址应该是0,每完成一个存储单元的数据恢复,就将恢复地址递增相应的单元数,由于需要从上次暂停的恢复地址开始继续数据恢复,因此需要对每次的恢复地址单独进行记录和计算。
第二种情形为,在数据恢复的过程中,即将主存储中的数据恢复到镜像存储中的过程中,如果有数据写入存储系统时,即使存储数据的恢复工作正在进行,也不能跳过任何一次存储系统对存储数据的写入操作,否则会出现数据的过时和存储系统工作错误。因此,只要出现存储系统的写存储操作,无论主存储还是镜像存储都需要执行,将数据写入到主存储和镜像存储中相应的存储单元,确保两个存储(主存储和镜像存储)的数据一致性。
第三种情形为,在数据的恢复过程中,当需要从存储系统中读取数据时,由于存储数据的恢复工作正在进行,因此镜像存储还有一些数据未完成恢复,此时还没有能力执行全部地址的存储读操作。对于已经完成恢复的存储单元也可以执行存储读操作,但由于主存储的存在,没有必要在镜像存储也执行这个多余操作。
在上述各实施例的基础上,本发明实施例中,所述在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据还包括:
将向存储系统读取数据的读地址与向所述镜像存储中恢复数据的当前恢复地址进行大小比较;
若读地址大于恢复地址,则将所述主存储中读取的数据恢复到所述镜像存储中,且将所述镜像存储中相应的存储单元的dirty位置1。
其中,在将所述主存储中的数据向所述镜像存储中恢复的过程中,当所述主存储中的恢复地址所在的数据已经恢复到所述镜像存储时,则跳过所述恢复地址。
可以理解的是,由上述实施例可知,虽然镜像存储不需要响应系统的读存储操作,但是通过比较系统读地址(从存储系统中读取数据的地址称为读地址)与恢复地址(将主存储中恢复到镜像存储中的数据的地址称为恢复地址)的大小,避免冗余的访存操作:如果读地址大于恢复地址,则将主存储读取的数据恢复到镜像存储,然后递增恢复地址,这就完成了主存储读操作的同时顺便完成对镜像存储的操作。由于恢复数据的同时也恢复了单元标记,所以下次在空闲状态下恢复到这个“已完成”的单元时可以直接跳过,缩短了数据恢复时间。
下面对主存储和镜像存储的状态进行详细说明。参见图4,图4是主存储状态流程图。主存储从存储系统上电状态开始,然后进入存储初始化状态。在存储初始化状态下,将处于随机状态的存储介质进行数据清洗,即将所有的存储单元的标志位(dirty位)写为0,以便于进行数据标记。结束了存储初始化操作后,判断镜像存储是否插入。如果镜像存储未插入,则进入单存储状态(即主存储一个存储的状态);如果镜像存储已插入,意味着此次上电启动是以双存储方式启动(在存储系统上电时,镜像存储就已经插入了),主存储就进入状态交换1中与镜像存储进行状态交换,交换完成之后处于双存储状态。主存储在单存储状态下进行访存操作时,无需进行状态的交换,但只要镜像存储插入,就进入状态交换2状态中与镜像存储进行状态交换,完成状态交换后进入数据拷贝状态。主存储在数据拷贝的状态下,一边响应系统的访存操作,一边对镜像存储进行数据恢复,数据拷贝状态一直持续到镜像存储数据恢复完成,才到达双存储状态。其中,交换状态1表示主存储与镜像存储是同时进行上电初始化,主存储和镜像存储处于双存储状态;如果从主存储交换得到的是交换状态2,表明镜像存储是在主存储上电进入系统后再插入的,随后需要将主存储中的数据拷贝至镜像存储中。
参见图5,图5为镜像存储的状态流程图,在状态流程图上,镜像存储比主存储的状态稍简单,省去了单存储工作状态和一个状态交换的状态。镜像存储与主存储的初始状态相同,均是从系统上电状态开始,然后进入存储初始化状态。存储的初始化状态完成后,进入状态交换状态与主存储进行状态交换,完成交换后,通过分析与主存储交换得到的状态编码值,镜像存储获悉自身是与主存储同时完成系统上电,还是主存储先完成系统上电,镜像存储随后完成在线插入。如果从主存储交换得到的是交换状态1,表示主存储与镜像存储是同时进行上电初始化,则镜像存储转移至双存储状态;如果从主存储交换得到的是交换状态2,表明镜像存储是在主存储上电进入系统后再插入的,缺少很多主存储已经被系统写入的历史数据,需要从主存储上进行拷贝,因此进入数据拷贝状态,与主存储配合进行数据拷贝恢复。镜像存储在数据拷贝状态下,只执行系统的存储写操作,而不执行存储读操作,确保存储数据被实时更新,不会出现数据过时的问题。镜像存储直到全部数据恢复完成后,最后才转移到双存储工作状态。
在本发明的另一个实施例中提供一种基于镜像存储的数据恢复系统,该系统用于实现前述各实施例中的方法。因此,在前述镜像存储的数据恢复方法的各实施例中的描述和定义,可以用于本发明实施例中各个执行模块的理解。图6为本发明实施例提供的基于镜像存储的数据恢复系统整体结构示意图,该系统包括:
设置模块61,用于当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
恢复模块62,用于当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
本发明实施例提供的基于镜像存储的数据恢复系统与前述各实施例提供的基于镜像存储的数据恢复方法相对应相对应,本发明实施例提供的基于镜像存储的数据恢复系统的相关技术特征可参考前述实施例提供的基于镜像存储的数据恢复方法的相关技术特征,在此不再赘述。
图7示例了一种电子设备的实体结构示意图,该电子设备可以包括:处理器(processor)01、通信接口(Communications Interface)02、存储器(memory)03和通信总线04,其中,处理器01,通信接口02,存储器03通过通信总线04完成相互间的通信。处理器01可以调用存储器03中的逻辑指令,以执行如下方法:
当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
此外,上述的存储器03中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:
当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复。
本发明实施例提供的一种基于镜像存储的数据恢复方法、系统、电子设备及存储介质,通过在将主存储中的数据恢复到镜像存储中时,对主存储和镜像存储写入数据的存储单元设置标志位,避免对主存储中未初始化的存储单元进行数据恢复,以及对镜像存储中已恢复的数据进行再次恢复,提高了数据恢复的效率和减小了数据恢复过程中的冗余;在数据恢复的过程中,当向存储系统中写入数据时,本发明实施例采取同时向主存储和镜像存储写入数据,在数据写入的同时也实现了数据的恢复;当对存储系统进行存储读操作时,如果该数据还未写入镜像存储中时,则将在从主存储中读取数据的同时,将该读取的数据同时写入镜像存储中,后续无需对该数据进行恢复写入,提高了数据恢复的速度和效率。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种基于镜像存储的数据恢复方法,其特征在于,包括:
当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复;
所述数据恢复方法,还包括:
在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据;
所述在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据还包括:
将向存储系统读取数据的读地址与向所述镜像存储中恢复数据的当前恢复地址进行大小比较;
若读地址大于恢复地址,则将所述主存储中读取的数据恢复到所述镜像存储中,且将所述镜像存储中相应的存储单元的dirty位置1。
2.根据权利要求1所述的数据恢复方法,其特征在于,所述当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位包括:
当系统以单存储方式上电运行且向主存储中写入数据时,将所述主存储中被写入数据的存储单元的标志位置1,所述标志位形成dirty位,存放于所述存储单元的奇偶校验位;
相应的,所述从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中包括:
当存储系统的存储读写通道空闲时,从低地址开始将所述主存储中dirty位为1的存储单元中的数据读出,写入镜像存储中dirty位为0的存储单元中,并对主存储中的存储单元的地址递增,实现数据向镜像存储中的恢复。
3.根据权利要求2所述的数据恢复方法,其特征在于,通过如下方式检测存储系统的存储读写通道是否空闲:
设置一定时器,对所述定时器设定定时器阈值,根据所述定时器阈值定时检测存储系统的存储读写通道是否空闲。
4.根据权利要求2所述的数据恢复方法,其特征在于,还包括:
在数据恢复过程中,若向存储系统中写入数据时,则同时将数据写入主存储和所述镜像存储,且将所述主存储和所述镜像存储中相应的存储单元的dirty位置1。
5.根据权利要求1所述的数据恢复方法,其特征在于,在将所述主存储中的数据向所述镜像存储中恢复的过程中,当所述主存储中的恢复地址所在的数据已经恢复到所述镜像存储时,则跳过所述恢复地址。
6.一种基于镜像存储的数据恢复系统,其特征在于,包括:
设置模块,用于当存储系统上电向主存储中写入数据时,对主存储中被写入数据的存储单元设置标志位;
恢复模块,用于当向所述存储系统中插入镜像存储时,从低地址开始将所述主存储中具有标志位的存储单元中的数据写入所述镜像存储中,实现数据的恢复;
数据恢复方法,还包括:
在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据;
所述在数据恢复过程中,若向存储系统读取数据时,则所述主存储执行数据读取操作并返回读取的数据还包括:
将向存储系统读取数据的读地址与向所述镜像存储中恢复数据的当前恢复地址进行大小比较;
若读地址大于恢复地址,则将所述主存储中读取的数据恢复到所述镜像存储中,且将所述镜像存储中相应的存储单元的dirty位置1。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述镜像存储的数据恢复方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一项所述镜像存储的数据恢复方法的步骤。
CN201911060874.5A 2019-11-01 2019-11-01 一种基于镜像存储的数据恢复方法及系统 Active CN110990191B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911060874.5A CN110990191B (zh) 2019-11-01 2019-11-01 一种基于镜像存储的数据恢复方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911060874.5A CN110990191B (zh) 2019-11-01 2019-11-01 一种基于镜像存储的数据恢复方法及系统

Publications (2)

Publication Number Publication Date
CN110990191A CN110990191A (zh) 2020-04-10
CN110990191B true CN110990191B (zh) 2022-06-17

Family

ID=70082851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911060874.5A Active CN110990191B (zh) 2019-11-01 2019-11-01 一种基于镜像存储的数据恢复方法及系统

Country Status (1)

Country Link
CN (1) CN110990191B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067796A (zh) * 2007-06-07 2007-11-07 华为技术有限公司 镜像恢复方法、存储设备及网络系统
CN103597451A (zh) * 2011-03-31 2014-02-19 英特尔公司 用于高可用性的存储器镜像和冗余生成
CN106648957A (zh) * 2015-11-03 2017-05-10 中国移动通信集团安徽有限公司 一种操作系统备份和恢复方法及系统
CN108958978A (zh) * 2018-07-12 2018-12-07 深圳芯邦科技股份有限公司 一种mcu数据恢复方法和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798623B2 (en) * 2012-05-11 2017-10-24 Seagate Technology Llc Using cache to manage errors in primary storage
US20160048428A1 (en) * 2013-09-04 2016-02-18 DataGravity, Inc. Thin provisioned clone

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067796A (zh) * 2007-06-07 2007-11-07 华为技术有限公司 镜像恢复方法、存储设备及网络系统
CN103597451A (zh) * 2011-03-31 2014-02-19 英特尔公司 用于高可用性的存储器镜像和冗余生成
CN106648957A (zh) * 2015-11-03 2017-05-10 中国移动通信集团安徽有限公司 一种操作系统备份和恢复方法及系统
CN108958978A (zh) * 2018-07-12 2018-12-07 深圳芯邦科技股份有限公司 一种mcu数据恢复方法和系统

Also Published As

Publication number Publication date
CN110990191A (zh) 2020-04-10

Similar Documents

Publication Publication Date Title
EP3179359B1 (en) Data sending method, data receiving method, and storage device
CN102521058A (zh) Raid组磁盘数据预迁移方法
CN103970481A (zh) 重建存储器阵列的方法和装置
JP2002328815A (ja) 冗長コントローラシステムからコントローラをオンライン除去する方法
TW201535382A (zh) 動態隨機存取記憶體(dram)列備用技術
CN111046024B (zh) 一种共享存储数据库的数据处理方法、装置、设备及介质
WO2022142544A1 (zh) 防止闪存数据丢失的方法、固态硬盘控制器、固态硬盘
CN104407814B (zh) 双写数据的方法和装置
CN107239411A (zh) 一种车载控制器内存管理方法及系统
CN109117086B (zh) 存储设备数据位置的处理方法、装置、设备及存储介质
EP4027243A1 (en) Data recovery method and related device
CN102025758B (zh) 分布式系统中数据副本的恢复方法、装置和系统
CN104714757A (zh) 更新装置和电子设备
WO2018113322A1 (zh) 数据读取方法及设备
CN103049407B (zh) 数据存储方法、装置及系统
CN105138280A (zh) 数据写入方法、装置及系统
CN113282246B (zh) 数据处理方法及装置
CN108170375B (zh) 一种分布式存储系统中的超限保护方法和装置
CN112131046B (zh) 一种数据缓存方法、系统、设备以及介质
CN110990191B (zh) 一种基于镜像存储的数据恢复方法及系统
CN104407806A (zh) 独立磁盘冗余阵列组硬盘信息的修改方法和装置
CN109165117B (zh) 数据处理的方法和系统
CN106909477A (zh) 一种存储服务器io栈内存数据保护方法及装置
CN115562593A (zh) 一种异常raid成员盘处理方法、装置及介质
JP2006260141A (ja) 記憶システムの制御方法、記憶システム、記憶制御装置、記憶システムの制御プログラム、情報処理システム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Zhao Wangyi

Inventor after: Peng Juan

Inventor after: Chen Linyuan

Inventor after: Zhu Xiaoming

Inventor after: Hu Kaixun

Inventor after: Yuan Qian

Inventor after: Qiu Zhi

Inventor after: Hu Yihua

Inventor before: Zhao Wangyi

Inventor before: Peng Juan

Inventor before: Chen Linyuan

Inventor before: Zhu Xiaoming

Inventor before: Hu Kaixun

Inventor before: Yuan Qian

Inventor before: Qiu Zhi

Inventor before: Hu Yihua

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant