用于存储的方法、设备和计算机程序产品技术

技术编号:30187805 阅读:14 留言:0更新日期:2021-09-29 08:25
本公开的实施例涉及一种用于存储的方法、设备和计算机程序产品。在此提供的方法包括接收向具有多层式存储单元的固态盘中写入文件系统的元数据的写请求,然后将待写入的元数据缓存到存储器中。方法还包括通过写时重定向将所缓存的元数据顺序地写入到固态盘中。本公开的实施例提出了一种针对具有多层式存储单元的固态盘的特性而实现的文件系统的方法,其通过支持写时重定向来实现对文件系统的元数据的完全顺序写,从而能够减少固态盘的写放大并且提高文件系统的性能。且提高文件系统的性能。且提高文件系统的性能。

【技术实现步骤摘要】
用于存储的方法、设备和计算机程序产品


[0001]本公开的实施例总体上涉及计算机领域,并且更具体地涉及用于存储的方法、设备以及计算机程序产品。

技术介绍

[0002]硬盘是将信息存储在计算机上的存储媒介,硬盘包括机械式硬盘(HDD)和固态硬盘(SSD,简称为“固态盘”),其中机械式硬盘属于磁盘存储设备,而固态盘则是半导体存储设备。固态盘通常是用固态电子存储芯片阵列而制成的,其包括控制单元和存储单元等。
[0003]通常,固态盘的访问延迟比机械式硬盘低得多。固态盘是不带机械部件的纯电子设备,因此可以提供较低的访问延迟、较低的功耗、较小的噪音和抗冲击性。然而,固态盘的寿命有限,并具有相对较差的随机写入性能,此外,在固态盘中,最小的写入单位是一页。固态盘在写入新数据之前需要擦除数据块,而在擦除块上进行写操作限制了每个擦除块的写周期。

技术实现思路

[0004]本公开的实施例提供了一种用于存储的方法、设备和计算机程序产品。
[0005]在本公开的一个方面,提供了一种用于存储的方法。该方法包括接收向固态盘中写入文件系统的元数据的写请求,然后将待写入的元数据缓存到存储器中。方法还包括通过写时重定向将所缓存的元数据顺序地写入到固态盘中。
[0006]在本公开的另一方面,提供了一种电子设备。该设备包括处理单元以及存储器,其中存储器被耦合至处理单元并且存储有指令。所述指令在由处理单元执行时使得接收向固态盘中写入文件系统的元数据的写请求,并且将待写入的元数据缓存到存储器中。动作还包括通过写时重定向将所缓存的元数据顺序地写入到固态盘中。
[0007]在本公开的又一方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使得计算机执行根据本公开的实施例的方法或过程。
[0008]提供
技术实现思路
部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。本
技术实现思路
部分无意标识本公开的关键特征或主要特征,也无意限制本公开的各个实施例的范围。
附图说明
[0009]通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中在本公开示例性实施例中,相同的附图标记通常代表相同的元素。
[0010]图1示出了文件系统的示例架构图;
[0011]图2示出了根据本公开的实施例的用于存储的方法的流程图;
[0012]图3示出了根据本公开的实施例的键值存储的示例结构的示意图;
[0013]图4示出了根据本公开的实施例的示例B+树结构的示意图;
[0014]图5示出了根据本公开的实施例的存储器中的B+树结构的示意图;
[0015]图6示出了根据本公开的实施例的存储空间管理的示意图;
[0016]图7A-7C示出了根据本公开的实施例的在B+树中插入键时重叠的示意图;以及
[0017]图8示出了可以用来实施本公开的实施例的设备的示意性块图。
具体实施例
[0018]下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的一些具体实施例,然而应该理解,可以以各种形式实现本公开,而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0019]在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象,除非明确指示不同。
[0020]四层式存储单元(QLC)固态盘通过向每个存储器单元添加额外的数据位来增加闪存模块的密度,从而降低了存储资源的成本,使得固态盘越来越接近机械硬盘的价格。然而,增加每个单元的位数会增加电荷用于更改位状态的次数,最终会缩短固态盘的生命周期。此外,传统的文件系统没有针对固态盘尤其是高密度固态盘的文件系统,并且传统的文件系统通常针对元数据是随机地写入到固态盘。而随机写入会导致固态盘内部碎片化,并且导致较高频率的昂贵擦除操作。因此,除了性能下降和延迟增加之外,固态盘的寿命还可能由于随机写而大大降低。
[0021]由此可见,传统的文件系统对于元数据是随机地写入到固态盘中,随机写造成了过多的写放大,严重影响了擦除字数有限的高密度固态盘的性能和寿命。因此,当文件系统需要支持新的QLC固态盘时,如何减少随机写并且减少写放大同时确保系统的性能和延迟是急需解决的问题。
[0022]为此,本公开的实施例提出了一种针对具有多层式存储单元的固态盘的特性而实现的文件系统的方法,并且提出了主存储系统中针对固态盘的基于盘区的写时重定向文件系统。本公开的实施例通过支持写时重定向来实现对元数据的完全顺序写,将元数据都写到了固态盘的新的位置去,从而能够减少固态盘的写放大并且提高文件系统的性能。
[0023]本申请的专利技术人考虑到QLC生命周期较短的特性,提出了一种针对例如QLC的固态盘实现文件系统的新方法。本申请所提出的文件系统是一个键值文件系统,基本上所有元数据都被存储为键值对。例如,盘区是一种类型的键,其值是指向实际数据的指针的列表;索引节点按索引节点号来进行索引,其值为索引节点结构。本公开的实施例的写时重定向方法将所有IO写请求都转换为对所有数据和元数据的顺序写。元数据更改首先被延迟并缓存在存储器中,然后通过合并和排序逐级级联到固态盘。
[0024]此外,根据本公开的一些实施例,具有成本效益的索引结构解决了由一连串的写入触发更新传播的递归更新问题,从而避免了由更新引起的额外的元数据开销。在一些实
施例中,排序后的B+树与日志结合可确保更新顺序和性能,其中日志记录方法不是用于保持一致性,而是用于提高性能。另外,辅助搜索树极大地提高了文件系统的性能。在具有大B+树的随机查找中,辅助搜索树的提高了查找速度。
[0025]以下参考图1至图8来说明本公开的基本原理和若干示例实现方式。应当理解,给出这些示例性实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制本公开的范围。
[0026]图1示出了UFS64文件系统100的示例架构图。如图1所示,文件系统100涉及协议105、上层文件系统110、中间重定向器120、块设备130以及下层文件系统140。文件系统100是一种示例文件系统,其具有增强的可伸缩性、好的弹性和可用性、高的存储效率以及高的性能。可以对文件系统100进行改进以实现本公开的针对固态盘的基于盘区的写时重定向文件系统。
[0027]图2示出了根据本公开的实施例的用于存储的方法的流程图。方法200可以例如由文件系统来实现。
[0028]在202,接收本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于存储的方法,包括:接收向具有多层式存储单元的固态盘中写入文件系统的元数据的写请求;将待写入的所述文件系统的所述元数据缓存到存储器中;以及通过写时重定向将所缓存的所述元数据顺序地写入到所述固态盘中。2.根据权利要求1所述的方法,其中所述存储系统被设置有可变长度的盘区,并且通过写时重定向将所缓存的所述元数据顺序地写入到所述固态盘中包括:通过第一键值对来存储所述文件系统中的第一元数据,所述第一键值对包括作为键的盘区标识和作为值的指针;以及通过第二键值对来存储所述文件系统中的第二元数据,所述第二键值对包括作为键的索引节点号和作为值的索引结构。3.根据权利要求1所述的方法,其中通过写时重定向将所缓存的所述元数据顺序地写入到所述固态盘中包括:根据确定所述元数据的大小满足预定大小,将预定大小的元数据顺序地写入到所述固态盘中的新的位置。4.根据权利要求1所述的方法,其中所述文件系统使用树结构作为元数据索引,并且所述方法还包括:将所述树结构中的节点的大小设置为预定阈值;以及为所述节点附加用于存储元数据更新的日志结构。5.根据权利要求4所述的方法,其中通过写时重定向将所缓存的所述元数据顺序地写入到所述固态盘中包括:根据确定对所述节点的元数据更新量未满足所述预定阈值,将所述元数据更新记录在所述存储器的所述日志结构中;以及根据确定对所述节点的元数据更新量满足所述预定阈值,将所述日志结构中的元数据写入到所述固态盘中。6.根据权利要求5所述的方法,其中通过写时重定向将所缓存的所述元数据顺序地写入到所述固态盘中还包括:根据确定读取所述节点,对所述节点内的每组键进行排序。7.根据权利要求6所述的方法,还包括:构建用于查找元数据的辅助搜索树,所述辅助搜索树中的每个节点对应于一个缓存行。8.根据权利要求1所述的方法,其中所述固态盘为具有四层式存储单元的固态盘。9.一种电子设备,包括:处理单元;以及存储器,其耦合至所述处理单元并且存储有指令,所述指令在由所述处理单元执行时执行以下动作:接收向具有多层式存储单元的固态盘中写入文件...

【专利技术属性】
技术研发人员:吕烁张明
申请(专利权)人:伊姆西IP控股有限责任公司
类型:发明
国别省市:

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

1