一种记录存储数据发生变化的方法及装置制造方法及图纸

技术编号:9718673 阅读:123 留言:0更新日期:2014-02-27 05:22
本申请公开了一种记录存储数据发生变化的方法及装置,其中,所述方法包括:确定逻辑单元号LUN中当前变化逻辑块所在的逻辑块区;查询位图集中是否已存在所述逻辑块区的对应位图;如果不存在,则在所述位图集中建立所述逻辑块区的对应位图,并在所述对应位图中记录所述当前变化逻辑块发生变化;如果存在,则直接在所述对应位图中记录所述当前变化逻辑块发生变化。通过上述方式,本申请能够减少位图占用的存储资源,降低对内存资源的浪费。

【技术实现步骤摘要】
一种记录存储数据发生变化的方法及装置
本申请涉及存储
,特别是涉及ー种记录存储数据发生变化的方法及装置。
技术介绍
现有技术中,通常使用位图(Bitmap)技术来记录逻辑单元号(Logic UnitNumber,简称LUN)中数据是否发生变化。具体,在内存中申请ー块容量固定的内存作为记录LUN中逻辑块(chunk)变化情况的位图,其中,所述位图所需的容量由LUN的最大容量和位图中的位所对应的逻辑块的大小共同決定的。例如,如图1所示,设定位图中一位对应记录一个逻辑块中的数据变化情況,LUN的最大容量为64TB,LUN中每个逻辑块的大小为64KB,则需要容量为IG bit的位图,在LUN没有任何数据发生变化是,位图所有位的数值为“0”,当LUN中逻辑块chunkO、chunk 1、chunk2和chunk9中的数据发生了变化,贝U相应地,位图中第1、2、3及9位被置“ I”。故通过确定位图中数值为I的位所在的位置,则可获知LUN中哪些逻辑块发生数据变化。然而,对于目前多样化的存储技术,特别是可动态扩展的存储技术,如精简配置技木,其对LUN的容量可按需分配,且通常情况下其实际容量远小于最大容量。若仍使用现有的位图技术,则存在如下问题:位图的容量是固定的,如果要确保能够记录LUN中的所有逻辑块是否发生变化,则位图容量必须根据LUN的最大支持容量进行申请,而非LUN的实际容量,故造成对申请的内存资源的浪费。而且,在一般系统中支持多个LUN,如支持1024个LUN的情况下,根据上例,每个ITB的LUN需要申请IG bit容量的位图,则ー个系统共需要1024*1G bit=lT bit的内存用作位图,显然,仅用于记录变化的位图也占用了大量的内存资源,如果规格继续増大,如此大内存需求,是存储系统难以支撑的。
技术实现思路
本申请主要解决的技术问题是提供一种记录存储数据发生变化的方法及装置,能够减少位图占用的存储资源,降低对内存资源的浪费。为解决上述技术问题,本申请第一方面提供一种记录存储数据发生变化的方法,所述方法包括以下步骤:确定逻辑单元号LUN中当前变化逻辑块所在的逻辑块区,其中,所述逻辑单元号LUN至少包括两个逻辑块区,所述逻辑块区包含多个逻辑块;查询位图集中是否已存在所述逻辑块区的对应位图,其中,所述位图集用于放置多个位图,每个所述位图用于记录对应ー个所述逻辑块区的逻辑块发生变化,所述逻辑块区的对应位图即为记录所述逻辑块区的逻辑块发生变化的位图;如果不存在,则在所述位图集中建立所述逻辑块区的对应位图,并在所述对应位图中记录所述当前变化逻辑块发生变化;如果存在,则直接在所述对应位图中记录所述当前变化逻辑块发生变化。结合第一方面,本申请第一方面第一种可能的实施方式为:所述查询位图集中是否已存在所述逻辑块区的对应位图的步骤之前,所述方法还包括:将所述逻辑单元号LUN中的存储数据划分为多个逻辑块;将所述多个逻辑块划分为第一数值个逻辑块区,其中,所述第一数值至少为2 ;确定每个逻辑块区的对应位图信息,其中,所述逻辑块区的对应位图信息包括所述逻辑块区的对应位图的位数等于所述逻辑块区的逻辑块数,所述逻辑块区的对应位图的每个位分别对应用于记录所述逻辑块区的一个逻辑块是否发生变化,每个位可被设置为第一标记或者第二标记,所述第一标记用于表示该位所对应的逻辑块发生了变化,所述第二标记用于表示该位所对应的逻辑块没有发生变化。结合第一方面的第一种可能的实施方式,本申请第一方面第二种可能的实施方式为:所述在所述对应位图中记录所述当前变化逻辑块发生变化的步骤包括:根据所述逻辑块区的对应位图信息,查找出所述对应位图中用于记录所述当前变化逻辑块是否发生变化的位,并将查找出的位设置为第一标记,记录所述当前变化逻辑块发生变化的时间。结合第一方面的第二种可能的实施方式,本申请第一方面第三种可能的实施方式为:所述方法还包括:在接收复制命令时,获取所述复制命令中的预设时间条件;在所述位图集中捜索出所述逻辑块发生变化的时间符合所述预设时间条件的位图中的位;将搜索出的位图中的位所对应的逻辑块进行复制操作,在复制完成后将所述捜索出的位图中的位设置为所述第二标记。结合第一方面的第一至三任ー种可能的实施方式,本申请第一方面第四种可能的实施方式为:所述方法还包括:检测所述位图集中是否存在所有位均为所述第二标记的位图,如果存在,则将所述位图从位图集中删除。为了解决上述技术问题,本申请第二方面提供一种记录存储数据发生变化的装置,所述装置包括确定模块、查询模块、建立模块和记录模块,所述确定模块用于确定逻辑单元号LUN中当前变化逻辑块所在的逻辑块区,并将确定的逻辑块区发生给所述查询模块,其中,所述逻辑单元号LUN至少包括两个逻辑块区,所述逻辑块区包含多个逻辑块;所述查询模块用于查询位图集中是否已存在所述逻辑块区的对应位图,并将查询结果发送给建立模块和记录模块,其中,所述位图集用于放置多个位图,每个所述位图用于记录对应ー个所述逻辑块区的逻辑块发生变化,所述逻辑块区的对应位图即为记录所述逻辑块区的逻辑块发生变化的位图;所述建立模块用于在未查询到所述逻辑块区的对应位图时,在所述位图集中建立所述逻辑块区的对应位图,并将所述对应位图发送给所述记录模块;所述记录模块用于在所述对应位图中记录所述当前变化逻辑块发生变化。结合第二方面,本申请第二方面第一种可能的实施方式为:还包括划分模块,所述划分模块用于将所述逻辑单元号LUN中的存储数据划分为多个逻辑块,将所述多个逻辑块划分为第一数值个逻辑块区,确定每个逻辑块区的对应位图信息,并将所述每个逻辑块区的对应位图信息发送给所述记录模块,其中,所述第一数值至少为2,所述逻辑块区的对应位图信息包括所述逻辑块区的对应位图的位数等于所述逻辑块区的逻辑块数,所述逻辑块区的对应位图的每个位分别对应用于记录所述逻辑块区的一个逻辑块是否发生变化,每个位可被设置为第一标记或者第二标记,所述第一标记用于表示该位所对应的逻辑块发生了变化,所述第二标记用于表示该位所对应的逻辑块没有发生变化。结合第二方面的第一种可能的实施方式,本申请第二方面第二种可能的实施方式为:所述记录模块具体用于根据所述逻辑块区的对应位图信息,查找出所述对应位图中用于记录所述当前变化逻辑块是否发生变化的位,并将查找出的位设置为第一标记,并记录所述当前变化逻辑块发生变化的时间。结合第二方面的第二种可能的实施方式,本申请第二方面第三种可能的实施方式为:还包括复制模块,所述复制模块用于在接收复制命令时,获取所述复制命令中的预设时间条件,在所述位图集中捜索出所述逻辑块发生变化的时间符合所述预设时间条件的位图中的位,将搜索出的位图中的位所对应的逻辑块进行复制操作,在复制完成后将所述捜索出的位图中的位设置为所述第二标记。结合第二方面的第一至三任ー种可能的实施方式,本申请第二方面第四种可能的实施方式为:还包括删除模块,所述删除模块用于检测所述位图集中是否存在所有位均为所述第二标记的位图,如果存在,则将所述位图从位图集中删除。通过上述方案,本申请采用位图集来实现记录LUN的存储数据的变化,并在逻辑块发生变化时,才建立该逻辑块的对应位图,区别于固定采用ー个位图记录LUN所有存储数据的本文档来自技高网
...
一种记录存储数据发生变化的方法及装置

【技术保护点】
一种记录存储数据发生变化的方法,其特征在于,所述方法包括以下步骤:确定逻辑单元号LUN中当前变化逻辑块所在的逻辑块区,其中,所述逻辑单元号LUN至少包括两个逻辑块区,所述逻辑块区包含多个逻辑块;查询位图集中是否已存在所述逻辑块区的对应位图,其中,所述位图集用于放置多个位图,每个所述位图用于记录对应一个所述逻辑块区的逻辑块发生变化,所述逻辑块区的对应位图即为记录所述逻辑块区的逻辑块发生变化的位图;如果不存在,则在所述位图集中建立所述逻辑块区的对应位图,并在所述对应位图中记录所述当前变化逻辑块发生变化;如果存在,则直接在所述对应位图中记录所述当前变化逻辑块发生变化。

【技术特征摘要】
1.一种记录存储数据发生变化的方法,其特征在于,所述方法包括以下步骤: 确定逻辑单元号LUN中当前变化逻辑块所在的逻辑块区,其中,所述逻辑单元号LUN至少包括两个逻辑块区,所述逻辑块区包含多个逻辑块; 查询位图集中是否已存在所述逻辑块区的对应位图,其中,所述位图集用于放置多个位图,每个所述位图用于记录对应ー个所述逻辑块区的逻辑块发生变化,所述逻辑块区的对应位图即为记录所述逻辑块区的逻辑块发生变化的位图; 如果不存在,则在所述位图集中建立所述逻辑块区的对应位图,并在所述对应位图中记录所述当前变化逻辑块发生变化; 如果存在,则直接在所述对应位图中记录所述当前变化逻辑块发生变化。2.根据权利要求1所述的方法,其特征在于,所述查询位图集中是否已存在所述逻辑块区的对应位图的步骤之前,所述方法还包括: 将所述逻辑单元号LUN中的存储数据划分为多个逻辑块; 将所述多个逻辑块划分为第一数值个逻辑块区,其中,所述第一数值至少为2 ; 确定每个逻辑块区的对应位图信息,其中,所述逻辑块区的对应位图信息包括所述逻辑块区的对应位图的位数等于所述逻辑块区的逻辑块数,所述逻辑块区的对应位图的每个位分别对应用于记录所述逻辑块区的一个逻辑块是否发生变化,每个位可被设置为第一标记或者第二标记,所述第一标记用于表示该位所对应的逻辑块发生了变化,所述第二标记用于表示该位所对应的逻辑块没有发生变化。3.根据权利要求2所述的方法,其特征在于,所述在所述对应位图中记录所述当前变化逻辑块发生变化的步骤包括: 根据所述逻辑块区的对应位图信息,查找出所述对应位图中用于记录所述当前变化逻辑块是否发生变化的位,并将查找出的位设置为第一标记,记录所述当前变化逻辑块发生变化的时间。4.根据权利要求3所述的方法,其特征在于,所述方法还包括: 在接收复制命令时,获取所述复制命令中的预设时间条件; 在所述位图集中捜索出所述逻辑块发生变化的时间符合所述预设时间条件的位图中的位; 将搜索出的位图中的位所对应的逻辑块进行复制操作,在复制完成后将所述捜索出的位图中的位设置为所述第二标记。5.根据权利要求2至4任一项所述的方法,其特征在于,所述方法还包括: 检测所述位图集中是否存在所有位均为所述第二标记的位图,如果存在,则将所述位图从位图集中删除。6.一种记录存储数据发生变化的装置,其特征在于,所述装置包括确定模块、...

【专利技术属性】
技术研发人员:严俊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1