差异数据扫描方法及装置的制造方法

文档序号:10488837阅读:477来源:国知局
差异数据扫描方法及装置的制造方法
【专利摘要】本申请提供一种差异数据扫描方法以及装置,其中该方法包括:在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后,检查副本LUN发送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应的第二差异粒度对应地址区间;若是,根据所述连续未映射区间信息确定与所述第一差异粒度相应的第二差异粒度对应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射组合,按照映射组合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理。本发明减少了多余的摘要信息计算,且能够最大限度地减少源LUN与副本LUN不必要的通信,降低了存储主机的资源消耗,提高了扫描效率。
【专利说明】
差异数据扫描方法及装置
技术领域
[0001] 本申请涉及网络存储技术领域,尤其涉及差异数据扫描方法及装置。
【背景技术】
[0002] 在进行基于自动精简配置LUN(Logical Unit Number,逻辑单元号)的远程复制 时,首次复制进行全量复制,后续再由源LUN通过复制链路向灾难备份中心(副本LUN)同步 数据,此时,仅在扫描到两次复制之间,源LUN上发生改变的数据后,传输两个复制时间点之 间发生变化的数据。现有的扫描处理方法为:遍历所有差异粒度,按照预设算法获取并比较 源LUN上差异粒度对应空间与副本LUN上差异粒度对应空间的摘要信息,以确定两端数据是 否一致,若一致,则继续查询下一个差异粒度,不一致则设置差异位。
[0003 ]然而,现有技术中在判断源LUN与副本LUN数据的一致性时,对扫描到的源LUN上的 每个差异粒度都要统一对副本LUN上对应差异粒度的数据进行摘要信息的计算,进而造成 多余的摘要信息计算和比较,不但浪费了计算资源,还降低了处理效率。

【发明内容】

[0004] 有鉴于此,本申请提供了差异数据扫描方法及装置,具体地,本申请是通过如下技 术方案实现的:
[0005] 本申请提供一种差异数据扫描方法,应用于源逻辑单元号LUN,该方法包括:
[0006] 在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后,检查副本LUN发 送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应的第二差异粒度 对应地址区间;
[0007] 若是,根据所述连续未映射区间信息确定与所述第一差异粒度相应的第二差异粒 度对应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射组合,按照映 射组合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的 第二数据是否一致,并进行相应处理。
[0008] 本申请还提供一种差异数据扫描方法,应用于副本逻辑单元号LUN,该方法包括:
[0009] 在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带的第一差异粒度对 应空间的第一映射状态;
[0010]获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对应空间的第二映 射状态;
[0011]若所述第二映射状态为全部未映射状态,检测出包括所述第二差异粒度对应空间 的连续未映射区间信息;
[0012] 将所述连续未映射区间信息携带在扫描响应的结果信息中发送至所述源LUN。
[0013] 本申请还提供一种差异数据扫描装置,应用于源LUN,该装置包括:
[0014] 检查单元,用于在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后, 检查副本LUN发送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应 的第二差异粒度对应地址区间;
[0015] 处理单元,用于根据所述连续未映射区间信息确定与所述第一差异粒度相应的第 二差异粒度对应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射组 合,按照映射组合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度对 应空间的第二数据是否一致,并进行相应处理。
[0016] 本申请还提供一种差异数据扫描装置,应用于副本LUN,该装置包括:
[0017] 接收单元,用于在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带的第 一差异粒度对应空间的第一映射状态;
[0018] 获取单元,用于获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对 应空间的第二映射状态;
[0019] 检测单元,用于在所述第二映射状态为全部未映射状态时,检测出包括所述第二 差异粒度对应空间的连续未映射区间信息;
[0020] 发送单元,用于将所述连续未映射区间信息携带在扫描响应的结果信息中发送至 所述源LUN。
[0021] 由以上描述可以看出,本申请提供的差异数据扫描方法及装置,在获取到源LUN上 第一差异粒度对应空间的第一映射状态后,检查到副本LUN发送的连续未映射区间信息中 包括副本LUN上与第一差异粒度相应的第二差异粒度对应空间的第二映射状态时,将第一 映射状态以及第二映射状态的映射组合,按照预设的映射组合处理策略确定第一差异粒度 对应空间的第一数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理。由 此可见,本发明无需如现有技术中的源LUN在每次扫描差异粒度时都需要向副本LUN发送扫 描请求,进而减少了多余的摘要信息计算,且能够最大限度地减少源LUN与副本LUN不必要 的通信,降低了存储主机的资源消耗,提高了扫描效率。
【附图说明】
[0022] 图1是本申请一示例性实施例示出的一种差异数据扫描方法所应用的网络环境示 意图;
[0023] 图2是本申请一示例性实施例示出的一种差异数据扫描方法流程图;
[0024] 图3是本申请一示例性实施例示出的另一种差异数据扫描方法流程图;
[0025] 图4是本申请一示例性实施例示出的一种差异数据扫描装置所在源LUN或者副本 LUN的基础硬件结构示意图;
[0026] 图5是本申请一示例性实施例示出的一种差异数据扫描装置的结构示意图;
[0027] 图6是本申请一示例性实施例示出的一种差异数据扫描装置的结构示意图。
【具体实施方式】
[0028] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及 附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例 中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附 权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0029] 在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。 在本申请和所附权利要求书中所使用的单数形式的"一种"、"所述"和"该"也旨在包括多数 形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语"和/或"是指并包 含一个或多个相关联的列出项目的任何或所有可能组合。
[0030] 应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这 些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离 本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第 一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当…… 时"或"响应于确定"。
[0031] 参见图1,为本申请差异数据扫描方法所应用的网络环境示意图。包括源LUN以及 副本LUN,源LUN是一个复制关系中的源资源,副本LUN则是一个复制关系中的目的资源。
[0032] 参见图2,为本申请差异数据扫描方法的一个实施例流程图,应用于源LUN,该实施 例对差异数据扫描过程进行描述。
[0033]步骤201,在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后,检查 副本LUN发送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应的第 二差异粒度对应地址区间;
[0034]本示例实施方式中,源LUN可以循环扫描差异位图中的各差异粒度,依次获取当前 扫描的差异粒度的大小以及该差异粒度的空洞总大小,并根据该差异粒度的大小以及该差 异粒度的空洞总大小确定出该差异粒度对应空间的映射状态。其中,差异粒度对应空间可 能存在三种映射状态:全部未映射状态、部分映射状态、全部映射状态。
[0035]该差异粒度的大小为预先设置的。在目前数据量飞速增长的情况下,LUN容量通常 很大,若与LUN对应的差异粒度设置的较小,由差异粒度组成的差异位图所占用的空间就会 变大。不仅如此,维护差异位图的代价也将越来越大,需要考虑差异位图所占的资源、差异 位图的更新频率、差异位图的访问速度、对复制源在线业务的影响等诸多因素。因此,目前 复制的通用实现中,差异粒度都比较粗,一般可以预设为大于64KB。
[0036] 本示例实施方式中,在源LUN获取到源LUN上差异粒度(下称第一差异粒度)对应空 间的映射状态(下称第一映射状态)后,检查副本LUN发送的连续未映射区间信息中是否包 括副本LUN上与第一差异粒度相应的差异粒度(下称第二差异粒度)对应空间的映射状态 (下称第二映射状态)。
[0037] 实际应用中,源LUN在依次扫描每一个差异粒度时,可以在自身保存的副本LUN发 送的连续未映射区间信息中查找是否包括副本LUN上与当前扫描的第一差异粒度对应的第 二差异粒度。
[0038] 该连续未映射区间信息表示一个地址区间,这段地址区间的长度可能是差异粒度 的整数倍,也可能不是。当这段地址区间的长度是差异粒度的整数倍时,说明与这段区间对 应的差异粒度均为全部未映射状态;当地址区间的长度不是差异粒度的整数倍时,就会出 现这段区间对应的差异粒度中的最后一个差异粒度为特定部分映射的情况。其中,该特定 部分映射状态为差异粒度的前部分空间为未映射状态,后部分空间为映射状态。
[0039] 若该连续未映射区间信息中不包括该第二差异粒度,可以向副本LUN发送扫描请 求,以请求副本LUN确定该第二差异粒度的映射状态(第二映射状态),并在该第二差异粒度 为全部未映射状态时,副本LUN检查是否有从该第二差异粒度开始的连续未映射状态的差 异粒度。若有,副本LUN将自该第二差异粒度对应地址空间起连续的未映射状态的地址空间 生成连续未映射区间信息携带在扫描响应中发送至源LUN。
[0040]源LUN在接收到副本LUN发送的扫描响应后,即可根据该扫描响应中携带的结果信 息获知第二差异粒度对应空间的映射状态。并且,当该扫描响应中还具有连续未映射区间 信息时,确定源LUN当前扫描的第一差异粒度相应的第二差异粒度对应空间映射状态为全 部未映射状态,源LUN还可以保存该连续未映射区间信息,以便在源LUN扫描下一个差异粒 度时,可以从该连续未映射区间信息中查询到与下一个差异粒度对应的副本LUN上的差异 粒度对应空间的映射状态为全部未映射状态或者是特定部分映射状态,无需再向副本LUN 发送扫描请求查询该下一个差异粒度的映射状态。减少了源LUN通过复制链路去副本LUN查 询第二差异粒度对应空间的摘要信息和映射状态的次数,加快了扫描速度。
[0041 ]由于本发明实施例中的副本LUN在每次接收到源LUN发送的扫描请求后,除了检查 与扫描请求中第二差异粒度的映射状态之外,还会在确定第二差异粒度为全部未映射状态 时,检测出包括该第二差异粒度对应空间的连续未映射区间信息,并将连续未映射区间信 息以及第二差异粒度的映射状态携带在扫描响应中发送给源LUN。因此,源LUN在扫描源LUN 上的每一个差异粒度时,可以首先检查连续未映射区间信息中是否包括副本LUN上与该差 异粒度相应的副本LUN上差异粒度对应空间的映射状态。
[0042]步骤202,若所述连续未映射区间信息中包括所述第二差异粒度地址区间,根据所 述连续未映射区间信息确定与所述第一差异粒度相应的第二差异粒度对应空间的第二映 射状态,将所述第一映射状态以及第二映射状态的映射组合,按照映射组合处理策略确定 所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数据是否一致,并 进行相应处理。
[0043] 当在该连续未映射区间信息中查找到所述第二差异粒度的映射状态时,可以根据 连续未映射区间信息确定出第二差异粒度对应空间的第二映射状态。
[0044] 由于连续未映射区间信息中的地址区间的长度不是差异粒度的整数倍时,就会出 现这段区间对应的差异粒度中的最后一个差异粒度为特定部分映射的情况,因此还需要进 一步确定该第二差异粒度的映射状态是全部未映射状态还是特定部分映射状态。之后,将 第一映射状态以及第二映射状态的映射组合,按照预设的映射组合处理策略确定第一数据 与第二数据是否一致。其中,该预设的映射组合处理策略可以如表1所示:
[0047] 表1通过表项的方式示出了映射组合处理策略,仅是为进一步理解本发明的示例, 并不用于限制本发明实施例中映射组合处理策略的具体内容。
[0048] 当第二差异粒度的映射状态为全部未映射状态时,若第一差异粒度的映射状态也 是全部未映射状态,即:该映射组合为第一映射状态以及第二映射状态均为全部未映射状 态,根据表1所示的映射组合处理策略可以确定第一数据与第二数据一致(第一数据与第二 数据无差异)。由于在上次复制结束后差异位图的各个差异粒度的差异位均被标记为无差 异(例如被标记为〇),因此在确定两端数据无差异时,无需对第一差异粒度的差异位进行标 记,源LUN继续扫描下一个差异粒度即可;
[0049] 当该映射组合为第一映射状态为全部映射状态或者部分映射状态,第二映射状态 为全部未映射状态,根据表1的映射组合处理策略确定第一数据与第二数据不一致(第一数 据与第二数据存在差异),则将第一差异粒度的差异位标记为存在差异(例如标记为1),并 由源LUN继续扫描下一个差异粒度。
[0050] 当该映射组合为第一映射状态为全部映射状态或者全部未映射状态,第二映射状 态为特定部分映射状态,根据表1的映射组合处理策略确定第一数据与第二数据不一致,则 将第一差异粒度的差异位标记为存在差异,并且,源LUN可以继续扫描下一个差异粒度。 [0051 ]当该映射组合为第一映射状态为部分映射状态,第二映射状态为特定部分映射状 态时,根据表1的映射组合处理策略不能确定该第一数据与第二数据是否一致,则向副本 LUN发送携带有第一映射状态的扫描请求,以使副本LUN根据该扫描请求在获取第二差异粒 度对应空间的第二映射状态后,根据第一映射状态以及第二映射状态的映射组合,按照所 述映射组合处理策略判断第一数据与第二数据是否一致,并将得到的结果信息携带在扫描 响应中发送给源LUN。由于副本LUN在查询到第二差异粒度的第二映射状态为全部未映射 时,还会进一步检测是否有连续未映射区间信息,因此,在检测到有包括第二映射状态的连 续未映射区间信息时,该扫描响应中的结果信息还包括该连续未映射区间信息。
[0052]本示例实施方式中,在源LUN获取到第一差异粒度的第一映射状态后,若在连续未 映射区间信息中未查询到副本LUN上与第一差异粒度相应的第二差异粒度对应空间的第二 映射状态,可以如上述根据表1的映射组合处理策略不能确定该第一数据与第二数据是否 一致时的处理一样,向副本LUN发送携带有第一映射状态的扫描请求,以获取副本LUN按照 映射组合处理策略得到的结果信息。
[0053]当源LUN接收到副本LUN发送的扫描响应后,若扫描响应中携带的结果信息为第一 数据与第二数据一致,则可以由源LUN继续扫描下一个差异粒度;
[0054]若扫描响应中携带的结果信息包括第一数据与第二数据不一致,则可以由源LUN 将所述第二差异粒度的差异位标记为存在差异,并继续扫描下一个差异粒度;
[0055] 若扫描响应中携带的结果信息包括第一数据与第二数据的差异不确定,以及扫描 响应中填充有第二差异粒度对应空间的第一摘要信息,则计算第一差异粒度对应空间的第 二摘要信息;判断所述第一摘要信息与第二摘要信息是否一致,若一致,确定所述第一数据 与第二数据一致,否则,确定所述第一数据与第二数据不一致,并将所述第一差异粒度的差 异位标记为存在差异。
[0056] 具体地,副本LUN返回的扫描响应中的结果信息除了包括第一数据与第二数据一 致以及不一致的信息外,副本LUN对于根据表1的映射组合处理策略不能确定该第一数据与 第二数据是否一致时,可以根据信息摘要算法计算第二差异粒度对应空间的摘要信息(下 称第一摘要信息),例如MD5值,并将该第一摘要信息作为结果信息携带在扫描响应中发送 给源LUN。
[0057]在源LUN收到的扫描响应中的结果信息为差异不确定,并在扫描响应中填充第二 差异粒度对应空间的第一摘要信息时,源LUN可以计算出第一差异粒度对应空间的摘要信 息(第二摘要信息),并将第一摘要信息与第二摘要信息进行比对,若第一摘要信息与第二 摘要信息一致,确定该第一数据与第二数据一致;若第一摘要信息与第二摘要信息不一致, 确定该第一数据与第二数据不一致。并当确定第一数据与第二数据一致时,源LUN可以继续 扫描下一个差异粒度;当确定第一数据与第二数据不一致时,将第一差异粒度的差异位标 记为存在差异,并且,源LUN可以继续扫描下一个差异粒度。
[0058]当源LUN将差异位图的所有差异粒度逐一扫描完毕后,则可以根据扫描出的存在 差异的数据复制到副本LUN,并在将存在差异的数据复制到副本LUN后,将对应的差异粒度 的差异位标记为无差异。这样一来,本示例实施方式则更加智能化的完成对整个源LUN的差 异数据的复制。
[0059] 综上所述,本示例实施方式中的差异扫描方法,在获取到源LUN上第一差异粒度对 应空间的第一映射状态后,在检查到副本LUN发送的连续未映射区间信息中包括副本LUN上 与第一差异粒度相应的第二差异粒度对应空间时,根据连续未映射区间信息确定出副本 LUN上与第一差异粒度相应的第二差异粒度对应空间的第二映射状态,将第一映射状态以 及第二映射状态的映射组合,按照预设的映射组合处理策略确定第一差异粒度对应空间的 第一数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理。由此可见,本发 明无需如现有技术中的源LUN在每次扫描差异粒度时都需要向副本LUN发送扫描请求,进而 减少了多余的摘要信息计算,且能够最大限度地减少源LUN与副本LUN不必要的通信,降低 了存储主机的资源消耗,提高了扫描效率。
[0060] 参见图3,为本申请差异数据扫描方法的另一个实施例流程图,应用于副本LUN,该 实施例对差异数据扫描过程进行描述。
[0061] 步骤301,在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带的第一差 异粒度对应空间的第一映射状态;
[0062] 本示例实施方式中,在源LUN获取到源LUN上差异粒度(下称第一差异粒度)对应空 间的映射状态(下称第一映射状态)后,通常要向副本LUN发送扫描请求,以获取副本LUN上 与该第一差异粒度相应的第二差异粒度对应空间的映射状态。
[0063] 该扫描请求中还携带有第一差异粒度的第一映射状态,副本LUN在接收到该扫描 请求后,首先获取该扫描请求中携带的第一差异粒度的第一映射状态。
[0064]步骤302,获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对应空间 的第二映射状态;
[0065]之后,副本LUN可以获取与所述第一差异粒度相应的第二差异粒度对应空间的第 二映射状态,并将所述第一映射状态以及第二映射状态的映射组合,按照表1所示的映射组 合处理策略进一步判断该第一差异粒度对应空间的第一数据与第二差异粒度对应空间的 第二数据是否一致;并将确定出所述第一差异粒度对应空间的第一数据与第二差异粒度对 应空间的第二数据一致或者不一致的结果信息携带在扫描响应中发送至所述源LUN;然而, 若无法确定出所述第一数据与第二数据是否一致,所述结果信息为差异不确定,则计算所 述第二数据的第一摘要信息,并将差异不确定的结果信息以及所述第一摘要信息携带在所 述扫描响应中发送至所述源LUN,以使源LUN在获取与第一差异粒度对应空间的第二摘要信 息后,根据该第一摘要信息与第二摘要信息的一致性来确定第一差异粒度对应空间的第一 数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理。
[0066]其中,副本LUN判断该第一数据与第二数据是否一致的具体处理流程可以参考上 述步骤202中的方法,在此不再一一赘述。
[0067] 步骤303,若所述第二映射状态为全部未映射状态,检测出包括所述第二差异粒度 对应空间的连续未映射区间信息;
[0068] 在获取到第二差异粒度的第二映射状态后,若确定第二映射状态为全部未映射状 态,副本LUN还可以进一步检查自该第二差异粒度之后的下一个差异粒度是否也是全部未 映射状态或者是特定部分映射状态,若是,副本LUN可以将自该第二差异粒度起连续未映射 状态的所有差异粒度的地址空间作为连续未映射区间信息。
[0069] 步骤304,将所述连续未映射区间信息携带在扫描响应的结果信息中发送至所述 源LUNo
[0070]在生成连续未映射区间信息后,将连续未映射区间信息携带在扫描响应的结果信 息中发送至所述源LUN,以使源LUN在扫描源LUN上的差异粒度时,若检查到连续未映射区间 信息中有该差异粒度对应的信息,则可以根据该连续未映射区间信息进行数据的一致性判 断,无需再向副本LUN发送扫描请求等一系列流程。进而减少不必要的开销,提升了在线业 务以及复制业务的整体性能。
[0071]与前述差异数据扫描方法的实施例相对应,本申请还提供了差异数据扫描装置的 实施例。
[0072] 本申请差异数据扫描装置的实施例可以应用在源LUN上。装置实施例可以通过软 件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义 上的装置,是通过其所在设备的处理器运行存储器中对应的计算机程序指令形成的。从硬 件层面而言,如图4所示,为本申请差异数据扫描装置所在设备的一种硬件结构图,除了图4 所示的处理器、网络接口、以及存储器之外,实施例中装置所在的设备通常根据该设备的实 际功能,还可以包括其他硬件,对此不再赘述。
[0073] 请参考图5,为本申请一个实施例中的差异数据扫描装置的结构示意图。该差异数 据扫描装置应用于源LUN,包括检查单元501以及处理单元502,其中:
[0074]检查单元501,用于在获取到所述源LUN上第一差异粒度对应空间的第一映射状态 后,检查副本LUN发送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相 应的第二差异粒度对应地址区间;
[0075]处理单元502,用于根据所述连续未映射区间信息确定与所述第一差异粒度相应 的第二差异粒度对应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射 组合,按照映射组合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度 对应空间的第二数据是否一致,并进行相应处理。
[0076]进一步地,所述装置还可以包括发送单元503,用于在所述连续未映射区间信息中 不包括副本LUN上与所述第一差异粒度相应的第二差异粒度对应地址区间时,向所述副本 LUN发送携带有所述第一映射状态的扫描请求,以使所述副本LUN在获取所述第二映射状态 后,根据所述第一映射状态以及所述第二映射状态的映射组合,按照所述映射组合处理策 略判断所述第一数据与所述第二数据是否一致,并将得到的结果信息携带在扫描响应中发 送给所述源LUN。
[0077] 进一步地,所述处理单元502具体可以用于:当源LUN接收到副本LUN发送的扫描响 应后,若所述扫描响应中携带的结果信息包括所述第一数据与所述第二数据不一致,则将 所述第一差异粒度的差异位标记为存在差异;若所述扫描响应中携带的结果信息包括所述 第一数据与所述第二数据差异不确定,以及所述第二差异粒度对应空间的第一摘要信息, 获取所述第一摘要信息,并计算所述第一差异粒度对应空间的第二摘要信息;判断所述第 一摘要信息与所述第二摘要信息是否一致,若一致,确定所述第一数据与所述第二数据一 致,否则,确定所述第一数据与所述第二数据不一致,并将所述第一差异粒度的差异位标记 为存在差异。
[0078] 进一步地,所述装置还可以包括保存单元504,用于当源LUN接收到副本LUN发送的 扫描响应后,若所述扫描响应中携带的结果信息包括连续多个差异粒度的连续未映射区间 信息,确定所述第二差异粒度对应空间的映射状态为全部未映射状态,并保存所述连续未 映射区间信息。
[0079] 进一步地,所述映射状态包括:全部映射状态、部分映射状态以及全部未映射状 态;
[0080] 所述处理单元502具体可以用于:若所述映射组合为所述第一映射状态以及所述 第二映射状态均为全部未映射状态,确定所述第一数据与所述第二数据一致;若所述映射 组合为所述第一映射状态为全部映射状态或者全部未映射状态,所述第二映射状态为特定 部分映射状态,确定所述第一数据与所述第二数据不一致,则将所述第一差异粒度的差异 位标记为存在差异。
[0081] 进一步地,所述处理单元502具体可以用于:若所述映射组合为所述第一映射状态 为部分映射状态,所述第二映射状态为特定部分映射状态,向所述副本LUN发送携带有所述 第一映射状态的扫描请求,以使所述副本LUN在获取所述第二映射状态后,根据所述第一映 射状态以及所述第二映射状态的映射组合,按照所述映射组合处理策略判断所述第一数据 与所述第二数据是否一致,并将得到的结果信息携带在扫描响应中发送给所述源LUN。
[0082] 上述装置中各个单元的功能和作用的实现过程具体详见上述应用于源LUN的差异 数据扫描方法中对应步骤的实现过程,在此不再赘述。
[0083] 本申请差异数据扫描装置的实施例可以应用在副本LUN上。装置实施例可以通过 软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意 义上的装置,是通过其所在设备的处理器运行存储器中对应的计算机程序指令形成的。从 硬件层面而言,如图4所示,为本申请差异数据扫描装置所在设备的一种硬件结构图,除了 图4所示的处理器、网络接口、以及存储器之外,实施例中装置所在的设备通常根据该设备 的实际功能,还可以包括其他硬件,对此不再赘述。
[0084] 请参考图6,为本申请一个实施例中的差异数据扫描装置的结构示意图。该差异数 据扫描装置应用于副本LUN,包括接收单元601、获取单元602、检测单元603以及发送单元 604,其中:
[0085]接收单元601,用于在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带 的第一差异粒度对应空间的第一映射状态;
[0086]获取单元602,用于获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度 对应空间的第二映射状态;
[0087]检测单元603,用于在所述第二映射状态为全部未映射状态时,检测出包括所述第 二差异粒度对应空间的连续未映射区间信息;
[0088]发送单元604,用于将所述连续未映射区间信息携带在扫描响应的结果信息中发 送至所述源LUN。
[0089] 进一步地,所述装置还可以包括判断处理单元605,用于在获取所述副本LUN上与 所述第一差异粒度相应的第二差异粒度对应空间的第二映射状态之后,根据所述第一映射 状态以及第二映射状态的映射组合,按照映射组合处理策略判断所述第一差异粒度对应空 间的第一数据与第二差异粒度对应空间的第二数据是否一致;若确定出所述第一差异粒度 对应空间的第一数据与第二差异粒度对应空间的第二数据一致,或者不一致,将所述一致 或者不一致的结果信息携带在扫描响应中发送至所述源LUN;若无法确定出所述第一数据 与第二数据是否一致,所述结果信息为差异不确定,则计算所述第二数据的第一摘要信息, 并将差异不确定的结果信息以及所述第一摘要信息携带在所述扫描响应中发送至所述源 LUN 0
[0090] 上述装置中各个单元的功能和作用的实现过程具体详见上述应用于副本LUN的差 异数据扫描方法中对应步骤的实现过程,在此不再赘述。
[0091] 本示例实施方式中的差异扫描方法以及装置,在获取到源LUN上第一差异粒度对 应空间的第一映射状态后,在检查到副本LUN发送的连续未映射区间信息中包括副本LUN上 与第一差异粒度相应的第二差异粒度对应空间的第二映射状态时,将第一映射状态以及第 二映射状态的映射组合,按照预设的映射组合处理策略确定第一差异粒度对应空间的第一 数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理。由此可见,本发明无 需如现有技术中的源LUN在每次扫描差异粒度时都需要向副本LUN发送扫描请求,进而减少 了多余的摘要信息计算,且能够最大限度地减少源LUN与副本LUN不必要的通信,降低了存 储主机的资源消耗,提高了扫描效率。
[0092] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实 施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件 说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以 不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的 需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付 出创造性劳动的情况下,即可以理解并实施。
[0093] 以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
【主权项】
1. 一种差异数据扫描方法,应用于源逻辑单元号LUN,其特征在于,还包括副本LUN,所 述方法包括: 在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后,检查副本LUN发送的 连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应的第二差异粒度对应 地址区间; 若是,根据所述连续未映射区间信息确定与所述第一差异粒度相应的第二差异粒度对 应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射组合,按照映射组 合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二 数据是否一致,并进行相应处理。2. 如权利要求1所述的方法,其特征在于,所述方法还包括: 若所述连续未映射区间信息中不包括副本LUN上与所述第一差异粒度相应的第二差异 粒度对应地址区间,向所述副本LUN发送携带有所述第一映射状态的扫描请求,以使所述副 本LUN在获取所述第二映射状态后,根据所述第一映射状态以及所述第二映射状态的映射 组合,按照所述映射组合处理策略判断所述第一数据与所述第二数据是否一致,并将得到 的结果信息携带在扫描响应中发送给所述源LUN。3. 如权利要求2所述的方法,其特征在于,所述方法还包括: 当源LUN接收到副本LUN发送的扫描响应后,若所述扫描响应中携带的结果信息包括所 述第一数据与所述第二数据不一致,则将所述第一差异粒度的差异位标记为存在差异; 若所述扫描响应中携带的结果信息包括所述第一数据与所述第二数据差异不确定,以 及所述第二差异粒度对应空间的第一摘要信息,获取所述第一摘要信息,并计算所述第一 差异粒度对应空间的第二摘要信息; 判断所述第一摘要信息与所述第二摘要信息是否一致,若一致,确定所述第一数据与 所述第二数据一致,否则,确定所述第一数据与所述第二数据不一致,并将所述第一差异粒 度的差异位标记为存在差异。4. 如权利要求2所述的方法,其特征在于,所述方法还包括: 当源LUN接收到副本LUN发送的扫描响应后,若所述扫描响应中携带的结果信息包括连 续多个差异粒度的连续未映射区间信息,确定所述第二差异粒度对应空间的映射状态为全 部未映射状态,并保存所述连续未映射区间信息。5. 如权利要求1所述的方法,其特征在于,所述映射状态包括:全部映射状态、部分映射 状态以及全部未映射状态;所述按照映射组合处理策略确定所述第一差异粒度对应空间的 第一数据与第二差异粒度对应空间的第二数据是否一致,并进行相应处理具体包括: 若所述映射组合为所述第一映射状态以及所述第二映射状态均为全部未映射状态,确 定所述第一数据与所述第二数据一致; 若所述映射组合为所述第一映射状态为全部映射状态或者全部未映射状态,所述第二 映射状态为特定部分映射状态,确定所述第一数据与所述第二数据不一致,则将所述第一 差异粒度的差异位标记为存在差异。6. 如权利要求1或5任一所述的方法,其特征在于,所述按照映射组合处理策略确定所 述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数据是否一致,并进 行相应处理具体包括: 若所述映射组合为所述第一映射状态为部分映射状态,所述第二映射状态为特定部分 映射状态,向所述副本LUN发送携带有所述第一映射状态的扫描请求,以使所述副本LUN在 获取所述第二映射状态后,根据所述第一映射状态以及所述第二映射状态的映射组合,按 照所述映射组合处理策略判断所述第一数据与所述第二数据是否一致,并将得到的结果信 息携带在扫描响应中发送给所述源LUN。7. -种差异数据扫描方法,应用于副本逻辑单元号LUN,其特征在于,还包括源LUN,所 述方法包括: 在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带的第一差异粒度对应空 间的第一映射状态; 获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对应空间的第二映射状 态; 若所述第二映射状态为全部未映射状态,检测出包括所述第二差异粒度对应空间的连 续未映射区间信息; 将所述连续未映射区间信息携带在扫描响应的结果信息中发送至所述源LUN。8. 如权利要求7所述的方法,其特征在于,在获取所述副本LUN上与所述第一差异粒度 相应的第二差异粒度对应空间的第二映射状态之后,所述方法还包括: 根据所述第一映射状态以及第二映射状态的映射组合,按照映射组合处理策略判断所 述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数据是否一致; 若确定出所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数 据一致,或者不一致,将所述一致或者不一致的结果信息携带在扫描响应中发送至所述源 LUN; 若无法确定出所述第一数据与第二数据是否一致,所述结果信息为差异不确定,则计 算所述第二数据的第一摘要信息,并将差异不确定的结果信息以及所述第一摘要信息携带 在所述扫描响应中发送至所述源LUN。9. 一种差异数据扫描装置,应用于源LUN,其特征在于,还包括副本LUN,所述装置包括: 检查单元,用于在获取到所述源LUN上第一差异粒度对应空间的第一映射状态后,检查 副本LUN发送的连续未映射区间信息中是否包括副本LUN上与所述第一差异粒度相应的第 二差异粒度对应地址区间; 处理单元,用于根据所述连续未映射区间信息确定与所述第一差异粒度相应的第二差 异粒度对应空间的第二映射状态,将所述第一映射状态以及第二映射状态的映射组合,按 照映射组合处理策略确定所述第一差异粒度对应空间的第一数据与第二差异粒度对应空 间的第二数据是否一致,并进行相应处理。10. 如权利要求9所述的装置,其特征在于,所述装置还包括: 发送单元,用于在所述连续未映射区间信息中不包括副本LUN上与所述第一差异粒度 相应的第二差异粒度对应地址区间时,向所述副本LUN发送携带有所述第一映射状态的扫 描请求,以使所述副本LUN在获取所述第二映射状态后,根据所述第一映射状态以及所述第 二映射状态的映射组合,按照所述映射组合处理策略判断所述第一数据与所述第二数据是 否一致,并将得到的结果信息携带在扫描响应中发送给所述源LUN。11. 如权利要求10所述的装置,其特征在于,所述处理单元具体用于: 当源LUN接收到副本LUN发送的扫描响应后,若所述扫描响应中携带的结果信息包括所 述第一数据与所述第二数据不一致,则将所述第一差异粒度的差异位标记为存在差异; 若所述扫描响应中携带的结果信息包括所述第一数据与所述第二数据差异不确定,以 及所述第二差异粒度对应空间的第一摘要信息,获取所述第一摘要信息,并计算所述第一 差异粒度对应空间的第二摘要信息; 判断所述第一摘要信息与所述第二摘要信息是否一致,若一致,确定所述第一数据与 所述第二数据一致,否则,确定所述第一数据与所述第二数据不一致,并将所述第一差异粒 度的差异位标记为存在差异。12. 如权利要求10所述的装置,其特征在于,所述装置还包括: 保存单元,用于当源LUN接收到副本LUN发送的扫描响应后,若所述扫描响应中携带的 结果信息包括连续多个差异粒度的连续未映射区间信息,确定所述第二差异粒度对应空间 的映射状态为全部未映射状态,并保存所述连续未映射区间信息。13. 如权利要求9所述的装置,其特征在于,所述映射状态包括:全部映射状态、部分映 射状态以及全部未映射状态;所述处理单元具体用于: 若所述映射组合为所述第一映射状态以及所述第二映射状态均为全部未映射状态,确 定所述第一数据与所述第二数据一致; 若所述映射组合为所述第一映射状态为全部映射状态或者全部未映射状态,所述第二 映射状态为特定部分映射状态,确定所述第一数据与所述第二数据不一致,则将所述第一 差异粒度的差异位标记为存在差异。14. 如权利要求9或13任一所述的装置,其特征在于,所述处理单元具体用于: 若所述映射组合为所述第一映射状态为部分映射状态,所述第二映射状态为特定部分 映射状态,向所述副本LUN发送携带有所述第一映射状态的扫描请求,以使所述副本LUN在 获取所述第二映射状态后,根据所述第一映射状态以及所述第二映射状态的映射组合,按 照所述映射组合处理策略判断所述第一数据与所述第二数据是否一致,并将得到的结果信 息携带在扫描响应中发送给所述源LUN。15. -种差异数据扫描装置,应用于副本LUN,其特征在于,还包括源LUN,所述装置包 括: 接收单元,用于在接收到源LUN发送的扫描请求时,获取所述扫描请求中携带的第一差 异粒度对应空间的第一映射状态; 获取单元,用于获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对应空 间的第二映射状态; 检测单元,用于在所述第二映射状态为全部未映射状态时,检测出包括所述第二差异 粒度对应空间的连续未映射区间信息; 发送单元,用于将所述连续未映射区间信息携带在扫描响应的结果信息中发送至所述 源 LUN〇16. 如权利要求15所述的装置,其特征在于,所述装置还包括判断处理单元,用于: 在获取所述副本LUN上与所述第一差异粒度相应的第二差异粒度对应空间的第二映射 状态之后,根据所述第一映射状态以及第二映射状态的映射组合,按照映射组合处理策略 判断所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数据是否一 致; 若确定出所述第一差异粒度对应空间的第一数据与第二差异粒度对应空间的第二数 据一致,或者不一致,将所述一致或者不一致的结果信息携带在扫描响应中发送至所述源 LUN; 若无法确定出所述第一数据与第二数据是否一致,所述结果信息为差异不确定,则计 算所述第二数据的第一摘要信息,并将差异不确定的结果信息以及所述第一摘要信息携带 在所述扫描响应中发送至所述源LUN。
【文档编号】G06F11/14GK105843709SQ201610217200
【公开日】2016年8月10日
【申请日】2016年4月8日
【发明人】杨飞飞, 扈海龙
【申请人】杭州宏杉科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1