CN105824724A - 一种差异数据扫描方法及装置 - Google Patents

一种差异数据扫描方法及装置 Download PDF

Info

Publication number
CN105824724A
CN105824724A CN201610188629.2A CN201610188629A CN105824724A CN 105824724 A CN105824724 A CN 105824724A CN 201610188629 A CN201610188629 A CN 201610188629A CN 105824724 A CN105824724 A CN 105824724A
Authority
CN
China
Prior art keywords
difference
granularity
difference granularity
mapping
length
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
Application number
CN201610188629.2A
Other languages
English (en)
Other versions
CN105824724B (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.)
Macrosan Technologies Co Ltd
Original Assignee
Macrosan Technologies Co Ltd
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 Macrosan Technologies Co Ltd filed Critical Macrosan Technologies Co Ltd
Priority to CN201610188629.2A priority Critical patent/CN105824724B/zh
Publication of CN105824724A publication Critical patent/CN105824724A/zh
Application granted granted Critical
Publication of CN105824724B publication Critical patent/CN105824724B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供一种差异数据扫描方法以及装置,其中该方法包括:接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。本申请在基于消息摘要算法扫描时,通过按需进行差异计算,避免对所有差异粒度对应数据区域进行差异计算,降低了存储的资源消耗,提升了在线业务以及复制业务的整体性能。

Description

一种差异数据扫描方法及装置
技术领域
本申请涉及网络存储技术领域,尤其涉及一种差异数据扫描方法及装置。
背景技术
在进行基于自动精简配置LUN(LogicalUnitNumber,逻辑单元号)的远程复制时,首次复制进行全量复制,后续再由源LUN通过复制链路向灾难备份中心(副本LUN)同步数据,此时,仅传输两个复制时间点之间发生变化的数据。由于在两次复制之间,IO可能会映射新空间、回收旧空间,造成源LUN上差异粒度的映射情况发生改变,因此在复制时需要将这些改变的差异粒度扫描出来,并同步到副本LUN上对应的差异粒度。
现有的扫描处理方法为:遍历所有差异粒度,按照预设算法获取并比较源LUN上差异粒度对应数据与副本LUN上差异粒度对应数据的摘要信息,以确定两端数据是否一致,若一致,则继续查询下一个差异粒度,不一致则设置差异位。
然而,现有技术中在判断源LUN与副本LUN数据的一致性时,对扫描到的源LUN上的每个差异粒度都要统一对副本LUN上对应差异粒度的数据进行摘要信息的计算,进而造成多余的摘要信息计算和比较,不但浪费了计算资源,还降低了处理效率。
发明内容
有鉴于此,本申请提供一种差异数据扫描方法及装置,具体地,本申请是通过如下技术方案实现的:
本申请提供一种差异数据扫描方法,应用于副本逻辑单元号LUN,该方法包括:
接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
本申请还提供一种差异数据扫描装置,应用于副本LUN,该装置包括:
长度计算单元,用于接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
第一确定单元,用于根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
信息发送单元,用于将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
由以上描述可以看出,本申请提供一种差异数据扫描方法及装置将源LUN与副本LUN之间的差异粒度对应数据的差异判断交给副本LUN处理,进而平衡扫描过程中源LUN与副本LUN的工作量。并且,在基于消息摘要算法扫描时,通过按需进行差异计算,避免对所有差异粒度对应数据区域进行差异计算,降低了存储的资源消耗,提升了在线业务以及复制业务的整体性能。
附图说明
图1是本申请一示例性实施例示出的一种差异数据扫描方法所应用的网络环境示意图;
图2是本申请一示例性实施例示出的一种差异数据扫描方法流程图;
图3是本申请一示例性实施例示出的一种差异数据扫描装置所在设备的基础硬件结构示意图;
图4是本申请一示例性实施例示出的一种差异数据扫描装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1,为本申请差异数据扫描方法所应用的网络环境示意图。包括源LUN以及副本LUN,源LUN是一个复制关系中的源资源,副本LUN则是一个复制关系中的目的资源。
参见图2,为本申请差异数据扫描方法的一个实施例流程图,应用于副本LUN,该实施例对差异数据扫描过程进行描述。
步骤201,接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
基于精简LUN进行远程复制时,由于在两次复制之间,上层应用可以连续下发大量IO,这些IO可能是读、写、unmap(用于回收精简LUN上指定物理空间的命令)等操作。其中,写操作以及unmap会改变数据区域的映射情况。因此在复制之前,源LUN需要将这些改变的数据区域扫描出来,并同步到副本LUN上对应的差异粒度。由于差异比较的工作一般放在源LUN上,导致源LUN负担较重,而副本LUN又比较空闲,因此使得源LUN的复制效率也被降低。
本示例实施方式中,源LUN可以循环扫描差异位图中的各差异粒度,依次获取当前扫描的差异粒度的大小以及该差异粒度的空洞总大小,并根据该差异粒度的大小以及该差异粒度的空洞总大小计算出该差异粒度的映射长度,还可以根据该映射长度确定出该差异粒度对应数据的映射状态。其中,差异粒度对应数据可能存在两种映射状态:全部未映射状态、存在映射状态,存在映射又包括部分映射状态、全部映射状态。
该差异粒度的大小为预先设置的。在目前数据量飞速增长的情况下,LUN容量通常很大,若与LUN对应的差异粒度设置的较小,由差异粒度组成的差异位图所占用的空间就会变大。不仅如此,维护差异位图的代价也将越来越大,需要考虑差异位图所占的资源、差异位图的更新频率、差异位图的访问速度、对复制源在线业务的影响等诸多因素。因此,目前复制的通用实现中,差异粒度都比较粗,一般可以预设为大于64KB。
该空洞总大小的计算则是首先通过读操作读一个差异粒度所返回的空洞统计信息,即:一个差异粒度的空洞个数以及各空洞大小;之后根据该差异粒度的空洞个数以及各空洞大小计算出该差异粒度的空洞总大小。
而该差异粒度的映射长度则是将差异粒度大小减去该粒度上空洞总大小获得的差值,若差异粒度对应数据的映射状态是全部未映射状态,则映射长度为0。
为了减轻源LUN的工作负担,在源LUN在计算出当前获取的差异粒度(下称第一差异粒度)的映射长度(下称第一映射长度)后,可以由源LUN向副本LUN发起扫描请求,并将该第一映射长度携带在该扫描请求中发送给副本LUN,并由副本LUN来确定该第一差异粒度对应的数据与副本LUN上对应空间的差异粒度(下称第二差异粒度)对应的数据是否存在差异。
具体地,在副本LUN接收到源LUN发送的第一差异粒度的第一映射长度时,副本LUN根据该第一映射长度确定出该第一差异粒度对应数据的映射状态,并计算该副本LUN上与第一差异粒度对应空间的第二差异粒度的映射长度(下称第二映射长度)。其中,该第二差异粒度的第二映射长度的计算方法可以参考源LUN计算第一差异粒度的第一映射长度时的计算方法,在此不再赘述。
本示例实施方式中,可以根据计算出的差异粒度的映射长度确定出与该差异粒度对应数据的映射状态,相应地,在计算出第二差异粒度的第二映射长度后,副本LUN可以根据计算出的第二差异粒度的第二映射长度确定出该第二差异粒度对应数据的映射状态。
步骤202,根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
在计算出第二差异粒度的第二映射长度,并确定出该第二差异粒度对应数据的映射状态后,进一步将计算出的第二映射长度与源LUN发送的第一差异粒度的第一映射长度进行比较,并根据比较结果设置对应的动作信息。具体可以包括以下几种:
1、若所述第一映射长度以及所述第二映射长度相同,且所述第一差异粒度对应数据以及第二差异粒度对应数据的映射状态均为已映射状态,计算所述第二差异粒度对应数据的第一摘要信息;所述动作信息包括所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息的动作。
具体地,当第一映射长度以及第二映射长度相同,并且第一差异粒度以及第二差异粒度的映射状态均为已映射状态时,即:源LUN与副本LUN这两端的对应差异粒度的映射长度相等且非0,说明两次复制期间,两端的第一差异粒度对应数据以及第二差异粒度对应数据可能未变化,或者,虽然第一差异粒度对应数据以及第二差异粒度对应数据发生过变化,但仅仅变化了已映射数据的具体值或分布情况,而映射长度恰巧没有变。
在这种情况下,则需要通过预设算法计算与第二差异粒度对应数据的摘要信息(下称第一摘要信息),该预设算法可以是消息摘要算法,即,通过消息摘要算法计算出与第二差异粒度对应数据的MD5值。并将与第二差异粒度对应数据的MD5值以及通知所述源LUN计算与第一差异粒度对应数据的MD5值的动作作为动作信息。
2、若根据所述第一映射长度以及第二映射长度确定所述第一差异粒度与所述第二差异粒度对应数据的映射状态均为全部未映射状态,确定与所述第一差异粒度对应数据以及与第二差异粒度对应数据无差异;该动作信息包括数据无差异的结果。
具体地,当确定第一差异粒度与第二差异粒度对应数据的映射状态均为全部未映射状态时(第一映射长度与第二映射长度均为0),说明两端的差异粒度均为空洞,与第一差异粒度与第二差异对应的空间均未被写入数据,则确定第一差异粒度对应数据与第二差异粒度对应数据无差异。并将数据无差异的结果作为动作信息。
3、当所述第一映射长度与所述第二映射长度不相同时,确定与所述第一差异粒度对应数据以及与第二差异粒度对应数据存在差异,所述动作信息包括将与第一差异粒度对应的差异位标记为存在差异。
具体地,当确定第一映射长度与第二映射长度不相同时,说明在两次复制期间与第一差异粒度以及第二差异对应的数据有变化,则确定与第一差异粒度对应的数据以及与第二差异粒度对应的数据有差异,而无需再去计算、比较第一差异粒度对应数据以及第二差异粒度对应数据的MD5值。并将与第一差异粒度对应的差异位标记为存在差异的动作作为动作信息。
步骤203,将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
副本LUN在比较了第一映射长度以及第二映射长度,以及第一差异粒度以及第二差异粒度对应数据的映射状态得出上述多种动作信息后,可以将对应的动作信息携带在扫描响应中发送给源LUN。具体为:
1、当动作信息包括第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息时,指示源LUN计算第一差异粒度对应数据的MD5值(第二摘要信息),并由源LUN将第一差异粒度对应数据的MD5值与第二差异粒度对应数据的MD5值进行比较,以确定第一差异粒度对应数据与第二差异粒度对应数据是否存在差异。
2、当动作信息包括数据无差异时,将数据无差异的动作信息携带在发往源LUN的扫描响应信息中,以指示源LUN继续扫描下一个差异粒度。
3、当动作信息包括将与第一差异粒度对应的差异位标记为存在差异时,将与第一差异粒度对应的差异位标记为存在差异的动作信息携带在发往源LUN的扫描响应信息中,以指示源LUN将该第一差异粒度的差异位标记为有差异,并继续扫描下一个差异粒度。
之后,源LUN在接收到副本LUN返回的扫描响应后,即可以根据扫描响应中携带的动作信息执行相应的处理,例如:
当源LUN接收的扫描响应的动作信息为与第二差异粒度对应数据的MD5值以及通知所述源LUN计算与第一差异粒度对应数据的MD5值的动作时,源LUN确定第一差异粒度对应数据与第二差异粒度对应数据是否一致,具体过程为:判断第一差异粒度对应数据的MD5值与第二差异粒度对应数据的MD5值是否一致,若一致,确定第一差异粒度对应数据与第二差异粒度对应数据无差异;否则第一差异粒度对应数据与第二差异粒度对应数据存在差异。
当源LUN确定第一差异粒度对应数据与第二差异粒度对应数据无差异时,由于在上次复制结束后差异位图的各个差异粒度的差异位均被标记为无差异(例如被标记为0),因此在确定两端数据无差异时,无需对第一差异粒度的差异位进行标记,源LUN继续扫描下一个差异粒度即可;当第一差异粒度对应数据与第二差异粒度对应数据存在差异时,源LUN将该第一差异粒度的差异位标记为有差异(例如标记为1),并继续扫描下一个差异粒度。
当源LUN接收的扫描响应的动作信息为数据无差异时,则无需对第一差异粒度的差异位进行标记,继续扫描下一个差异粒度即可。
当源LUN接收的扫描响应的动作信息为将与第一差异粒度对应的差异位标记为存在差异时,源LUN将与第一差异粒度对应的差异位标记为存在差异,并继续扫描下一个差异粒度。
当源LUN将差异位图的所有差异粒度逐一扫描完毕后,则可以根据扫描出的存在差异的数据复制到副本LUN,并在将存在差异的数据复制到副本LUN后,将对应的差异粒度的差异位标记为无差异。
这样一来,本示例实施方式则更加智能化的完成对整个源LUN的差异数据的复制。
本示例实施方式中利用自动精简配置的特性,将源LUN与副本LUN之间的差异粒度对应数据的差异判断交给副本LUN处理,进而平衡扫描过程中源LUN与副本LUN的工作量。并且,在基于消息摘要算法扫描时,本示例实施方式按需进行差异计算,避免对所有差异粒度对应数据区域进行差异计算,减少不必要的开销,降低了存储的资源消耗,提升了在线业务以及复制业务的整体性能。
与前述差异数据扫描方法的实施例相对应,本申请还提供了差异数据扫描装置的实施例。
本申请差异数据扫描装置的实施例可以应用在存储节点上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器运行存储器中对应的计算机程序指令形成的。从硬件层面而言,如图3所示,为本申请差异数据扫描装置所在设备的一种硬件结构图,除了图3所示的处理器、网络接口、以及存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图4,为本申请一个实施例中的差异数据扫描装置的结构示意图。该差异数据扫描装置应用于副本LUN,包括长度计算单元401、第一确定单元402以及信息发送单元403,其中:
长度计算单元401,用于接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
第一确定单元402,用于根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
信息发送单元403,用于将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
进一步地,所述装置还包括第二确定单元404,用于根据所述第一映射长度确定出所述第一差异粒度对应数据的映射状态;根据所述第二映射长度确定出所述第二差异粒度对应数据的映射状态。
进一步地,所述第一确定单元402具体用于若所述第一映射长度以及所述第二映射长度相同,且所述第一差异粒度对应数据以及第二差异粒度对应数据的映射状态均为已映射状态,计算所述第二差异粒度对应数据的第一摘要信息;所述动作信息包括所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息;将所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息的动作信息发送至所述源LUN,以通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息,并根据所述第一摘要信息以及第二摘要信息判断所述第一差异粒度对应数据以及所述第二差异粒度对应数据是否存在差异。
进一步地,所述第一确定单元402具体用于:若根据所述第一映射长度以及第二映射长度确定所述第一差异粒度与所述第二差异粒度对应数据的映射状态均为全部未映射状态,确定所述第一差异粒度对应数据以及第二差异粒度对应数据无差异;所述动作信息包括数据无差异;将数据无差异的动作信息发送至所述源LUN,以使所述源LUN根据数据无差异的动作信息循环扫描下一个差异粒度。
进一步地,所述第一确定单元402具体用于:若所述第一映射长度与所述第二映射长度不相同,确定与所述第一差异粒度对应数据以及与第二差异粒度对应数据存在差异;所述动作信息包括将与第一差异粒度对应的差异位标记为存在差异;将与第一差异粒度对应的差异位标记为存在差异的动作信息发送至所述源LUN,以使所述源LUN根据存在差异的动作信息将与第一差异粒度对应的差异位标记为存在差异。
进一步地,所述长度计算单元401具体用于获取所述第二差异粒度大小以及所述第二差异粒度的空洞总大小;所述第二映射长度为所述第二差异粒度大小与所述第二差异粒度的空洞总大小的差值。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (12)

1.一种差异数据扫描方法,应用于副本逻辑单元号LUN,其特征在于,还包括源LUN,所述方法包括:
接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述第一映射长度确定出所述第一差异粒度对应数据的映射状态;
根据所述第二映射长度确定出所述第二差异粒度对应数据的映射状态。
3.如权利要求2所述的方法,其特征在于,根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息具体包括:
若所述第一映射长度以及所述第二映射长度相同,且所述第一差异粒度对应数据以及第二差异粒度对应数据的映射状态均为已映射状态,计算所述第二差异粒度对应数据的第一摘要信息;所述动作信息包括所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息;
将所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息的动作信息发送至所述源LUN,以通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息,并根据所述第一摘要信息以及第二摘要信息判断所述第一差异粒度对应数据以及所述第二差异粒度对应数据是否存在差异。
4.如权利要求2所述的方法,其特征在于,根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息具体包括:
若根据所述第一映射长度以及第二映射长度确定所述第一差异粒度与所述第二差异粒度对应数据的映射状态均为全部未映射状态,确定所述第一差异粒度对应数据以及第二差异粒度对应数据无差异;所述动作信息包括数据无差异;
将数据无差异的动作信息发送至所述源LUN,以使所述源LUN根据数据无差异的动作信息循环扫描下一个差异粒度。
5.如权利要求1所述的方法,其特征在于,根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息具体包括:
若所述第一映射长度与所述第二映射长度不相同,确定与所述第一差异粒度对应数据以及与第二差异粒度对应数据存在差异;所述动作信息包括将与第一差异粒度对应的差异位标记为存在差异;
将与第一差异粒度对应的差异位标记为存在差异的动作信息发送至所述源LUN,以使所述源LUN根据存在差异的动作信息将与第一差异粒度对应的差异位标记为存在差异。
6.如权利要求1所述的方法,其特征在于,所述计算所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度具体包括:
获取所述第二差异粒度大小以及所述第二差异粒度的空洞总大小;
所述第二映射长度为所述第二差异粒度大小与所述第二差异粒度的空洞总大小的差值。
7.一种差异数据扫描装置,应用于副本LUN,其特征在于,还包括源LUN,所述装置包括:
长度计算单元,用于接收到源LUN发送的第一差异粒度的第一映射长度时,计算出所述副本LUN上与所述第一差异粒度对应的第二差异粒度的第二映射长度;
第一确定单元,用于根据所述第二映射长度以及第一映射长度确定出与所述第一差异粒度对应的动作信息;
信息发送单元,用于将与所述第一差异粒度对应的动作信息发送至所述源LUN,以通知所述源LUN根据所述动作类型执行对应的动作。
8.如权利要求7所述的装置,其特征在于,所述装置还包括第二确定单元,用于:
根据所述第一映射长度确定出所述第一差异粒度对应数据的映射状态;
根据所述第二映射长度确定出所述第二差异粒度对应数据的映射状态。
9.如权利要求8所述的装置,其特征在于,所述第一确定单元具体用于:
若所述第一映射长度以及所述第二映射长度相同,且所述第一差异粒度对应数据以及第二差异粒度对应数据的映射状态均为已映射状态,计算所述第二差异粒度对应数据的第一摘要信息;所述动作信息包括所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息;
将所述第一摘要信息以及通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息的动作信息发送至所述源LUN,以通知所述源LUN计算与所述第一差异粒度对应数据的第二摘要信息,并根据所述第一摘要信息以及第二摘要信息判断所述第一差异粒度对应数据以及所述第二差异粒度对应数据是否存在差异。
10.如权利要求8所述的装置,其特征在于,所述第一确定单元具体用于:
若根据所述第一映射长度以及第二映射长度确定所述第一差异粒度与所述第二差异粒度对应数据的映射状态均为全部未映射状态,确定所述第一差异粒度对应数据以及第二差异粒度对应数据无差异;所述动作信息包括数据无差异;
将数据无差异的动作信息发送至所述源LUN,以使所述源LUN根据数据无差异的动作信息循环扫描下一个差异粒度。
11.如权利要求7所述的装置,其特征在于,所述第一确定单元具体用于:
若所述第一映射长度与所述第二映射长度不相同,确定与所述第一差异粒度对应数据以及与第二差异粒度对应数据存在差异;所述动作信息包括将与第一差异粒度对应的差异位标记为存在差异;
将与第一差异粒度对应的差异位标记为存在差异的动作信息发送至所述源LUN,以使所述源LUN根据存在差异的动作信息将与第一差异粒度对应的差异位标记为存在差异。
12.如权利要求7所述的装置,其特征在于,所述长度计算单元具体用于:
获取所述第二差异粒度大小以及所述第二差异粒度的空洞总大小;
所述第二映射长度为所述第二差异粒度大小与所述第二差异粒度的空洞总大小的差值。
CN201610188629.2A 2016-03-29 2016-03-29 一种差异数据扫描方法及装置 Active CN105824724B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610188629.2A CN105824724B (zh) 2016-03-29 2016-03-29 一种差异数据扫描方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610188629.2A CN105824724B (zh) 2016-03-29 2016-03-29 一种差异数据扫描方法及装置

Publications (2)

Publication Number Publication Date
CN105824724A true CN105824724A (zh) 2016-08-03
CN105824724B CN105824724B (zh) 2019-01-25

Family

ID=56525380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610188629.2A Active CN105824724B (zh) 2016-03-29 2016-03-29 一种差异数据扫描方法及装置

Country Status (1)

Country Link
CN (1) CN105824724B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113553005A (zh) * 2021-07-06 2021-10-26 杭州宏杉科技股份有限公司 一种精简lun的数据读写方法、装置及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096616A (zh) * 2011-02-15 2011-06-15 成都市华为赛门铁克科技有限公司 逻辑对象数据的复制方法以及相关装置
CN103885717A (zh) * 2012-12-19 2014-06-25 杭州宏杉科技有限公司 一种数据复制方法及装置
WO2014169738A1 (zh) * 2013-04-18 2014-10-23 中兴通讯股份有限公司 主、备数据库及一致性检测、修复方法和装置、存储介质
CN104731792A (zh) * 2013-12-19 2015-06-24 ***股份有限公司 数据库一致性校验方法及***、定位数据库差异的方法及***
CN105138426A (zh) * 2015-08-20 2015-12-09 浪潮(北京)电子信息产业有限公司 一种基于快照的业务级数据一致性保护方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096616A (zh) * 2011-02-15 2011-06-15 成都市华为赛门铁克科技有限公司 逻辑对象数据的复制方法以及相关装置
CN103885717A (zh) * 2012-12-19 2014-06-25 杭州宏杉科技有限公司 一种数据复制方法及装置
WO2014169738A1 (zh) * 2013-04-18 2014-10-23 中兴通讯股份有限公司 主、备数据库及一致性检测、修复方法和装置、存储介质
CN104731792A (zh) * 2013-12-19 2015-06-24 ***股份有限公司 数据库一致性校验方法及***、定位数据库差异的方法及***
CN105138426A (zh) * 2015-08-20 2015-12-09 浪潮(北京)电子信息产业有限公司 一种基于快照的业务级数据一致性保护方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113553005A (zh) * 2021-07-06 2021-10-26 杭州宏杉科技股份有限公司 一种精简lun的数据读写方法、装置及设备
CN113553005B (zh) * 2021-07-06 2023-12-22 杭州宏杉科技股份有限公司 一种精简lun的数据读写方法、装置及设备

Also Published As

Publication number Publication date
CN105824724B (zh) 2019-01-25

Similar Documents

Publication Publication Date Title
US11947683B2 (en) Replicating a storage system
US11138103B1 (en) Resiliency groups
US11995336B2 (en) Bucket views
US11893023B2 (en) Deterministic searching using compressed indexes
US11194473B1 (en) Programming frequently read data to low latency portions of a solid-state storage array
KR20170120489A (ko) 통지와 함께 백그라운드 활동을 효율적으로 관리하는 ssd를 위한 메카니즘
WO2021006940A1 (en) Generating tags for data allocation
US12014065B2 (en) Multi-cloud orchestration as-a-service
US10929053B2 (en) Safe destructive actions on drives
US11494109B1 (en) Erase block trimming for heterogenous flash memory storage devices
US20210263651A1 (en) Optimizing Generalized Transfers Between Storage Systems
JP2007241486A (ja) 記憶装置システム
US20230342243A1 (en) Intelligent power loss protection allocation
US20200379653A1 (en) Reclaiming free space in a storage system
US20240004568A1 (en) Striping data across erase blocks having differing sizes
US11853164B2 (en) Generating recovery information using data redundancy
CN107566470B (zh) 云数据***中管理虚拟机的方法和装置
EP4091042A1 (en) Ensuring compliance with geography-based data movement restrictions
CN104517067A (zh) 访问数据的方法、装置及***
CN111752892B (zh) 分布式文件***及其实现方法、管理***、设备及介质
CN105824724A (zh) 一种差异数据扫描方法及装置
US11698914B1 (en) Serverless managed bulk import on a global NoSQL database with selective back pressure
CN107340974B (zh) 一种虚拟磁盘的迁移方法及迁移装置
WO2023070025A1 (en) Declarative provisioning of storage
US20210181941A1 (en) Budgeting open blocks of a storage unit based on power loss prevention

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Hangzhou City, Zhejiang Province, Binjiang District West Street 310053 Qianmo Road No. 482 building eleventh layer to the twelfth layer A

Applicant after: Hangzhou Sequoia Polytron Technologies Inc

Address before: Hangzhou City, Zhejiang Province, Binjiang District West Street 310053 Qianmo Road No. 482 building eleventh layer to the twelfth layer A

Applicant before: Hangzhou MacroSAN Technologies Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant