CN104615504B - 一种实现数据保护的方法及装置 - Google Patents
一种实现数据保护的方法及装置 Download PDFInfo
- Publication number
- CN104615504B CN104615504B CN201510065258.4A CN201510065258A CN104615504B CN 104615504 B CN104615504 B CN 104615504B CN 201510065258 A CN201510065258 A CN 201510065258A CN 104615504 B CN104615504 B CN 104615504B
- Authority
- CN
- China
- Prior art keywords
- data
- disk
- request
- bitmap
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000000872 buffer Substances 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 10
- 238000013500 data storage Methods 0.000 claims description 9
- 238000011084 recovery Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000000638 solvent extraction Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 abstract description 6
- 230000000903 blocking effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种实现数据保护的方法及装置,包括:当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;将已存储IO请求的数据的数据块的位图标识置为已更改;将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。本发明技术方案通过监控到每个IO的变化以及位图标识的更改,避了免数据的重复拷贝问题,从而提升了数据保护的效率。
Description
技术领域
本发明涉及数据容灾领域,尤指一种实现数据保护的方法及装置。
背景技术
随着信息产业的互联网化、数字化,企业开始进入办公自动化时代,在此期间会有很多重要的数据产生,这些数据往往都是企业的核心数据,需要保证其安全性:一方面是数据的安全性要得到保障,而另一方面却是这些数据受到硬件损坏,病毒破坏,人为误删的威胁。所以企业不得不需要一种方法和手段来保护这些数据,并且由于某些业务数据是连续产生的,要能够实时的备份这些数据。当数据被损坏或丢失时,要能够恢复这些数据,而且恢复数据的速度要尽量快。传统磁盘镜像往往都是直接采用数据拷贝,这样做会存在以下两个问题:一是,无法监控每个输入输出(IO)操作的变化(一般备份方式为在某个时间点对磁盘数据进行拷贝操作,在两个时间点之间的变化数据就会造成漏掉的情况),从而可能导致会漏掉某个IO操作的数据(包括写数据和读数据,尤其是当IO操作的数据为写数据时,因为漏掉了该数据,导致原本存储该数据的位置没有存储该数据以及无法正确的备份该数据至备份端);二是,在备份数据时还存在在主机遇到异常时的重复拷贝的问题。
发明内容
为了解决上述技术问题,本发明提供了一种实现数据保护的方法及装置,能够监控到每个IO的变化避免数据的重复拷贝问题,从而提升数据保护的效率。
为了达到本发明目的,本发明提供了一种实现数据保护的方法,包括:
当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;
当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;
将已存储IO请求的数据的数据块的位图标识置为已更改;
将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
进一步地,该方法之前还包括:预先设置划分策略:将各个磁盘划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;
其中,第一分块值小于第二分块值。
进一步地,该方法之前还包括:创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
进一步地,所述二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字标识为数据块传输时间;
其中,第一级索引使用Hash算法,第二级索引使用B树算法。
进一步地,所述IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区。
进一步地,所述根据提取到的IO请求的信息判断IO请求的数据是否为有效数据,包括:获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
进一步地,所述当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中,包括:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置;
将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。
进一步地,所述将已存储IO请求的数据的数据块的位图标识置为已更改,包括:获取将已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号的位图标识和磁盘位图中的数据块号的位图标识为已更改。
进一步地,所述将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上,包括:
当所述磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历所述内存位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当所述磁盘所属的主机发生异常重启或关机并恢复后,遍历所述磁盘位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
本发明还提供了一种实现数据保护的装置,包括:判断模块、存储模块、位图标识模块和处理模块;其中,
判断模块,用于当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;
存储模块,用于当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;
位图标识模块,用于将已存储IO请求的数据的数据块的位图标识置为已更改;
处理模块,用于将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
进一步地,该装置还包括:第一预先处理模块,用于预先设置划分策略:将各个磁盘划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;
其中,第一分块值小于第二分块值。
进一步地,该装置还包括:第二预先处理模块,用于创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
进一步地,所述二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字标识为数据块传输时间;
其中,第一级索引使用Hash算法,第二级索引使用B树算法。
进一步地,所述IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区。
进一步地,所述判断模块,具体用于:获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
进一步地,所述存储模块,具体用于:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置;
将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。
进一步地,所述位图标识模块,具体用于:获取将已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号的位图标识和磁盘位图中的数据块号的位图标识为已更改。
进一步地,所述处理模块,具体用于:
当所述磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历所述内存位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当所述磁盘所属的主机发生异常重启或关机并恢复后,遍历所述磁盘位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
本发明技术方案包括:当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;将已存储IO请求的数据的数据块的位图标识置为已更改;将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。本发明技术方案通过监控到每个IO的变化以及位图标识的更改,避了免数据的重复拷贝问题,从而提升了数据保护的效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实现数据保护的方法的流程图;
图2为本发明日志卷的二级索引组织图;
图3为本发明实现数据保护的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本发明实现数据保护的方法的流程图,如图1所示,包括:
步骤101:当拦截到IO请求时,提取该IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据。
其中,IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区等。
其中,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据,具体包括:
获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
需要说明的是,可以使用现有底层磁盘过滤驱动技术来完成IO请求的拦截。
进一步地,该方法之前还包括:创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
进一步地,该方法之前还包括:预先设置划分策略:将各个磁盘划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;
其中,第一分块值小于第二分块值。其中,内存位图存储在内存中,磁盘位图存储在磁盘中。其中,内存位图和磁盘位图中每个数据块的初始位图标识可以取0。
需要说明的是,关于如何建立内存位图和磁盘位图,属于本领域技术人员所熟知的惯用技术手段,在此不再赘述。
举例说明,第一分块值和第二分块值可以根据实际情况进行取值,只需第一分块值小于第二分块值即可,例如第一分块值可以取4KB,第二分块值可以取4MB。在内存位图和磁盘位图中,内存介质因其读写速度快,应保存粒度较小的位图,如1bit表示4KB大小的磁盘块是否变化,而采用磁盘介质表示的位图因读写速度慢,所保存的位图粒度应较大,如1bit表示4MB大小的磁盘块是否变化;如果1个磁盘块发生了变化,则对应数据块所在的内存位图中的位图标识改为已修改,如1,同时对应块所在的磁盘位图中的位图标识改为已修改,如1,此时如果主机发生网络异常,则恢复后采用内存中的位图只要重传4KB数据就可以;如果主机发生异常重启或关机,则恢复后采用磁盘中的位图需重传4MB的数据。
步骤102:当提取到的该IO请求的信息为有效数据时,将该IO请求的数据存放到与该IO请求的信息对应的磁盘中。
其中,将该IO请求的数据存放到与该IO请求的信息对应的磁盘中,包括:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置,将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。这个位置即称为与该IO请求的信息对应的磁盘。其中,如何计算出IO请求的数据存储的位置属于本领域技术人员的公知技术,具体实现并不用于限定本发明的保护范围,这里不再赘述。
需要说明的是,关于如何根据IO请求的信息计算IO请求的数据存放的具体位置属于本领域技术人员所熟知的惯用技术手段,在此不再赘述,并不用来限制本发明。
步骤103:将已存储IO请求的数据的数据块的位图标识置为已更改。具体包括:获取将已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号的位图标识为已更改。
其中,可以将已更改数据块的位图标识置为1。
需要说明的是,关于如何根据已存储IO请求的数据的数据块的具体存放位置计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号,属于本领域技术人员所熟知的公知常识,在此不再赘述。
进一步地,该方法还包括:当提取到的该IO请求的信息为有效数据时,可以将此有效数据发送给预先建立的具有一定存储大小的发送队列中;当发送队列已满时,则丢弃当前的有效数据,并置已存储的IO请求的数据的数据块的位图标识置为已更改。
步骤104:将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。具体包括:
当磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历内存位图中已更改位图标识的数据块;将已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当磁盘所属的主机发生异常重启或关机并恢复后,遍历磁盘位图中已更改位图标识的数据块;将已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
另外,该方法还可以包括:当发送队列空闲时,遍历并读取内存位图中位图标识为已更改的数据块,将已更改的位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
其中,二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字标识为数据块传输时间;其中,第一级索引使用Hash算法,第二级索引使用B树算法。日志卷的二级索引组织图如图2所示,索引分为两级,第一一级索引的关键子为块号(数据块标识,每个数据块的大小为第一分块值大小,如4KB)按照。在确定块号后,再通过第二级索引定位对应时间的数据块。对于一个(块号,时间)关键字,首先通过块号从第一级索引直接定位B树根结点,进而利用时间关键字从找到的B树根结点中查找对应的结点。
进一步地,该方法之后还包括:当位图标识置为已更改的数据块已存储在与磁盘相对应的日志卷上之后,恢复内存位图和磁盘位图中已存储在与磁盘相对应的日志卷上的数据块的位图标识为初始位图标识,如0。
本发明方法通过拦截IO请求,可以使得对每一个IO请求进行操作,不会漏掉某个IO操作的数据;通过对更改数据块的位图标识以及采用二级索引的方式存储拦截的IO请求的数据,能够避免数据的重复拷贝,提升了数据保护的效率。本发明方法只需提供一个保护后的时间点,就可以提取该磁盘上所有的该时间点的数据生成保护之后任意时间点的一个虚拟卷,可以快速的恢复一个磁盘设备,并且虚拟卷支持读写操作。
图3为本发明实现数据保护的装置的结构示意图,如图3所示,包括:判断模块、存储模块、位图标识模块和处理模块。其中,
判断模块,用于当拦截到IO请求时,提取该IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据。
其中,IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区。
其中,判断模块,具体用于:获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
存储模块,用于当IO请求的数据为有效数据时,将该IO请求的数据存放到与该IO请求的信息对应的磁盘中。
其中,存储模块,具体用于:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置;
将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。
位图标识模块,用于将已存储IO请求的数据的数据块的位图标识置为已更改。
其中,位图标识模块,具体用于:获取将已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号的位图标识和磁盘位图中的数据块号的位图标识为已更改。
处理模块,用于将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
其中,处理模块,具体用于:
当磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历内存位图中已更改位图标识的数据块;将已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当磁盘所属的主机发生异常重启或关机并恢复后,遍历磁盘位图中已更改位图标识的数据块;将已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
进一步,处理模块,还用于:当位图标识置为已更改的数据块已存储在与磁盘相对应的日志卷上之后,恢复已存储在与磁盘相对应的日志卷上的数据块的位图标识为初始位图标识,如0。
进一步地,该装置还包括:第一预先处理模块,用于预先设置划分策略:将各个磁盘划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;其中,第一分块值小于第二分块值。
其中,内存位图和磁盘位图中每个数据块的初始位图标识可以取0。
以及,该装置还包括:第二预先处理模块,用于创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
其中,二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字标识为数据块传输时间;
其中,第一级索引使用Hash算法,第二级索引使用B树算法。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种实现数据保护的方法,其特征在于,包括:
当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;
当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;
将已存储IO请求的数据的数据块的位图标识置为已更改;
将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:预先设置划分策略:将内存划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;
其中,第一分块值小于第二分块值。
3.根据权利要求1所述的方法,其特征在于,该方法之前还包括:创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
4.根据权利要求1所述的方法,其特征在于,所述二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字为数据块传输时间;
其中,第一级索引使用Hash算法,第二级索引使用B树算法。
5.根据权利要求1所述的方法,其特征在于,所述IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区。
6.根据权利要求5所述的方法,其特征在于,所述根据提取到的IO请求的信息判断IO请求的数据是否为有效数据,包括:获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
7.根据权利要求5所述的方法,其特征在于,所述当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中,包括:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置;
将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。
8.根据权利要求2或7所述的方法,其特征在于,所述将已存储IO请求的数据的数据块的位图标识置为已更改,包括:获取已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号的位图标识和磁盘位图中的数据块号的位图标识为已更改。
9.根据权利要求2所述的方法,其特征在于,所述将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上,包括:
当所述磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历所述内存位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当所述磁盘所属的主机发生异常重启或关机并恢复后,遍历所述磁盘位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
10.一种实现数据保护的装置,其特征在于,包括:判断模块、存储模块、位图标识模块和处理模块;其中,
判断模块,用于当拦截到IO请求时,提取IO请求的信息,根据提取到的IO请求的信息判断IO请求的数据是否为有效数据;其中,IO请求包括IO请求的信息和IO请求的数据;
存储模块,用于当IO请求的数据为有效数据时,将IO请求的数据存放到与该IO请求的信息对应的磁盘中;
位图标识模块,用于将已存储IO请求的数据的数据块的位图标识置为已更改;
处理模块,用于将位图标识置为已更改的数据块上的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
11.根据权利要求10所述的装置,其特征在于,该装置还包括:第一预先处理模块,用于预先设置划分策略:将内存划分为第一分块值大小的数据块并建立对应于第一分块值大小的数据块的内存位图;以及,将各个磁盘划分为第二分块值大小的数据块并建立对应于第二分块值大小的数据块的磁盘位图;
其中,第一分块值小于第二分块值。
12.根据权利要求10所述的装置,其特征在于,该装置还包括:第二预先处理模块,用于创建各个磁盘的备份卷和日志卷,并通过各个磁盘的标识建立各个磁盘与备份卷、日志卷的一一对应关系;
同步各个磁盘上的数据到对应的备份卷上。
13.根据权利要求10所述的装置,其特征在于,所述二级索引包括:第一级索引关键字为数据块标识,第二级索引关键字为数据块传输时间;
其中,第一级索引使用Hash算法,第二级索引使用B树算法。
14.根据权利要求10所述的装置,其特征在于,所述IO请求的信息包括:写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区。
15.根据权利要求14所述的装置,其特征在于,所述判断模块,具体用于:获取用户下发的保护项列表;保护项列表中包括:需要保护的磁盘;
获取IO请求的信息中的写入磁盘设备对象;
判断获得的IO请求的信息中的写入磁盘设备对象是否是需要保护的磁盘;
当获得的IO请求的信息中的写入磁盘设备对象是需要保护的磁盘时,则IO请求的数据为有效数据。
16.根据权利要求14所述的装置,其特征在于,所述存储模块,具体用于:根据IO请求的信息中的写入磁盘设备对象、磁盘扇区偏移、写入数据长度和数据缓冲区,计算IO请求的数据存放的具体位置;
将IO请求的数据存放到计算出的IO请求的数据存放的具体位置。
17.根据权利要求11或16所述的装置,其特征在于,所述位图标识模块,具体用于:获取已存储IO请求的数据的数据块的具体存放位置;
根据获得的已存储IO请求的数据的数据块的具体存放位置,分别计算出对应于该存放位置的内存位图中的数据块号和磁盘位图中的数据块号;
分别更改计算出的对应于该存放位置的内存位图中的数据块号的位图标识和磁盘位图中的数据块号的位图标识为已更改。
18.根据权利要求11所述的装置,其特征在于,所述处理模块,具体用于:
当所述磁盘所属的主机正常工作时或发生网络异常并恢复后,遍历所述内存位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上;
当所述磁盘所属的主机发生异常重启或关机并恢复后,遍历所述磁盘位图中已更改位图标识的数据块;将所述已更改位图标识的数据块对应的数据传输给与磁盘相对应的日志卷,并按照二级索引的方式存储在与磁盘相对应的日志卷上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510065258.4A CN104615504B (zh) | 2015-02-06 | 2015-02-06 | 一种实现数据保护的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510065258.4A CN104615504B (zh) | 2015-02-06 | 2015-02-06 | 一种实现数据保护的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104615504A CN104615504A (zh) | 2015-05-13 |
CN104615504B true CN104615504B (zh) | 2017-11-10 |
Family
ID=53149960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510065258.4A Active CN104615504B (zh) | 2015-02-06 | 2015-02-06 | 一种实现数据保护的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104615504B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943807B (zh) * | 2016-10-13 | 2020-06-16 | 华为技术有限公司 | 一种数据处理方法及存储设备 |
CN109284621B (zh) * | 2017-07-19 | 2022-10-25 | 阿里巴巴集团控股有限公司 | 数据保护/恢复方法和装置以及数据存储/保护方法 |
CN109542329B (zh) * | 2017-09-21 | 2022-04-12 | 阿里云计算有限公司 | 日志写入方法、存储管理设备及系统 |
CN107632792A (zh) * | 2017-10-13 | 2018-01-26 | 郑州云海信息技术有限公司 | 云数据系统中管理虚拟磁盘的方法和装置 |
CN110134340B (zh) * | 2019-05-23 | 2020-03-06 | 苏州浪潮智能科技有限公司 | 一种元数据更新的方法、装置、设备以及存储介质 |
CN113010259A (zh) * | 2019-12-20 | 2021-06-22 | 上海云轴信息科技有限公司 | 两节点超融合一体机的存储方法及设备 |
CN111597152B (zh) * | 2020-05-20 | 2023-04-21 | 杭州海康威视系统技术有限公司 | 固态硬盘文件系统管理方法、装置及电子设备 |
CN112379844A (zh) * | 2020-11-25 | 2021-02-19 | 深圳市华宝电子科技有限公司 | 一种数据保护方法、装置、电子终端及存储介质 |
CN112395136B (zh) * | 2021-01-20 | 2021-04-16 | 深圳市中科鼎创科技股份有限公司 | 结合快照技术的持续数据保护系统 |
CN114443364B (zh) * | 2021-12-27 | 2024-07-05 | 天翼云科技有限公司 | 一种分布式块存储数据处理方法、装置、设备及存储介质 |
CN114461456B (zh) * | 2022-04-11 | 2022-06-21 | 成都云祺科技有限公司 | 基于连续写cdp备份方法、系统、存储介质及恢复方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206656A (zh) * | 2006-12-22 | 2008-06-25 | 英业达股份有限公司 | 文件安全删除系统及方法 |
CN102306128A (zh) * | 2011-09-16 | 2012-01-04 | 北京星网锐捷网络技术有限公司 | 磁盘管理方法、装置及网络设备 |
CN103389926A (zh) * | 2013-06-25 | 2013-11-13 | 百度在线网络技术(北京)有限公司 | 一种用于对虚拟磁盘进行备份的方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102012851B (zh) * | 2010-12-20 | 2012-09-26 | 浪潮(北京)电子信息产业有限公司 | 一种持续数据保护方法及服务器 |
CN103593256B (zh) * | 2012-08-15 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种基于多层排重的虚机快照备份方法和系统 |
CN102880671A (zh) * | 2012-09-07 | 2013-01-16 | 浪潮电子信息产业股份有限公司 | 一种面向分布式文件系统的主动重复数据删除方法 |
-
2015
- 2015-02-06 CN CN201510065258.4A patent/CN104615504B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206656A (zh) * | 2006-12-22 | 2008-06-25 | 英业达股份有限公司 | 文件安全删除系统及方法 |
CN102306128A (zh) * | 2011-09-16 | 2012-01-04 | 北京星网锐捷网络技术有限公司 | 磁盘管理方法、装置及网络设备 |
CN103389926A (zh) * | 2013-06-25 | 2013-11-13 | 百度在线网络技术(北京)有限公司 | 一种用于对虚拟磁盘进行备份的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104615504A (zh) | 2015-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104615504B (zh) | 一种实现数据保护的方法及装置 | |
Min et al. | Amoeba: An autonomous backup and recovery SSD for ransomware attack defense | |
US11341003B2 (en) | Availability of a storage system | |
US9690666B1 (en) | Incremental backup operations in a transactional file system | |
US8868858B2 (en) | Method and apparatus of continuous data backup and access using virtual machines | |
US20070208918A1 (en) | Method and apparatus for providing virtual machine backup | |
CN104077380B (zh) | 一种重复数据删除方法、装置及系统 | |
US10983867B1 (en) | Fingerprint change during data operations | |
CN104360914B (zh) | 增量快照方法和装置 | |
WO2016041384A1 (zh) | 重复数据删除方法和装置 | |
US10725907B2 (en) | Information processing apparatus for specifying data region of garbage collection, information processing system and information processing method | |
CN102323930B (zh) | 对数据库系统中的数据变更进行镜像 | |
CN103034592B (zh) | 数据处理方法和装置 | |
US10572335B2 (en) | Metadata recovery method and apparatus | |
US9785641B2 (en) | Reducing a backup time of a backup of data files | |
CN111506253A (zh) | 一种分布式存储系统及其存储方法 | |
CN103942124A (zh) | 一种数据备份的方法及装置 | |
US20170269847A1 (en) | Method and Device for Differential Data Backup | |
RU2665272C1 (ru) | Способ и устройство для восстановления дедуплицированных данных | |
US20140337301A1 (en) | Big data extraction system and method | |
CN104965835A (zh) | 一种分布式文件系统的文件读写方法及装置 | |
US20170147441A1 (en) | Selective Data Roll-Back and Roll-Forward | |
CN105608150A (zh) | 一种业务数据的处理方法及系统 | |
CN102609371B (zh) | 基于数据安全的系统保护方法 | |
CN104331344A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |