CN102364474A - 用于机群文件系统的元数据存储系统和管理方法 - Google Patents

用于机群文件系统的元数据存储系统和管理方法 Download PDF

Info

Publication number
CN102364474A
CN102364474A CN2011103665592A CN201110366559A CN102364474A CN 102364474 A CN102364474 A CN 102364474A CN 2011103665592 A CN2011103665592 A CN 2011103665592A CN 201110366559 A CN201110366559 A CN 201110366559A CN 102364474 A CN102364474 A CN 102364474A
Authority
CN
China
Prior art keywords
metadata
ssd
storage unit
buffer zone
item
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
CN2011103665592A
Other languages
English (en)
Other versions
CN102364474B (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.)
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201110366559.2A priority Critical patent/CN102364474B/zh
Publication of CN102364474A publication Critical patent/CN102364474A/zh
Priority to PCT/CN2012/084759 priority patent/WO2013071882A1/zh
Priority to EP12849116.4A priority patent/EP2735978B1/en
Priority to US14/278,744 priority patent/US9449005B2/en
Application granted granted Critical
Publication of CN102364474B publication Critical patent/CN102364474B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1858Parallel file systems, i.e. file systems supporting multiple processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供用于机群文件系统中的元数据存储系统和管理方法。其中,用DRAM+SSD+HDD三层架构来存储机群文件系统的元数据,将元数据按照写入的时间依次顺序写入DRAM中的元数据缓冲区中。当一个元数据缓冲区被写满后,将其顺序写回到SSD上以形成一个新的元数据存储单元,同时将其头结构中对应的元数据索引信息以元数据索引单元的形式保存在DRAM中。采用基于追加写方式保存元数据后,可以有效提高机群文件系统元数据操作的性能。另外,还提供了基于访问热度的数据迁移策略,将更多经常访问的元数据留在SSD上,提高了元数据读操作的性能。

Description

用于机群文件系统的元数据存储系统和管理方法
技术领域
本发明涉及机群文件系统体系结构,尤其涉及机群文件系统中的元数据存储及相关的数据迁移机制。
背景技术
随着信息技术的发展,人类产生、保存和处理的数据越来越多。文件的数量随着数据量的增加而明显增加,这给基于传统的动态随机存储器(Dynamic Random Access Memory,DRAM)+硬盘驱动(Hard Disk Drive,HDD)存储架构的机群文件系统的元数据存储系统提出了严峻的挑战:
在存储规模方面,元数据的存储总量越来越大。机群文件系统中要保存的文件数量越来越多,特别是随着互联网应用的高速发展,文件以多种形式存在,如邮件、照片、视频、报表等。伴随着数据总量的增多,文件总量也以每年近两倍的速度增长,这使得机群文件系统的元数据总量迅速膨胀。在元数据操作性能方面,性能的需求也逐渐提高。高性能计算逐渐由CPU密集型向I/O密集型转变,系统的I/O效率对性能有着重要的影响,这也就要求存储系统有很高的元数据操作性能。此外互联网的高速发展也对海量存储系统的元数据操作性能有更高的要求。
这些挑战使基于传统DRAM+HDD存储架构的元数据存储系统无法满足需求。这是因为由于元数据总量较大,DRAM无法满足所有元数据请求,一部分元数据I/O请求将发往HDD,而HDD巨大的I/O时延将成为系统的性能瓶颈。
相对于HDD,固态硬盘SSD(Solid-state Drive)具有高带宽、低时延的优势,但使用SSD存储元数据也面临很多问题。对于基于传统DRAM+HDD存储架构的机群文件系统的元数据存储组织方式,一般采用基于目录树存储或者将元数据保存在数据库中,这会造成元数据I/O模式以小粒度随机I/O为主,这种I/O也并不适合于SSD。因为,SSD的性能受到I/O模式的影响,SSD的顺序I/O性能好于随机I/O性能。其次,小粒度随机写会减少SSD的使用寿命,且会造成SSD的碎片化,对后续I/O操作造成不利影响。此外,SSD的价格比较昂贵,且单盘存储容量较小,这些都会影响SSD的使用。而对那些基于NVRAM(Non-Volatile RadomAccess Memory,非易失性随机访问存储器)、PRAM(Phase-change RAM,相变存储器材)之类新型存储介质的元数据存储组织结构,如将元数据单独存储、压缩存储或者与小文件一起联合存储,由于上层是按字节寻址,所以访问模式还是以小粒度随机I/O为主,这也并不适合SSD。
现有的针对特定负载所设计的SSD存储系统,根据SSD的I/O特性做针对性的优化,例如通过写缓冲区将小粒度随机写转化成大粒度顺序写,充分发挥SSD的性能并保证其使用寿命。但这类系统在设计实现上依赖于负载特征,并根据这些特征做了很多简化。由于机群文件系统的元数据存储系统有自己的性能需求和I/O负载特征,所以这些系统也不能直接应用到元数据存储中。
现有的采用DRAM+SSD+HDD三层存储的存储系统,一般有三种设计策略:SSD做HDD的缓冲、HDD作SSD的写缓冲和数据分别放置在SSD和HDD上。对于第一和第三种策略,由于SSD会接受大量小粒度随机I/O而造成快速磨损,所以SSD的使用寿命得不到保证。第二种将HDD作为SSD写缓冲的策略,对于机群文件系统的元数据存储应用来说,主要有两个问题:一是数据最终放到SSD上,当数据规模很大时,需要大量SSD,这样增加了系统造价;二是HDD作为写缓冲,有可能有部分元数据读请求会发往HDD,这样就大大提高元数据读请求时延,读操作是个同步操作,读请求时延过大会影响这个系统的性能,因此,该第二种策略也不能满足机群文件系统的元数据存储系统的需求。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供用于机群文件系统中元数据存储系统和管理方法,在解决HDD引起的性能瓶颈的同时,既充分发挥SSD的性能优势,又保证了SSD的使用寿命。
本发明的目的是通过以下技术方案实现的:
一方面,本发明提供了一种用于机群文件系统中的元数据存储系统,该系统包括DRAM和SDD;
所述DRAM包括多个元数据缓冲区和元数据索引单元;每个元数据缓冲区中的元数据是按照写入的时间依次顺序写入的,每个元数据缓存区对应一个用于存储该缓冲区的元数据索引信息的头结构;每次将元数据缓冲区中的数据写回到SSD上时形成一个新的元数据索引单元,用于保存该元数据缓冲区的头结构所包含的元数据索引信息;
所述SSD上包括元数据文件,所述元数据文件包含按照写回时间的顺序组织的多个元数据存储单元;每次将一个元数据缓冲区中的数据写回到SSD上时形成一个新的元数据存储单元,用于保存从该元数据缓冲区写入的元数据;每个元数据存储单元对应于DRAM中的一个元数据索引单元。
上述的元数据存储系统中,还包括用于保存来自SSD的元数据的HDD。
上述的元数据存储系统中,所述头结构包括一个Bloom Filter和一个哈希表,所述Bloom Filter用来记录该元数据缓冲区中保存了哪些元数据项,所述哈希表用于维护元数据项的标识符以及该元数据项在元数据缓冲区中偏移量的映射。
上述的元数据存储系统中,SDD上还包括用于存储元数据索引信息的元数据索引文件;DRAM中还包括读缓存模块,用于缓存从SSD读取的元数据。
又一方面,本发明提供了一种用于上述的元数据存储系统的元数据管理方法,所述方法包括:
步骤1)将元数据按照写入的时间依次顺序写入DRAM中的元数据缓冲区中;
步骤2)当一个元数据缓冲区被写满后,将其顺序写回到SSD上以形成一个新的元数据存储单元,同时将其头结构中对应的元数据索引信息以元数据索引单元的形式保存在DRAM中,所述元数据存储单元按照写回时间的顺序组织到一个元数据文件中。
上述方法中,所述头结构包括一个Bloom Filter和一个哈希表,所述Bloom Filter用来记录该元数据缓冲区中保存了哪些元数据项,所述哈希表用于维护元数据项的标识符以及该元数据项在元数据缓冲区中偏移量的映射。
上述方法中,步骤2)还可以包括在将一个元数据缓冲区顺序写回到SSD的同时,将其对应的元数据索引信息也顺序写回到SSD上的元数据索引文件中。
上述方法中,步骤2)还可以包括在将一个元数据缓冲区写回到SSD时,根据其头结构中的元数据项的标识符来判断SSD上哪些数据项已经无效的步骤;以及在已经无效的元数据项所在的元数据存储单元对应的元数据索引单元中对该元数据项做无效标记的步骤。
上述方法中,可以以64叉树和链接结合的方式来组织的Bloom Filter,每颗64叉树的深度不超过2层,多个64叉树组成一个链表,其中每个64叉树的非叶子节点的对应的Bloom Filter是其孩子节点的Bloom Filter的异或结果。
上述方法中,还可以包括将元数据存储单元从SSD迁移到HDD的步骤,该步骤包括:比较元数据存储单元的访问热度与预定阈值以判断该元数据存储单元是否需要被迁移;当元数据存储单元的访问热度小于预定阈值,则将其从SSD中迁移到HDD上,反之将该元数据存储单元中有效的元数据项写入DRAM中的元数据缓冲区中;
其中所述元数据存储单元的访问热度以如下公式进行计算:
HEAT i + 1 = u &times; K NUM + ( 1 - u ) &times; HEAT i ; ( 0 < u < 1 )
其中,HEATi+1表示该元数据存储单元的当前访问热度,HEATi表示该元数据存储单元上次的访问热度,u是(0,1)上的值,用于控制上次访问热度对当前访问热度的影响,K表示该元数据存储单元在该时间段内被访问的次数,NUM表示在该时间段内所接收的从SSD上读取元数据的请求个数;所述阈值根据元数据访问的特征来设定。
上述方法中,还可以包括对于那些无效元数据项比例超过50%的元数据存储单元,不需要判定其访问热度,直接将其从SSD上迁移到HDD上的步骤。
上述方法中,当SSD上可用空间与SSD总空间的比例小于一定空间阈值时,执行所述将元数据存储单元从SSD迁移到HDD的步骤,所述空间阀值在15%到20%之间。
上述方法中,每个固定的时间间隔执行所述将元数据存储单元从SSD迁移到HDD的步骤,对于元数据写负载较重的应用,所述时间间隔不能小于30分钟。
又一方面,本发明提供了一种机群文件系统,所述机群文件系统包括上述的元数据存储系统。
与现有技术相比,本发明的优点在于:
用DRAM+SSD+HDD三层架构来存储机群文件系统的元数据,采用基于追加写方式保存元数据,可以有效提高机群文件系统元数据操作的性能。而基于访问热度的数据迁移方法可以将更多经常访问的元数据留在SSD上,提高了元数据读操作的性能。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的元数据管理系统架构示意图;
图2为根据本发明一个实施例的元数据缓冲区头结构示意图
图3为根据本发明实施例的Bloom filter组织结构示意图;
图4为根据本发明实施例的基于访问热度的数据迁移方法流程图;
图5为采用和未采用本发明的元数据管理方法的机群文件系统中元数据的创建操作性能比较示意图;
图6为采用和未采用本发明的元数据管理方法的机群文件系统中元数据的查询操作性能比较示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明的一个实施例中,提供了用于机群文件系统的元数据存储系统,该系统包括用作系统内存的易失性随机存储器(例如DRAM或SRAM)、固态硬盘SDD和/或传统的硬盘驱动HDD。其中,采用DRAM来保存元数据存储结构的一些辅助信息,并缓存部分元数据,以提高性能;而元数据被持久化地存储在SSD上,或者SSD和HDD上。
图1给出了根据本发明一个实施例的用于机群文件系统的元数据存储系统。该系统包括三层存储架构,即DRAM+SDD+HDD。DRAM中包括多个元数据缓冲区,每个元数据缓冲区可以保存写入的多个文件或目录的元数据信息(也可以称为元数据项)。由于每个元数据项的大小不同,为了能够在元数据缓冲区中快速定位元数据,每个元数据缓冲区还对应一个头结构,头结构中包含一个哈希表和一个Bloom filter(布隆过滤器,BF)结构。BF结构利用位数组表示一个集合,能够高效判定一个元素是否属于某个集合。而哈希表则可以保存该元数据在集合中的信息,例如保存元素在集合中的位置信息。
图2给出了根据本发明一个实施例的头结构示意图,其中,该哈希表用于维护元数据项的标识符以及该元数据项在元数据缓冲区中偏移量的映射,而BF结构用来记录该元数据缓冲区中保存了哪些元数据项。如图2所示,头结构中包含两个数据结构:Bloom Filter和哈希表,其中bloomfilter是一个有0,1组成的位数组,每个1对应于元数据缓冲区中的一个元数据项。而哈希表则维护了元数据缓冲区中每个元数据项到该元数据项在元数据缓冲区中偏移的映射关系。通过Bloom Filter,系统可以快速确定某个元数据项是否在某个元数据存储单元中,如果在,则再通过哈希表查找到该元数据项的偏移,进而读出该元数据项。因此可以通过这个头结构,迅速在元数据缓冲区中定位一个元数据项。此外,为了提高元数据读操作的性能,DRAM中还包含一个读缓存模块,它将读出的元数据以LRU(Least Recently Used,最近最少使用)链表的方式组织起来。
DRAM中还包括元数据索引单元,所述元数据索引单元主要记录已经存储到SSD上的元数据的索引信息,当将元数据缓冲区中的数据写回到SSD上时,该缓冲区的头结构所包含的bloom filter和哈希表以元数据索引单元的形式保存在DRAM中。这样,通过元数据索引单元可以快速定位SSD上的元数据。下面结合元数据的写操作以及将元数据保存到SSD上的过程来介绍元数据索引单元的形成过程及其内容。
对于元数据的写操作,写入的元数据先保存在元数据缓冲区中,以追加写的方式将元数据写入元数据缓冲区中,也就是采用类似写日志的方式,将元数据按照写入的时间依次顺序写入元数据缓冲区中,每次写操作都是从上一次写操作结束的位置开始。当一个元数据缓冲区写满后,则需要将其写回到SSD上。在写回某个元数据缓冲区的过程中,该元数据缓冲区不能响应新的元数据项写请求,新来的元数据项将会写到其它没有满的元数据缓冲区中。
在SSD上,元数据是以元数据存储单元的形式保存,当DRAM中一个元数据缓冲区被写满后将其顺序写回到SSD上,形成一个新的元数据存储单元。元数据存储单元按照写回时间的顺序组织到一个元数据文件中,即每次写回元数据缓冲区的操作也都是追加写。当元数据写入SSD后,元数据缓冲区中的元数据要被释放,但是该缓冲区对应的头结构中的元数据索引信息(即,该头结构中所包含的bloom filter和哈希表)将会以元数据索引单元的形式保存在DRAM中。这样,SSD上每个元数据存储单元对应DRAM中的一个元数据索引单元。
此外元数据索引单元中还有一些其它信息,例如该元数据存储单元中无效的元数据项的标记等。这是因为元数据都是以追加写的方式写入到元数据缓冲区的,没有区分是写入新的元数据还是对已有元数据的更新。因此在将一个元数据缓冲区写回到SSD时,可以根据其头结构中的元数据项的标识符来判断是新创建的元数据还是更新的元数据。如果要写回到SSD的元数据项的标识符出现在已有的元数据索引单元中,则说明是对已有元数据的更新,以前的在SSD上与该标识符相同的其他元数据项都已经无效了,这需要在已经无效的元数据项所在的元数据存储单元对应的元数据索引单元中对该元数据项做无效标记,关于无效标记的信息也保存在元数据索引单元中。
当SSD的空间不足时,释放那些无效的元数据项或者将那些不经常被访问的元数据项迁移到HDD上来进行保存。
与现有技术相比,在本实施例中,对于元数据的写操作,只要将元数据项写入内存的元数据缓冲区中就可以返回,采用构建元数据缓冲池的方式来减少元数据缓冲区写回操作对性能的影响。当元数据缓冲区满的时候,则将这些元数据一次性顺序写到SSD上,形成新的元数据存储单元,这样就将多次小粒度的元数据项写操作转换成了一次大粒度的元数据存储单元顺序写操作。而对于元数据的更新操作,如果直接对SSD上的旧元数据项进行更新,由于上层选择元数据项进行更新时具有随机性且元数据项一般很小,则会引入大量小粒度的随机写,这会对SSD的性能和使用寿命造成不利影响。因为在上述实施例中将更新的元数据项当作新写入的元数据来处理,将其直接写入DRAM的元数据缓冲区中,待元数据缓冲区满后顺序写回到SSD上,并对已经无效的元数据项所在的元数据存储单元的索引单元上做标记。通过这种方式,可以将元数据更新操作带来的小粒度随机写转换成了与元数据写操作相同的大粒度顺序写操作。采用这种写操作模式可以避免SSD碎片化,充分发挥SSD的性能并保证了SSD的使用寿命。
在本发明的又一个实施例中,为了提高可靠性,当元数据缓冲区被写回时,可以将其对应的头结构中元数据索引信息也顺序写回到SSD上,保存到SSD上的元数据索引文件(meta index file)中。每个SSD上的元数据存储单元对应DRAM中的一个元数据索引单元。为保证元数据索引信息的可靠性,内存中元数据索引单元在SSD上也可以有一份拷贝,保存在元数据索引文件中,用以在系统出现故障或者重启时重建DRAM中的元数据索引信息。
在本发明的又一个实施中,提供了用于上述元数据存储系统的元数据管理方法。该方法主要包括写入元数据的步骤、读出元数据的步骤以及在上述的三层架构中迁移元数据的步骤。
更具体地,对于元数据的写操作已经在上文作了介绍,不论是写入新的元数据,还是更新已有的元数据,都是将元数据按照写入的时间依次顺序写入元数据缓冲区中,每次写操作都是从上一次写操作结束的位置开始。
对于元数据的读操作,关键步骤是实际上对元数据项的查询操作,也就是通过检索DRAM中的元数据索引单元来定位要读取的元数据项在SSD上具体位置。通过元数据索引单元中的BF结构确定所需元数据项在SSD上的哪个元数据存储单元中,再通过哈希表确定元数据项在该元数据存储单元的内部偏移。当系统中元数据总量较大时,BF的个数也会变多,采用线性查找效率较低。
为提高BF的查询效率,在一个实施例中,可以采用链表+64叉树的方式组织BF结构。图3根据本发明一个实施例的Bloom Filter的组织架构示意图。如图3所示。将多个BF分组,每64个BF组织成一个BF组(BloomFilter Group),每个BF组构成1颗64叉树,每颗64叉树的深度不超过2层,含有其64个叶子节点上BF的信息。当有64个BF组时,再将这64个BF组组织成一棵BF组树(Bloom Filter Group tree),每棵BF组树中的BF组组织成一个链表。这样每个BF组树就含有4096个BF,当BF数目进一步增加时,不增加树的深度,而是重新组织一棵BF组树,其中的各个BF组树也组织成一个链表。
在查找时,首先访问BF组树链表,确定元数据项在哪棵树上,然后再在BF组树中确定在某个BF上。对于BF组织成的树,非叶子节点的BF是其孩子节点的BF的异或结果,这样非叶子节点就含有了其孩子节点的所有信息。在查询时,如果发现要查询的元数据项没有在非叶子节点的BF中命中,则不需要再查询其孩子节点的BF,如果表明含有BF,再依次查询其孩子结点。与线性查找相比,采用树来组织BF可以将查找的时间复杂度从O(n)降到O(logN)。采用这种64叉树与链表相结合的方法,一方面可以加快BF的查找效率,另外也可以控制BF树的深度。
对于元数据的迁移操作,即在上述的三层架构中迁移元数据的步骤如下:当DRAM中一个元数据缓冲区被写满后将其顺序写回到SSD上,形成一个新的元数据存储单元,同时将该缓冲区对应的头结构中的元数据索引信息将会以元数据索引单元的形式保存在DRAM中。SSD上每个元数据存储单元对应DRAM中的一个元数据索引单元。其中,元数据存储单元按照写回时间的顺序组织到一个元数据文件中,即每次写回元数据缓冲区的操作也都是追加写。
由于SSD存储空间有限,所以可以周期性地或者在SSD空间不足时将部分元数据从SSD上迁移到HDD上,即释放那些无效的元数据项或者将那些不经常被访问的元数据项迁移到HDD上。与SSD上的元数据文件类似,从SSD迁移出的元数据也是以日志文件的形式保存到HDD上,迁移的粒度是元数据存储单元。当删除一个元数据存储单元时,还需要对应回收其元数据索引单元占用的DRAM和SSD上元数据索引文件对应项的空间。
与现有技术相比,对元数据采用追加写方式,可以消除SSD上的小粒度随机写操作,并通过Bloom Filter+哈希表的两级元数据索引机制加速元数据的查询操作,使SSD上的I/O操作满足“大粒度顺序写,并发随机读”的特征,既充分发挥了SSD的性能优势,又保证了SSD的使用寿命。同时与使用数据库或者多级间接索引的方式组织元数据相比,基于追加写的元数据组织结构更加节约SSD的存储空间。
在本发明的又一个实施例中,为了更充分利用SSD的存储空间以提高系统的性价比,采用了基于访问热度的迁移操作来进行元数据的迁移,即利用文件系统元数据访问具有热度的特点,将那些经常访问(访问热度较高)的元数据保存在SSD上,而那些不经常访问的(访问热度较低)的元数据则被迁移出SSD。
图4给出了根据本发明一个实施例的从SSD向HDD进行数据迁移的流程示意图。其中,采用类似FIFO的方式进行数据迁移,通过将元数据存储单元的访问热度与设定的阈值进行比较来判定该元数据存储单元是否需要被迁移。当元数据存储单元的访问热度大于阈值,则不需要进行迁移,反之则将其从SSD中迁移到HDD上。
其中,对每个元数据存储单元的访问热度按如下公式进行计算:
HEAT i + 1 = u &times; K NUM + ( 1 - u ) &times; HEAT i ; ( 0 < u < 1 )
其中,HEATi+1表示该元数据存储单元的当前访问热度,HEATi表示该元数据存储单元上次的访问热度,u是一个(0,1)上的值,用于控制上次访问热度对当前访问热度的影响。K表示该元数据存储单元在该时间段内被访问的次数,NUM表示在该时间段内上层总共发出的元数据读请求个数。因此,
Figure BDA0000109566810000102
表示在某时间段内该元数据存储单元的访问次数占总体访问的比例。访问比例越高,表明在该时间段内该元数据存储单元的访问越频繁,该元数据存储单元的访问热度就越大。
通过使用最近一段时间内的访问比例来计算元数据单元的访问热度,能够准确反映数据的最近一段时间的访问频度,避免很久之前的访问操作对当前访问热度的影响。而且加入了之前访问热度对当前访问热度的影响,防止了某些元数据存储单元短期内访问频度的剧烈变化所造成访问热度的波动。系统会周期性迭代计算每个元数据存储单元的访问热度,使访问热度能够反映当前元数据存储单元的访问情况。例如,可以每隔固定的时间间隔来计算访问热度,该时间间隔可以自行设置,经过测试在系统比较繁忙的时候,可以设置为30s或者更短。
为保证实现简单、高效,一般将参数K取定值,参数u可以根据负载的特征进行调整。上层发出的元数据读请求都有一个序列号,且这些序列号是连续的。对于某个元数据存储单元,系统记录其最近K次访问的请求序列号,那么在该元数据被访问K次的这段时间内上层发出元数据读请求的个数NUM则可以用第K次访问和第1次访问的序列号之差获得。通过这种方法计算每个元数据存储单元的访问热度,系统只需要记录很少的数据,而且计算也比较高效。
在了解了系统中每个元数据存储单元的访问热度后,采用类似于先进先出(Fisrt In First Out,FIFO)的方式(将那些访问热度较低的元数据存储单元迁移出SSD。迁移操作可以由后台的迁移线程完成。
其中,迁移阈值的设定主要基于元数据访问的特征,对于元数据访问空间局部性较强的应用,可以将阈值设定的大一些。每次迁移操作都是从SSD上元数据文件的文件头开始,迁移完成后,调整元数据文件的文件头的位置。当迁移到某个元数据存储单元时,采用阈值判定的方式,如果其热度低于阈值,就需要将该元数据存储单元迁移出SSD,保存到HDD的元数据日志文件中。如果元数据存储单元的热度超过阈值,则说明该元数据存储单元保存的元数据经常被访问,需要继续保存在SSD上,所以将该元数据存储单元读入内存,将其中有效的元数据项写入元数据缓冲区中,而该元数据存储单元在SSD上的空间就可以重新使用。随着元数据缓冲区被写回,该元数据存储单元中经常被访问的元数据又回到了SSD上。这样,可以保证每次迁移操作得到的SSD可用空间都是连续的,从而使系统在写回元数据缓冲区时,都是大粒度的顺序写操作。上述的迁移步骤也可以由专用的迁移线程来负责执行。
在又一个实施例中,在上述迁移操作中还包括周期性回收无效元数据项占用的SSD空间的操作。由于对于元数据的更新操作采用异地更新的策略,所以元数据存储单元中可能含有无效的元数据项,这些无效的元数据项被记录在该元数据存储单元对应的索引单元上,通过元数据存储单元对应的元数据索引单元可以计算出该元数据存储单元中含有的无效元数据的比例。迁移线程会周期性回收那些无效元数据项比例超过50%的元数据存储单元。回收时将整个元数据存储单元读到内存,将有效的元数据项放到元数据缓冲区中,然后对该元数据存储单元做上相应标志。为防止元数据文件出现空洞,所以此时这部分空间还不能用,当迁移线程迁移到该元数据存储单元时,迁移线程不需要判定其访问热度,直接回收该元数据存储单元占用的空间。
在又一个实施例中,迁移操作采用周期性启动和阈值启动相结合的方式。为保证元数据写操作的性能,SSD上应时刻保证有一定量的空间,所以迁移线程会周期性启动。迁移线程的启动周期应该基于系统的元数据写操作的负载,对于元数据写负载较重的应用,启动周期不能小于30分钟。此外,当SSD上可用空间小于一定阈值(该阈值是一个经验值,一般来说该阈值应该在15%到20%之间)时,也需要开始进行迁移操作,这个阈值的设定要结合上层写请求的压力和SSD数据迁移的效率。当迁移线程得到了一定的空间后,迁移线程就会停止,这样做主要是为了防止迁移操作对元数据I/O操作造成负面影响。
与现有技术相比,基于访问热度的数据迁移操作可以将经常访问的元数据留在SSD,提高SSD的空间使用效率。上述实施例中的访问热度判定算法综合了数据访问的频率和最近访问时间,判定准确且算法的时间和空间开销较小。通过基于访问热度的SSD数据迁移操作可以充分利用SSD的存储空间,提高系统性价比。而现有的基于SSD+HDD这类架构中的数据迁移机制,例如BtrFS,通过对每次I/O操作信息的统计来判定访问热度,将热度较高的数据放在SSD上,热度较低的放在HDD上。这种热度判定虽然比较准确,但它要记录每次I/O操作的相关信息,时间和空间开销较大,并不适合元数据量很大的机群文件系统的元数据存储系统。
在又一个实施例中,还提供了一种机群文件系统,在该系统中采用上述的元数据存储系统和元数据管理方法来对元数据进行存储和管理。
为了更好地分析其性能,发明人进行了如下的测试:
发明人在曙光6000的机群文件系统HVFS的基础上实现了上述元数据存储系统和管理方法,以改进HVFS的性能,将改进后的HVFS为HybridHVFS。将Hybrid HVFS与采用同样的元数据存储架构(即采用现有DRAM+SSD+HDD的架构来存储元数据)的HVFS进行比较
以元数据的创建(create系统调用)和查找(lookup系统调用)为例,来比较每秒完成的I/O操作次数(IOPS,Input/Output Per Second)图5和图6分别为原有HVFS和改进后的Hybrid HVFS中元数据的创建操作和查询操作性能比较示意图。从图5和图6可以看出,由于Hybrid HVFS采用了上述实施例中的管理元数据的方法,其能够明显提高机群文件系统的元数据操作性能。
通过测试结果表明,采用本发明的元数据管理方法可以有效提高机群文件系统元数据操作的性能。而且基于访问热度的数据迁移策略可以将更多经常被访问的元数据留在SSD上,提高了元数据读操作的性能。
虽然本发明已经通过优选实施例进行了描述,然而本发明并非局限于这里所描述的实施例,在不脱离本发明范围的情况下还包括所作出的各种改变以及变化。

Claims (17)

1.一种机群文件系统中的元数据存储系统,该系统包括DRAM和SDD;
所述DRAM包括多个元数据缓冲区和元数据索引单元;每个元数据缓冲区中的元数据是按照写入的时间依次顺序写入的,每个元数据缓存区对应一个用于存储该缓冲区的元数据索引信息的头结构;每次将元数据缓冲区中的数据写回到SSD上时形成一个新的元数据索引单元,用于保存该元数据缓冲区的头结构所包含的元数据索引信息;
所述SSD上包括元数据文件,所述元数据文件包含按照写回时间的顺序组织的多个元数据存储单元;每次将一个元数据缓冲区中的数据写回到SSD上时形成一个新的元数据存储单元,用于保存从该元数据缓冲区写入的元数据;每个元数据存储单元对应于DRAM中的一个元数据索引单元。
2.根据权利要求1所述的元数据存储系统,该系统还包括用于保存来自SSD的元数据的HDD。
3.根据权利要求1或2所述的元数据存储系统,其中,所述头结构包括一个Bloom Filter和一个哈希表,所述Bloom Filter用来记录该元数据缓冲区中保存了哪些元数据项,所述哈希表用于维护元数据项的标识符以及该元数据项在元数据缓冲区中偏移量的映射。
4.根据权利要求1或2所述的元数据存储系统,其中SDD上还包括用于存储元数据索引信息的元数据索引文件。
5.根据权利要求1或2所述的元数据存储系统,其中DRAM中还包括读缓存模块,用于缓存从SSD读取的元数据。
6.一种用于如上述权利要求1或2所述的元数据存储系统的元数据管理方法,所述方法包括:
步骤1)将元数据按照写入的时间依次顺序写入DRAM中的元数据缓冲区中;
步骤2)当一个元数据缓冲区被写满后,将其顺序写回到SSD上以形成一个新的元数据存储单元,同时将其头结构中对应的元数据索引信息以元数据索引单元的形式保存在DRAM中,所述元数据存储单元按照写回时间的顺序组织到一个元数据文件中。
7.根据权利要求6所述的方法,其中所述头结构包括一个Bloom Filter和一个哈希表,所述Bloom Filter用来记录该元数据缓冲区中保存了哪些元数据项,所述哈希表用于维护元数据项的标识符以及该元数据项在元数据缓冲区中偏移量的映射。
8.根据权利要求6所述的方法,其中步骤2)还包括在将一个元数据缓冲区顺序写回到SSD的同时,将其对应的元数据索引信息也顺序写回到SSD上的元数据索引文件中。
9.根据权利要求7所述的方法,其中步骤2)还包括在将一个元数据缓冲区写回到SSD时,根据其头结构中的元数据项的标识符来判断SSD上哪些数据项已经无效的步骤;以及
在已经无效的元数据项所在的元数据存储单元对应的元数据索引单元中对该元数据项做无效标记的步骤。
10.根据权利要求7所述的方法,其中以64叉树和链接结合的方式来组织的Bloom Filter,每颗64叉树的深度不超过2层,多个64叉树组成一个链表,其中每个64叉树的非叶子节点的对应的Bloom Filter是其孩子节点的Bloom Filter的异或结果。
11.根据权利要求9所述的方法,还包括将元数据存储单元从SSD迁移到HDD的步骤,该步骤包括:
比较元数据存储单元的访问热度与预定阈值以判断该元数据存储单元是否需要被迁移;
当元数据存储单元的访问热度小于预定阈值,则将其从SSD中迁移到HDD上,反之将该元数据存储单元中有效的元数据项写入DRAM中的元数据缓冲区中;
其中所述元数据存储单元的访问热度以如下公式进行计算:
HEAT i + 1 = u &times; K NUM + ( 1 - u ) &times; HEAT i ; ( 0 < u < 1 )
其中,HEATi+1表示该元数据存储单元的当前访问热度,HEATi表示该元数据存储单元上次的访问热度,u是(0,1)上的值,用于控制上次访问热度对当前访问热度的影响,K表示该元数据存储单元在该时间段内被访问的次数,NUM表示在该时间段内所接收的从SSD上读取元数据的请求个数;所述阈值根据元数据访问的特征来设定。
12.根据权利要求11所述的方法,还包括对于那些无效元数据项比例超过50%的元数据存储单元,不需要判定其访问热度,直接将其从SSD上迁移到HDD上的步骤。
13.根据权利要求11所述的方法,其中,当SSD上可用空间与SSD总空间的比例小于一定空间阈值时,执行所述将元数据存储单元从SSD迁移到HDD的步骤。
14.根据权利要求13所述的方法,所述空间阀值在15%到20%之间。
15.根据权利要求11所述的方法,其中,每个固定的时间间隔执行所述将元数据存储单元从SSD迁移到HDD的步骤。
16.根据权利要求15所述的方法,其中对于元数据写负载较重的应用,所述时间间隔不能小于30分钟。
17.一种机群文件系统,所述机群文件系统包括如权利要求1、2、3或4所述的元数据存储系统。
CN201110366559.2A 2011-11-17 2011-11-17 用于机群文件系统的元数据存储系统和管理方法 Active CN102364474B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201110366559.2A CN102364474B (zh) 2011-11-17 2011-11-17 用于机群文件系统的元数据存储系统和管理方法
PCT/CN2012/084759 WO2013071882A1 (zh) 2011-11-17 2012-11-16 用于机群文件系统的元数据存储系统和管理方法
EP12849116.4A EP2735978B1 (en) 2011-11-17 2012-11-16 Storage system and management method used for metadata of cluster file system
US14/278,744 US9449005B2 (en) 2011-11-17 2014-05-15 Metadata storage system and management method for cluster file system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110366559.2A CN102364474B (zh) 2011-11-17 2011-11-17 用于机群文件系统的元数据存储系统和管理方法

Publications (2)

Publication Number Publication Date
CN102364474A true CN102364474A (zh) 2012-02-29
CN102364474B CN102364474B (zh) 2014-08-20

Family

ID=45691040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110366559.2A Active CN102364474B (zh) 2011-11-17 2011-11-17 用于机群文件系统的元数据存储系统和管理方法

Country Status (4)

Country Link
US (1) US9449005B2 (zh)
EP (1) EP2735978B1 (zh)
CN (1) CN102364474B (zh)
WO (1) WO2013071882A1 (zh)

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662992A (zh) * 2012-03-14 2012-09-12 北京搜狐新媒体信息技术有限公司 一种海量小文件的存储、访问方法及装置
CN102722449A (zh) * 2012-05-24 2012-10-10 中国科学院计算技术研究所 基于SSD的Key-Value型本地存储方法及系统
CN102760101A (zh) * 2012-05-22 2012-10-31 中国科学院计算技术研究所 一种基于ssd 的缓存管理方法及系统
CN102831087A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据读写处理方法和装置
CN102831088A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据迁移方法和装置
CN103019615A (zh) * 2012-07-19 2013-04-03 中国人民解放军国防科学技术大学 一种基于负载控制的提高闪存固态硬盘持久性方法
WO2013071882A1 (zh) * 2011-11-17 2013-05-23 华为技术有限公司 用于机群文件系统的元数据存储系统和管理方法
CN103902669A (zh) * 2014-03-17 2014-07-02 华中科技大学 一种基于不同存储介质的分离式文件系统
CN104199784A (zh) * 2014-08-20 2014-12-10 浪潮(北京)电子信息产业有限公司 一种基于分级存储的数据迁移方法及装置
CN104216988A (zh) * 2014-09-04 2014-12-17 天津大学 分布式大数据的ssd磁盘和hdd磁盘混合存储方法
CN104375961A (zh) * 2013-08-16 2015-02-25 国际商业机器公司 用于在数据存储子系统中进行数据访问的方法和装置
CN104408163A (zh) * 2014-12-05 2015-03-11 浪潮(北京)电子信息产业有限公司 一种数据分级存储方法和装置
CN104657461A (zh) * 2015-02-10 2015-05-27 北京航空航天大学 基于内存与ssd协作式的文件系统元数据搜索缓存方法
CN104915145A (zh) * 2014-03-11 2015-09-16 华为技术有限公司 一种降低LSM Tree写放大的方法和装置
CN104978362A (zh) * 2014-04-11 2015-10-14 中兴通讯股份有限公司 分布式文件系统的数据迁移方法、装置及元数据服务器
WO2016029865A1 (en) * 2014-08-28 2016-03-03 Huawei Technologies Co., Ltd. Metadata index search in file system
CN106201916A (zh) * 2016-07-25 2016-12-07 中国人民解放军国防科学技术大学 一种面向ssd的非易失缓存机制
CN106231252A (zh) * 2016-07-29 2016-12-14 银江股份有限公司 一种大规模视频监控存储方法
CN106227677A (zh) * 2016-07-20 2016-12-14 浪潮电子信息产业股份有限公司 一种变长缓存元数据管理的方法
CN103336844B (zh) * 2013-07-22 2016-12-28 广西师范大学 大数据rd分割方法
CN103838853B (zh) * 2014-03-17 2017-05-10 华中科技大学 一种基于不同存储介质的混合文件系统
CN106681668A (zh) * 2017-01-12 2017-05-17 郑州云海信息技术有限公司 一种基于固态盘缓存的混合式存储系统及存储方法
CN107193487A (zh) * 2017-04-26 2017-09-22 华中科技大学 一种随机访问识别方法及系统
CN107422994A (zh) * 2017-08-02 2017-12-01 郑州云海信息技术有限公司 一种提高数据读写性能的方法
CN107422992A (zh) * 2017-07-31 2017-12-01 郑州云海信息技术有限公司 一种SSD运行时Journal保存方法及系统
CN107463509A (zh) * 2016-06-05 2017-12-12 华为技术有限公司 缓存管理方法、缓存控制器以及计算机系统
CN107515827A (zh) * 2017-08-21 2017-12-26 湖南国科微电子股份有限公司 Pcie ssd自定义日志的存储方法、装置及ssd
CN107679193A (zh) * 2017-10-09 2018-02-09 郑州云海信息技术有限公司 一种用于分布式文件系统的热度统计方法和系统
CN107766374A (zh) * 2016-08-19 2018-03-06 上海凯翔信息科技有限公司 一种海量小文件存储读取的优化方法和系统
CN107832236A (zh) * 2017-10-24 2018-03-23 记忆科技(深圳)有限公司 一种提高固态硬盘写性能的方法
CN108141462A (zh) * 2015-08-18 2018-06-08 诺基亚通信公司 数据库查询的方法和系统
CN108170672A (zh) * 2017-12-22 2018-06-15 武汉数博科技有限责任公司 一种中文机构名称实时分析方法及系统
CN109213420A (zh) * 2017-06-29 2019-01-15 杭州海康威视数字技术股份有限公司 数据存储方法、装置及系统
CN109213421A (zh) * 2017-06-29 2019-01-15 中兴通讯股份有限公司 一种存储记录方法及装置
CN109299113A (zh) * 2015-06-08 2019-02-01 南京航空航天大学 具有存储感知的混合索引的范围查询方法
CN109460186A (zh) * 2018-11-02 2019-03-12 深圳忆联信息系统有限公司 一种提升固态硬盘读性能的方法及其系统
CN109739696A (zh) * 2018-12-13 2019-05-10 北京计算机技术及应用研究所 一种双控存储阵列固态硬盘缓存加速方法
CN109857339A (zh) * 2019-01-10 2019-06-07 平安科技(深圳)有限公司 文件存储方法、装置、计算机设备和存储介质
CN110008030A (zh) * 2019-04-16 2019-07-12 苏州浪潮智能科技有限公司 一种元数据访问的方法、系统及设备
CN110018784A (zh) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 数据处理方法、装置及计算设备
CN110597762A (zh) * 2018-05-25 2019-12-20 杭州海康威视系统技术有限公司 文件处理方法、装置、设备及存储介质
CN110703981A (zh) * 2018-07-10 2020-01-17 中兴通讯股份有限公司 一种数据读写方法、终端及计算机可读存储介质
CN111368347A (zh) * 2020-03-09 2020-07-03 中航机载系统共性技术有限公司 一种基于云平台的安全存储方法
CN111506253A (zh) * 2019-01-31 2020-08-07 阿里巴巴集团控股有限公司 一种分布式存储系统及其存储方法
CN112306896A (zh) * 2019-07-31 2021-02-02 华为技术有限公司 一种垃圾回收方法及装置
WO2021018052A1 (zh) * 2019-07-31 2021-02-04 华为技术有限公司 一种垃圾回收方法及装置
CN113760171A (zh) * 2020-06-01 2021-12-07 华为技术有限公司 一种元数据存储方法及装置
CN113836084A (zh) * 2014-11-10 2021-12-24 创新先进技术有限公司 一种数据存储方法、装置和系统
CN114116612A (zh) * 2021-11-15 2022-03-01 长沙理工大学 一种基于b+树索引归档文件的存取方法
CN114579514A (zh) * 2022-04-25 2022-06-03 阿里云计算有限公司 一种基于多计算节点的文件处理方法、装置及设备
CN115878513A (zh) * 2023-02-21 2023-03-31 中移动信息技术有限公司 数据存储和数据查询方法、装置、设备及存储介质
CN117389484A (zh) * 2023-12-12 2024-01-12 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US9146928B1 (en) * 2012-12-31 2015-09-29 Emc Corporation Techniques for storing metadata of a filesystem in persistent memory
US9547549B2 (en) * 2013-01-16 2017-01-17 Microsoft Technology Licensing, Llc Handling file system corruption
US9268502B2 (en) * 2013-09-16 2016-02-23 Netapp, Inc. Dense tree volume metadata organization
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
BR112016024412B1 (pt) 2014-04-22 2022-10-18 Huawei Technologies Co., Ltd Método de gerenciamento de arquivos e sistema de arquivos
EP2940950B1 (en) * 2014-04-29 2019-02-20 Institut Mines-Telecom Information centric networking (ICN) router
US9798728B2 (en) 2014-07-24 2017-10-24 Netapp, Inc. System performing data deduplication using a dense tree data structure
US9348517B2 (en) * 2014-08-28 2016-05-24 International Business Machines Corporation Using a migration threshold and a candidate list for cache management of sequential write storage
US9671960B2 (en) 2014-09-12 2017-06-06 Netapp, Inc. Rate matching technique for balancing segment cleaning and I/O workload
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
CN104298779A (zh) * 2014-11-04 2015-01-21 中国银行股份有限公司 海量数据加工的处理方法和系统
US9628350B2 (en) * 2014-11-05 2017-04-18 Amazon Technologies, Inc. Dynamic scaling of storage volumes for storage client file systems
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
CN104462240A (zh) * 2014-11-18 2015-03-25 浪潮(北京)电子信息产业有限公司 云存储中实现分级存储管理的方法和系统
US9720601B2 (en) 2015-02-11 2017-08-01 Netapp, Inc. Load balancing technique for a storage array
US9762460B2 (en) 2015-03-24 2017-09-12 Netapp, Inc. Providing continuous context for operational information of a storage system
US9710317B2 (en) 2015-03-30 2017-07-18 Netapp, Inc. Methods to identify, handle and recover from suspect SSDS in a clustered flash array
US20170024140A1 (en) * 2015-07-20 2017-01-26 Samsung Electronics Co., Ltd. Storage system and method for metadata management in non-volatile memory
US9740566B2 (en) 2015-07-31 2017-08-22 Netapp, Inc. Snapshot creation workflow
KR102309841B1 (ko) 2015-08-24 2021-10-12 삼성전자주식회사 표면 실장 기술의 적용에 따른 메모리 셀의 문턱 전압 산포 변화 복구 기능을 갖는 데이터 스토리지 및 그것의 동작 방법
CN105278882A (zh) * 2015-10-26 2016-01-27 创新科存储技术有限公司 一种分布式文件系统的磁盘管理方法
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US9898208B2 (en) * 2016-04-27 2018-02-20 Datadirect Networks, Inc. Storage system with hybrid logical volumes utilizing in-band hinting
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
US10877997B2 (en) 2017-06-28 2020-12-29 International Business Machines Corporation Clustering database data
US10901907B2 (en) * 2017-10-19 2021-01-26 Samsung Electronics Co., Ltd. System and method for identifying hot data and stream in a solid-state drive
CN107729558B (zh) * 2017-11-08 2021-06-29 郑州云海信息技术有限公司 文件系统碎片整理的方法、系统、装置及计算机存储介质
US11048590B1 (en) 2018-03-15 2021-06-29 Pure Storage, Inc. Data consistency during recovery in a cloud-based storage system
CN109783443A (zh) * 2018-12-25 2019-05-21 西安交通大学 一种分布式存储系统中海量数据的冷热判断方法
US11216388B2 (en) * 2019-04-30 2022-01-04 EMC IP Holding Company LLC Tiering between storage media in a content aware storage system
CN110489425B (zh) * 2019-08-26 2022-04-12 上海达梦数据库有限公司 一种数据访问方法、装置、设备及存储介质
CN113032340B (zh) * 2019-12-24 2024-05-14 阿里巴巴集团控股有限公司 数据文件的合并方法、装置、存储介质及处理器
US11567865B2 (en) * 2019-12-31 2023-01-31 Samsung Electronics Co., Ltd. Methods and apparatus for persistent data structures
CN111309680A (zh) * 2020-02-17 2020-06-19 湖南天河国云科技有限公司 基于布隆过滤器的对象存储文件检索方法及系统
KR20210120240A (ko) * 2020-03-26 2021-10-07 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
CN113467698A (zh) * 2020-03-30 2021-10-01 珠海全志科技股份有限公司 基于文件系统的写方法、装置、计算机设备和存储介质
CN111880751B (zh) * 2020-09-28 2020-12-25 浙江大华技术股份有限公司 一种硬盘迁移方法、分布式存储集群系统和存储介质
CN112583904B (zh) * 2020-12-04 2023-05-19 北京百度网讯科技有限公司 文件上传方法、装置、设备以及存储介质
CN113448970B (zh) * 2021-08-31 2022-07-12 深圳市一号互联科技有限公司 一种图数据存储方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1619522A (zh) * 2003-11-17 2005-05-25 联想(北京)有限公司 机群文件服务系统及其输入输出处理方法
US20100011031A1 (en) * 2006-12-28 2010-01-14 Arcsight, Inc. Storing log data efficiently while supporting querying
CN101814045A (zh) * 2010-04-22 2010-08-25 华中科技大学 一种用于备份服务的数据组织方法
CN101866359A (zh) * 2010-06-24 2010-10-20 北京航空航天大学 一种机群文件系统中的小文件存储和访问方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725392B1 (en) * 1999-03-03 2004-04-20 Adaptec, Inc. Controller fault recovery system for a distributed file system
US20070094445A1 (en) * 2005-10-20 2007-04-26 Trika Sanjeev N Method to enable fast disk caching and efficient operations on solid state disks
US7831793B2 (en) * 2006-03-01 2010-11-09 Quantum Corporation Data storage system including unique block pool manager and applications in tiered storage
JP2012531674A (ja) * 2009-06-26 2012-12-10 シンプリヴィティ・コーポレーション ノンユニフォームアクセスメモリにおけるスケーラブルなインデックス付け
US20110276744A1 (en) * 2010-05-05 2011-11-10 Microsoft Corporation Flash memory cache including for use with persistent key-value store
CN102364474B (zh) * 2011-11-17 2014-08-20 中国科学院计算技术研究所 用于机群文件系统的元数据存储系统和管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1619522A (zh) * 2003-11-17 2005-05-25 联想(北京)有限公司 机群文件服务系统及其输入输出处理方法
US20100011031A1 (en) * 2006-12-28 2010-01-14 Arcsight, Inc. Storing log data efficiently while supporting querying
CN101814045A (zh) * 2010-04-22 2010-08-25 华中科技大学 一种用于备份服务的数据组织方法
CN101866359A (zh) * 2010-06-24 2010-10-20 北京航空航天大学 一种机群文件系统中的小文件存储和访问方法

Cited By (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013071882A1 (zh) * 2011-11-17 2013-05-23 华为技术有限公司 用于机群文件系统的元数据存储系统和管理方法
US9449005B2 (en) 2011-11-17 2016-09-20 Huawei Technologies Co., Ltd. Metadata storage system and management method for cluster file system
CN102662992A (zh) * 2012-03-14 2012-09-12 北京搜狐新媒体信息技术有限公司 一种海量小文件的存储、访问方法及装置
CN102760101A (zh) * 2012-05-22 2012-10-31 中国科学院计算技术研究所 一种基于ssd 的缓存管理方法及系统
CN102760101B (zh) * 2012-05-22 2015-03-18 中国科学院计算技术研究所 一种基于ssd 的缓存管理方法及系统
WO2013174305A1 (zh) * 2012-05-24 2013-11-28 华为技术有限公司 基于SSD的Key-Value型本地存储方法及系统
CN102722449B (zh) * 2012-05-24 2015-01-21 中国科学院计算技术研究所 基于SSD的Key-Value型本地存储方法及系统
CN102722449A (zh) * 2012-05-24 2012-10-10 中国科学院计算技术研究所 基于SSD的Key-Value型本地存储方法及系统
CN103019615A (zh) * 2012-07-19 2013-04-03 中国人民解放军国防科学技术大学 一种基于负载控制的提高闪存固态硬盘持久性方法
CN103019615B (zh) * 2012-07-19 2015-08-26 中国人民解放军国防科学技术大学 一种基于负载控制的提高闪存固态硬盘持久性方法
CN102831087A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据读写处理方法和装置
CN102831088A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据迁移方法和装置
CN102831087B (zh) * 2012-07-27 2016-05-11 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据读写处理方法和装置
CN103336844B (zh) * 2013-07-22 2016-12-28 广西师范大学 大数据rd分割方法
CN104375961A (zh) * 2013-08-16 2015-02-25 国际商业机器公司 用于在数据存储子系统中进行数据访问的方法和装置
CN104915145A (zh) * 2014-03-11 2015-09-16 华为技术有限公司 一种降低LSM Tree写放大的方法和装置
CN104915145B (zh) * 2014-03-11 2018-05-18 华为技术有限公司 一种降低LSM Tree写放大的方法和装置
CN103838853B (zh) * 2014-03-17 2017-05-10 华中科技大学 一种基于不同存储介质的混合文件系统
CN103902669A (zh) * 2014-03-17 2014-07-02 华中科技大学 一种基于不同存储介质的分离式文件系统
CN104978362A (zh) * 2014-04-11 2015-10-14 中兴通讯股份有限公司 分布式文件系统的数据迁移方法、装置及元数据服务器
WO2015154352A1 (zh) * 2014-04-11 2015-10-15 中兴通讯股份有限公司 分布式文件系统的数据迁移方法、装置及元数据服务器
CN104978362B (zh) * 2014-04-11 2019-11-29 南京中兴新软件有限责任公司 分布式文件系统的数据迁移方法、装置及元数据服务器
CN104199784A (zh) * 2014-08-20 2014-12-10 浪潮(北京)电子信息产业有限公司 一种基于分级存储的数据迁移方法及装置
WO2016029865A1 (en) * 2014-08-28 2016-03-03 Huawei Technologies Co., Ltd. Metadata index search in file system
CN104216988A (zh) * 2014-09-04 2014-12-17 天津大学 分布式大数据的ssd磁盘和hdd磁盘混合存储方法
CN113836084A (zh) * 2014-11-10 2021-12-24 创新先进技术有限公司 一种数据存储方法、装置和系统
CN104408163A (zh) * 2014-12-05 2015-03-11 浪潮(北京)电子信息产业有限公司 一种数据分级存储方法和装置
CN104408163B (zh) * 2014-12-05 2018-09-14 浪潮(北京)电子信息产业有限公司 一种数据分级存储方法和装置
CN104657461A (zh) * 2015-02-10 2015-05-27 北京航空航天大学 基于内存与ssd协作式的文件系统元数据搜索缓存方法
CN109299113B (zh) * 2015-06-08 2021-03-30 南京航空航天大学 具有存储感知的混合索引的范围查询方法
CN109299113A (zh) * 2015-06-08 2019-02-01 南京航空航天大学 具有存储感知的混合索引的范围查询方法
CN108141462A (zh) * 2015-08-18 2018-06-08 诺基亚通信公司 数据库查询的方法和系统
CN107463509A (zh) * 2016-06-05 2017-12-12 华为技术有限公司 缓存管理方法、缓存控制器以及计算机系统
WO2017211247A1 (zh) * 2016-06-05 2017-12-14 华为技术有限公司 缓存管理方法、缓存控制器以及计算机系统
CN107463509B (zh) * 2016-06-05 2020-12-15 华为技术有限公司 缓存管理方法、缓存控制器以及计算机系统
CN106227677A (zh) * 2016-07-20 2016-12-14 浪潮电子信息产业股份有限公司 一种变长缓存元数据管理的方法
CN106227677B (zh) * 2016-07-20 2018-11-20 浪潮电子信息产业股份有限公司 一种变长缓存元数据管理的方法
CN106201916A (zh) * 2016-07-25 2016-12-07 中国人民解放军国防科学技术大学 一种面向ssd的非易失缓存机制
CN106201916B (zh) * 2016-07-25 2019-03-29 中国人民解放军国防科学技术大学 一种面向ssd的非易失缓存方法
CN106231252B (zh) * 2016-07-29 2019-04-05 银江股份有限公司 一种大规模视频监控存储方法
CN106231252A (zh) * 2016-07-29 2016-12-14 银江股份有限公司 一种大规模视频监控存储方法
CN107766374A (zh) * 2016-08-19 2018-03-06 上海凯翔信息科技有限公司 一种海量小文件存储读取的优化方法和系统
CN106681668A (zh) * 2017-01-12 2017-05-17 郑州云海信息技术有限公司 一种基于固态盘缓存的混合式存储系统及存储方法
CN107193487B (zh) * 2017-04-26 2019-11-12 华中科技大学 一种随机访问识别方法及系统
CN107193487A (zh) * 2017-04-26 2017-09-22 华中科技大学 一种随机访问识别方法及系统
CN109213421A (zh) * 2017-06-29 2019-01-15 中兴通讯股份有限公司 一种存储记录方法及装置
CN109213421B (zh) * 2017-06-29 2024-01-09 中兴通讯股份有限公司 一种存储记录方法及装置
CN109213420A (zh) * 2017-06-29 2019-01-15 杭州海康威视数字技术股份有限公司 数据存储方法、装置及系统
CN107422992A (zh) * 2017-07-31 2017-12-01 郑州云海信息技术有限公司 一种SSD运行时Journal保存方法及系统
CN107422994A (zh) * 2017-08-02 2017-12-01 郑州云海信息技术有限公司 一种提高数据读写性能的方法
CN107515827B (zh) * 2017-08-21 2021-07-27 湖南国科微电子股份有限公司 Pcie ssd自定义日志的存储方法、装置及ssd
CN107515827A (zh) * 2017-08-21 2017-12-26 湖南国科微电子股份有限公司 Pcie ssd自定义日志的存储方法、装置及ssd
CN107679193A (zh) * 2017-10-09 2018-02-09 郑州云海信息技术有限公司 一种用于分布式文件系统的热度统计方法和系统
CN107832236B (zh) * 2017-10-24 2021-08-03 记忆科技(深圳)有限公司 一种提高固态硬盘写性能的方法
CN107832236A (zh) * 2017-10-24 2018-03-23 记忆科技(深圳)有限公司 一种提高固态硬盘写性能的方法
CN108170672A (zh) * 2017-12-22 2018-06-15 武汉数博科技有限责任公司 一种中文机构名称实时分析方法及系统
US11294592B2 (en) 2018-01-09 2022-04-05 Alibaba Group Holding Limited Method and device for data processing, and computer device
CN110018784A (zh) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 数据处理方法、装置及计算设备
CN110018784B (zh) * 2018-01-09 2023-01-10 阿里巴巴集团控股有限公司 数据处理方法、装置及计算设备
CN110597762A (zh) * 2018-05-25 2019-12-20 杭州海康威视系统技术有限公司 文件处理方法、装置、设备及存储介质
CN110703981A (zh) * 2018-07-10 2020-01-17 中兴通讯股份有限公司 一种数据读写方法、终端及计算机可读存储介质
CN109460186A (zh) * 2018-11-02 2019-03-12 深圳忆联信息系统有限公司 一种提升固态硬盘读性能的方法及其系统
CN109739696A (zh) * 2018-12-13 2019-05-10 北京计算机技术及应用研究所 一种双控存储阵列固态硬盘缓存加速方法
CN109857339A (zh) * 2019-01-10 2019-06-07 平安科技(深圳)有限公司 文件存储方法、装置、计算机设备和存储介质
CN111506253B (zh) * 2019-01-31 2023-06-20 阿里巴巴集团控股有限公司 一种分布式存储系统及其存储方法
CN111506253A (zh) * 2019-01-31 2020-08-07 阿里巴巴集团控股有限公司 一种分布式存储系统及其存储方法
CN110008030A (zh) * 2019-04-16 2019-07-12 苏州浪潮智能科技有限公司 一种元数据访问的方法、系统及设备
CN112306896A (zh) * 2019-07-31 2021-02-02 华为技术有限公司 一种垃圾回收方法及装置
CN112306896B (zh) * 2019-07-31 2022-12-27 华为技术有限公司 一种垃圾回收方法及装置
WO2021018052A1 (zh) * 2019-07-31 2021-02-04 华为技术有限公司 一种垃圾回收方法及装置
CN111368347A (zh) * 2020-03-09 2020-07-03 中航机载系统共性技术有限公司 一种基于云平台的安全存储方法
CN113760171A (zh) * 2020-06-01 2021-12-07 华为技术有限公司 一种元数据存储方法及装置
CN114116612A (zh) * 2021-11-15 2022-03-01 长沙理工大学 一种基于b+树索引归档文件的存取方法
CN114116612B (zh) * 2021-11-15 2024-06-07 长沙理工大学 一种基于b+树索引归档文件的存取方法
CN114579514B (zh) * 2022-04-25 2022-10-04 阿里云计算有限公司 一种基于多计算节点的文件处理方法、装置及设备
CN114579514A (zh) * 2022-04-25 2022-06-03 阿里云计算有限公司 一种基于多计算节点的文件处理方法、装置及设备
CN115878513B (zh) * 2023-02-21 2023-08-15 中移动信息技术有限公司 数据存储和数据查询方法、装置、设备及存储介质
CN115878513A (zh) * 2023-02-21 2023-03-31 中移动信息技术有限公司 数据存储和数据查询方法、装置、设备及存储介质
CN117389484A (zh) * 2023-12-12 2024-01-12 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质
CN117389484B (zh) * 2023-12-12 2024-04-26 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
EP2735978A4 (en) 2015-01-28
US9449005B2 (en) 2016-09-20
EP2735978A1 (en) 2014-05-28
WO2013071882A1 (zh) 2013-05-23
EP2735978B1 (en) 2017-03-29
CN102364474B (zh) 2014-08-20
US20140250155A1 (en) 2014-09-04

Similar Documents

Publication Publication Date Title
CN102364474B (zh) 用于机群文件系统的元数据存储系统和管理方法
CN110825748B (zh) 利用差异化索引机制的高性能和易扩展的键值存储方法
CN109213772B (zh) 数据存储方法及NVMe存储系统
Nam et al. Assuring demanded read performance of data deduplication storage with backup datasets
JP5445682B2 (ja) ストレージシステム
CN101187901B (zh) 一种实现文件访问的高速缓存系统和方法
CN102521269B (zh) 一种基于索引的计算机连续数据保护方法
Ahn et al. ForestDB: A fast key-value storage system for variable-length string keys
CN115427941A (zh) 数据管理系统和控制的方法
Lee et al. An efficient index buffer management scheme for implementing a B-tree on NAND flash memory
Menon et al. CaSSanDra: An SSD boosted key-value store
CN102968381A (zh) 一种利用固态硬盘提高快照性能的方法
CN113553476B (zh) 一种利用哈希减少写停顿的键值存储方法
Sarwat et al. Generic and efficient framework for search trees on flash memory storage systems
CN113704217A (zh) 一种分布式持久性内存文件系统中元数据及数据组织架构方法
CN116204130A (zh) 一种键值存储系统和键值存储系统的管理方法
CN114415966B (zh) 一种kv ssd存储引擎的构建方法
Ren et al. TABLEFS: Embedding a NoSQL database inside the local file system
He et al. Read as Needed: Building {WiSER}, a {Flash-Optimized} Search Engine
KR100810666B1 (ko) 플래시 메모리를 저장장치로 사용하는 기기를 위한 데이터색인 방법
Cui et al. HashTree: a new hybrid index for flash disks
US20240070135A1 (en) Hash engine for conducting point queries
CN114691041B (zh) 键值存储系统、垃圾回收方法
CN118312515B (zh) 应用于WiscKey的协同无效键值对确认方法及垃圾回收方法
Quan et al. CMFS: Compressed metadata file system for hybrid storage

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HUAWEI TECHNOLOGY CO., LTD.

Effective date: 20121219

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20121219

Address after: 100190 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Applicant after: Institute of Computing Technology, Chinese Academy of Sciences

Applicant after: Huawei Technologies Co., Ltd.

Address before: 100190 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Applicant before: Institute of Computing Technology, Chinese Academy of Sciences

C14 Grant of patent or utility model
GR01 Patent grant