CN107329702A - 一种自精简元数据管理方法及装置 - Google Patents
一种自精简元数据管理方法及装置 Download PDFInfo
- Publication number
- CN107329702A CN107329702A CN201710522497.7A CN201710522497A CN107329702A CN 107329702 A CN107329702 A CN 107329702A CN 201710522497 A CN201710522497 A CN 201710522497A CN 107329702 A CN107329702 A CN 107329702A
- Authority
- CN
- China
- Prior art keywords
- data block
- identification information
- trees
- data
- management
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 151
- 238000013523 data management Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 abstract description 5
- 238000000034 method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 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
- 230000008569 process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0626—Reducing size or complexity of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
Abstract
本发明公开了一种自精简元数据管理方法及装置,通过确定写入数据的数据块的标识信息;根据标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;当数据块标识信息管理B+树中存在标识信息时,从数据块标识信息管理B+树中读取与标识信息对应的实际空间数据块号,并将虚拟空间数据块号、实际空间数据块号以及标识信息插入到数据块管理B+树中。本申请在自精简的基础上,通过使用一种数据检测方法,将重删功能引入到自精简中,从而进一步优化空间管理,最大限度的节省存储系统的空间开销,提高了存储系统的空间利用率,降低了系统成本。
Description
技术领域
本发明涉及存储技术领域,特别是涉及一种自精简元数据管理方法及装置。
背景技术
在存储技术领域,自精简技术是一种应用广泛的技术,也是存储系统的一项基本功能,它的作用在于可以使存储系统对于空间的使用采用按需分配的方式,即创建完一个卷后不会立即分配整个卷的空间,而是需要多少空间便实际分配多少空间,通过这种方式可有效节省空间的使用,从而节省成本投入。
通过自精简技术,可以节省空间的使用,但并不能合并对于卷中的重复数据,对于卷中重复的数据仍然会存在空间浪费的情况,在这种情形下,重删技术也就越来越受重视,重删技术主要是通过不同的数据检测方法,将存储数据中重复的部分进行合并压缩,从而减少重复数据对空间的占用。
发明内容
本发明的目的是提供一种自精简元数据管理方法及装置,以解决现有自精简技术不能对卷中的重复数据进行处理,导致重复数据对空间的占用的问题。
为解决上述技术问题,本发明提供一种自精简元数据管理方法,包括:
确定写入数据的数据块的标识信息;
根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
可选地,所述确定写入数据的数据块的标识信息包括:
判断写入数据的数据块是否为新块;
当所述数据块为新块时,计算所述数据块的标识信息;
当所述数据块不为新块时,获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息。
可选地,所述通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改包括:
判断原实际空间数据块的引用计数是否为1;
如果否,则对应的引用计数减一;如果是,则对应的引用计数归零,并从所述数据块标识信息管理B+树中删除所述原实际空间数据块对应的标识信息。
可选地,在所述根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息之后还包括:
当所述数据块为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,为所述数据块分配一个对应的实际空间数据块;
将所述标识信息与分配的实际空间数据块号插入到所述数据块标识信息管理B+树中,并且引用计数加一;
将虚拟空间数据块号与所述实际空间数据块号插入到所述数据块管理B+树中;
向实际空间数据块中更新数据。
可选地,在所述根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息之后还包括:
当所述数据块不为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,将重新计算得到的所述标识信息与对应的实际空间数据块号插入到数据块标识信息管理B+树中,并将引用计数加一;
更新所述数据块管理B+树中保存的标识信息;
更新实际空间数据块数据。
可选地,所述当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中包括:
当所述数据块为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中;
当所述数据块不为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中。
可选地,在所述将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中之后还包括:
判断原实际空间数据块的引用计数是否归零,如果是,则释放原实际空间数据块。
本发明还提供了一种自精简元数据管理装置,包括:
标识信息确定模块,用于确定写入数据的数据块的标识信息;
查询模块,用于根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
处理模块,用于当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
可选地,所述标识信息确定模块包括:
判断单元,用于判断写入数据的数据块是否为新块;
第一计算单元,用于当所述数据块为新块时,计算所述数据块的标识信息;
第二计算单元,用于当所述数据块不为新块时,获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息。
本发明所提供的自精简元数据管理方法及装置,通过确定写入数据的数据块的标识信息;根据标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;当数据块标识信息管理B+树中存在标识信息时,从数据块标识信息管理B+树中读取与标识信息对应的实际空间数据块号,并将虚拟空间数据块号、实际空间数据块号以及标识信息插入到数据块管理B+树中。本申请在自精简的基础上,通过使用一种数据检测方法,将重删功能引入到自精简中,从而进一步优化空间管理,最大限度的节省存储系统的空间开销,提高了存储系统的空间利用率,降低了系统成本。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的自精简元数据管理方法的一种具体实施方式的流程图;
图2为本发明实施例改进的数据块管理B+树的示意图;
图3为本发明实施例中数据块标识信息管理B+树的示意图;
图4为本发明所提供的自精简元数据管理方法的另一种具体实施方式的流程图;
图5为本发明实施例自精简卷在工作时的流程图;
图6为本发明实施例提供的自精简元数据管理装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明所提供的自精简元数据管理方法的一种具体实施方式的流程图如图1所示,本发明实施例以自精简的数据块为单位,在已有自精简数据块管理B+树的基础上,对其进行改进。
自精简卷在管理时,分为实际容量和虚拟容量,其中,虚拟容量是指用户在创建卷时指定的容量,即该卷最多可使用的用量,实际容量是指该卷实际占用物理空间的容量,即实际使用的容量。自精简最核心的工作便是维护实际空间与虚拟空间的映射关系,通常自精简卷在工作时会将空间划分为大小固定的数据块,而后通过B+树来管理虚拟空间数据块与实际空间数据块的映射关系,当用户需要写入数据时,数据所在虚拟空间的块号与数据所在实际空间的块号之间的对应关系将保存到自精简卷的B+树中,而当用户需要查询数据时,也将根据数据所在虚拟空间的块号,从B+树中查询到对应实际空间的块号,从而读取出数据。
需要指出的是,本发明实施例中数据块管理B+树的key值仍为虚拟空间块号,value值除了实际空间块号,再增加一项该数据块的标识信息。此外,再引入一个数据块标识信息管理B+树,这个B+树的key值为自精简数据块的标识信息,value值则为此标识信息对应的实际空间数据块的块号以及该块号的引用计数(引用计数的作用是用来显示该数据块被复用的次数)。
其中,标识信息为标识数据块中数据的唯一性的信息,从而有效区分不同数据块中数据的一致性与否。作为一种具体实施例,本发明采用MD5值来作为标识信息,当然,数据块也可由MD5值以外的其他满足要求算法来计算和表示,这均不影响本发明的实现。以标识信息为MD5值为例,本发明实施例改进的数据块管理B+树的示意图如图2所示,数据块标识信息管理B+树的示意图如图3所示。
该方法具体包括:
步骤S101:确定写入数据的数据块的标识信息;
具体地,可以对数据块中写入的数据进行计算,得到该数据块对应的MD5值,作为其标识信息。
步骤S102:根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
由于建立的数据块标识信息管理B+树的value值包括了实际空间块号以及该数据块的标识信息,因此可以通过计算出的标识信息,如MD5值在数据块标识信息管理B+树中查询是否已经存在该MD5值,如果存在,则表明该数据块中写入的数据为重复数据;如果不存在,则表明该数据块中写入的数据不为重复数据。
步骤S103:当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
在数据块标识信息管理B+树中存在当前数据块的标识信息时,表明写入的数据为重复数据,此时仅需要从数据块标识信息管理B+树中读取与该标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中,记录其对应关系即可,不再需要对重复数据分配一个实际的存储空间,能够大大节省存储系统的空间开销。
本发明所提供的自精简元数据管理方法,通过确定写入数据的数据块的标识信息;根据标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;当数据块标识信息管理B+树中存在标识信息时,从数据块标识信息管理B+树中读取与标识信息对应的实际空间数据块号,并将虚拟空间数据块号、实际空间数据块号以及标识信息插入到数据块管理B+树中。本申请在自精简的基础上,通过使用一种简单的数据检测方法,将重删功能引入到自精简中,从而进一步优化空间管理,最大限度的节省存储系统的空间开销,提高了存储系统的空间利用率,降低了系统成本。
在上述实施例的基础上,本发明所提供的自精简元数据管理方法在确定写入数据的数据块的标识信息的过程中需要判断该数据块是否已经被写入过数据,本发明所提供的自精简元数据管理方法的另一种具体实施方式的流程图如图4所示,该方法包括:
步骤S201:判断写入数据的数据块是否为新块;如果是,则进入步骤S202;如果否,则进入步骤S203;
步骤S202:计算所述数据块的标识信息;
步骤S203:获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息;
其中,通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改具体为:判断原实际空间数据块的引用计数是否为1;如果否,则对应的引用计数减一;如果是,则对应的引用计数归零,并从所述数据块标识信息管理B+树中删除所述原实际空间数据块对应的标识信息。
根据判断数据块是否为新块,以及数据块标识信息管理B+树中是否存在标识信息两个条件,对自精简元数据进行管理的过程可以分为下面几种情况:
(1)当所述数据块为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,为所述数据块分配一个对应的实际空间数据块;将所述标识信息与分配的所述实际空间数据块号插入到所述数据块标识信息管理B+树中,并且引用计数加一;将虚拟空间数据块号与所述实际空间数据块号插入到所述数据块管理B+树中;向实际空间数据块中更新数据。
(2)当所述数据块为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
(3)当所述数据块不为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中。
在所述将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中之后还包括:判断原实际空间数据块的引用计数是否归零,如果是,则释放原实际空间数据块。
(4)当所述数据块不为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,将重新计算得到的所述标识信息与对应的实际空间数据块号插入到数据块标识信息管理B+树中,并将引用计数加一;更新所述数据块管理B+树中保存的标识信息;更新实际空间数据块数据。
参照图5自精简卷在工作时的流程图所示,以标识信息为MD5为例,下面结合具体场景对本发明所提供的自精简元数据管理方法进行进一步详细阐述。
当用户向一个虚拟空间数据块写入数据时,可分为以下几种情况:
如果写入数据的数据块是一个新块,则在数据块管理B+树,查询不到该块对应于实际空间中的数据块,因而也查询不到数据的原始MD5值。此时当数据需要落盘时,需要首先计算该数据块的MD5值,而后利用获得的MD5值,到MD5值管理B+树中查询该MD5值是否存在。
如果发现该MD5值不存在,说明该数据块中的数据不存在重复数据,则自精简卷将从实际空间中分配一个新的数据块,并将虚拟空间数据块与实际空间数据块的对应关系以及该块数据的MD5值插入到数据块管理B+树中,而后将该MD5值与实际空间数据块的块号插入到MD5值管理B+树中,同时引用计数设为1。
如果发现该MD5值存在,发现该数据块中的数据已存在重复数据,则从MD5值管理B+树中读出该MD5对应的实际空间数据块号,并将虚拟空间数据块号与该实际空间数据块号插入到数据块管理B+树中,同时MD5值管理B+树中该MD5值对应的实际空间数据块号的引用计数加1。
如果写入的数据的数据块不是一个新块,则从数据块管理B+树中可以查询到此数据块的原始MD5值,首先,通过原始MD5值到MD5值管理B+树中找到对应数据块的引用计数并减1,如果减1后引用计数为0,则从MD5值管理B+树中删除此MD5值;其后,在数据落盘时,计算数据块新的MD5值,并利用新的值到MD5值管理B+树中查询该值是否存在。
如果存在,则更新数据块管理B+树中对应的实际空间数据块号及MD5值,而数据并不需要真的落盘,同时如果原先对应的实际空间数据块的引用计数在上一步中减为0,则释放原先的实际空间数据块并交还系统;
如果不存在,在向MD5值管理B+树中插入MD5以及对应的实际空间数据块号并将引用计数加1,同时数据块管理B+树中该块对应的MD5值并更新实际空间数据块的数据。
本发明提供的自精简元数据管理方法,改进了普通自精简元数据管理的B+树结构,B+数中除保存虚拟空间数据块号对应的实际空间数据块号外,还保存该数据块的MD5值。引入一个新的MD5值管理B+树来管理数据块的MD5值,其中树的key为已有的MD5值,value值为MD5值对应的实际空间数据块号以及改数据块的引用计数。通过数据块管理B+树与MD5值管理B+树,实现自精简的数据对应和重复数据的合并删除操作。可见,本申请在普通的自精简元数据管理方法中融合了重删的设计,采用简便有效的实现方法,保证了自精简与重删的有机结合。
下面对本发明实施例提供的自精简元数据管理装置进行介绍,下文描述的自精简元数据管理装置与上文描述的自精简元数据管理方法可相互对应参照。
图6为本发明实施例提供的自精简元数据管理装置的结构框图,参照图6自精简元数据管理装置可以包括:
标识信息确定模块100,用于确定写入数据的数据块的标识信息;
查询模块200,用于根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
处理模块300,用于当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
作为一种具体实施方式,本发明所提供的自精简元数据管理装置中,所述标识信息确定模块包括:
判断单元,用于判断写入数据的数据块是否为新块;
第一计算单元,用于当所述数据块为新块时,计算所述数据块的标识信息;
第二计算单元,用于当所述数据块不为新块时,获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息。
本实施例的自精简元数据管理装置用于实现前述的自精简元数据管理方法,因此自精简元数据管理装置中的具体实施方式可见前文中的自精简元数据管理方法的实施例部分,例如,标识信息确定模块100,查询模块200,处理模块300,分别用于实现上述自精简元数据管理方法中步骤S101,S102,S103,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本发明所提供的自精简元数据管理装置,通过确定写入数据的数据块的标识信息;根据标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;当数据块标识信息管理B+树中存在标识信息时,从数据块标识信息管理B+树中读取与标识信息对应的实际空间数据块号,并将虚拟空间数据块号、实际空间数据块号以及标识信息插入到数据块管理B+树中。本申请在自精简的基础上,通过使用一种数据检测方法,将重删功能引入到自精简中,从而进一步优化空间管理,最大限度的节省存储系统的空间开销,提高了存储系统的空间利用率,降低了系统成本。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的自精简元数据管理方法以及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (9)
1.一种自精简元数据管理方法,其特征在于,包括:
确定写入数据的数据块的标识信息;
根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
2.如权利要求1所述的自精简元数据管理方法,其特征在于,所述确定写入数据的数据块的标识信息包括:
判断写入数据的数据块是否为新块;
当所述数据块为新块时,计算所述数据块的标识信息;
当所述数据块不为新块时,获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息。
3.如权利要求2所述的自精简元数据管理方法,其特征在于,所述通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改包括:
判断原实际空间数据块的引用计数是否为1;
如果否,则对应的引用计数减一;如果是,则对应的引用计数归零,并从所述数据块标识信息管理B+树中删除所述原实际空间数据块对应的标识信息。
4.如权利要求2所述的自精简元数据管理方法,其特征在于,在所述根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息之后还包括:
当所述数据块为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,为所述数据块分配一个对应的实际空间数据块;
将所述标识信息与分配的实际空间数据块号插入到所述数据块标识信息管理B+树中,并且引用计数加一;
将虚拟空间数据块号与所述实际空间数据块号插入到所述数据块管理B+树中;
向实际空间数据块中更新数据。
5.如权利要求4所述的自精简元数据管理方法,其特征在于,在所述根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息之后还包括:
当所述数据块不为新块且所述数据块标识信息管理B+树中不存在所述标识信息时,将重新计算得到的所述标识信息与对应的实际空间数据块号插入到数据块标识信息管理B+树中,并将引用计数加一;
更新所述数据块管理B+树中保存的标识信息;
更新实际空间数据块数据。
6.如权利要求2至5任一项所述的自精简元数据管理方法,其特征在于,所述当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中包括:
当所述数据块为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中;
当所述数据块不为新块且所述数据块标识信息管理B+树中存在所述标识信息时,读取与所述标识信息对应的实际空间数据块号,并将引用计数加一,将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中。
7.如权利要求6所述的自精简元数据管理方法,其特征在于,在所述将虚拟空间数据块号、所述实际空间数据块号以及重新计算得到的所述标识信息插入到数据块管理B+树中之后还包括:
判断原实际空间数据块的引用计数是否归零,如果是,则释放原实际空间数据块。
8.一种自精简元数据管理装置,其特征在于,包括:
标识信息确定模块,用于确定写入数据的数据块的标识信息;
查询模块,用于根据所述标识信息查询预建立的数据块标识信息管理B+树中是否存在所述标识信息;
处理模块,用于当所述数据块标识信息管理B+树中存在所述标识信息时,从所述数据块标识信息管理B+树中读取与所述标识信息对应的实际空间数据块号,并将虚拟空间数据块号、所述实际空间数据块号以及所述标识信息插入到数据块管理B+树中。
9.如权利要求8所述的自精简元数据管理装置,其特征在于,所述标识信息确定模块包括:
判断单元,用于判断写入数据的数据块是否为新块;
第一计算单元,用于当所述数据块为新块时,计算所述数据块的标识信息;
第二计算单元,用于当所述数据块不为新块时,获取对应的原实际空间数据块以及原标识信息;通过所述原标识信息查询所述数据块标识信息管理B+树中对应的引用计数,对引用计数进行修改;并重新计算写入数据后所述数据块的标识信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710522497.7A CN107329702B (zh) | 2017-06-30 | 2017-06-30 | 一种自精简元数据管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710522497.7A CN107329702B (zh) | 2017-06-30 | 2017-06-30 | 一种自精简元数据管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107329702A true CN107329702A (zh) | 2017-11-07 |
CN107329702B CN107329702B (zh) | 2020-08-21 |
Family
ID=60199446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710522497.7A Active CN107329702B (zh) | 2017-06-30 | 2017-06-30 | 一种自精简元数据管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107329702B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165132A (zh) * | 2018-08-28 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种对存储设备进行测试的方法、装置及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101908073A (zh) * | 2010-08-13 | 2010-12-08 | 清华大学 | 一种文件系统中实时删除重复数据的方法 |
CN101917396A (zh) * | 2010-06-25 | 2010-12-15 | 清华大学 | 一种网络文件系统中数据的实时去重和传输方法 |
CN102646069A (zh) * | 2012-02-23 | 2012-08-22 | 华中科技大学 | 一种延长固态盘使用寿命的方法 |
CN103150258A (zh) * | 2013-03-20 | 2013-06-12 | 中国科学院苏州纳米技术与纳米仿生研究所 | 一种固态存储系统的写入、读取及垃圾收集方法 |
CN103154950A (zh) * | 2012-05-04 | 2013-06-12 | 华为技术有限公司 | 重复数据删除方法及装置 |
US9465699B2 (en) * | 2012-07-30 | 2016-10-11 | International Business Machines Corporation | Method and system for data backup |
CN106155934A (zh) * | 2016-06-27 | 2016-11-23 | 华中科技大学 | 一种云环境下基于重复数据的缓存方法 |
CN106775452A (zh) * | 2016-11-18 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种数据监管方法及系统 |
-
2017
- 2017-06-30 CN CN201710522497.7A patent/CN107329702B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917396A (zh) * | 2010-06-25 | 2010-12-15 | 清华大学 | 一种网络文件系统中数据的实时去重和传输方法 |
CN101908073A (zh) * | 2010-08-13 | 2010-12-08 | 清华大学 | 一种文件系统中实时删除重复数据的方法 |
CN102646069A (zh) * | 2012-02-23 | 2012-08-22 | 华中科技大学 | 一种延长固态盘使用寿命的方法 |
CN103154950A (zh) * | 2012-05-04 | 2013-06-12 | 华为技术有限公司 | 重复数据删除方法及装置 |
US9465699B2 (en) * | 2012-07-30 | 2016-10-11 | International Business Machines Corporation | Method and system for data backup |
CN103150258A (zh) * | 2013-03-20 | 2013-06-12 | 中国科学院苏州纳米技术与纳米仿生研究所 | 一种固态存储系统的写入、读取及垃圾收集方法 |
CN106155934A (zh) * | 2016-06-27 | 2016-11-23 | 华中科技大学 | 一种云环境下基于重复数据的缓存方法 |
CN106775452A (zh) * | 2016-11-18 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种数据监管方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165132A (zh) * | 2018-08-28 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种对存储设备进行测试的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107329702B (zh) | 2020-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210326815A1 (en) | Information storage and retrieval using an off-chain isomorphic database and a distributed ledger | |
US10296219B2 (en) | Data deduplication in a block-based storage system | |
US7418546B2 (en) | Storage resource management method for storage system | |
CN101189584B (zh) | 内存页面管理 | |
CN106776967A (zh) | 基于时序聚合算法的海量小文件实时存储方法及装置 | |
CN107562915A (zh) | 读取小文件的方法、装置和设备及计算机可读存储介质 | |
CN110008142A (zh) | 存储数据管理方法、装置、设备及计算机可读存储介质 | |
CN108763473A (zh) | 一种分布式存储的本地对象存储方法及装置 | |
CN107632791A (zh) | 一种存储空间的分配方法及系统 | |
CN109086462A (zh) | 一种分布式文件系统中元数据的管理方法 | |
CN110399333B (zh) | 删除快照的方法、设备和计算机程序产品 | |
CN107256196A (zh) | 基于闪存阵列的支持零拷贝的缓存系统及方法 | |
CN107239569A (zh) | 一种分布式文件系统子树存储方法及装置 | |
CN110399096A (zh) | 分布式文件系统元数据缓存重删的方法、装置以及设备 | |
US20130339394A1 (en) | System, Method, and Computer Program Product for Modeling Changes to Large Scale Datasets | |
CN110377529A (zh) | 一种全闪存储系统数据管理的方法、装置以及设备 | |
CN109117088A (zh) | 一种数据处理方法及系统 | |
CN107665255A (zh) | 键值数据库数据变更的方法、装置、设备及存储介质 | |
CN110147331A (zh) | 缓存数据处理方法、系统及可读存储介质 | |
CN109471843A (zh) | 一种元数据缓存方法、系统及相关装置 | |
US20200142880A1 (en) | Method, device and computer program product for data processing | |
CN107329702A (zh) | 一种自精简元数据管理方法及装置 | |
CN107506466A (zh) | 一种小文件存储方法及系统 | |
CN107368545A (zh) | 一种基于MerkleTree变形算法的去重方法及装置 | |
US11429311B1 (en) | Method and system for managing requests in a distributed system |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200723 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |