当前位置: 首页 > 专利查询>重庆大学专利>正文

持久化内存文件系统数据组织方法、系统及存储介质技术方案

技术编号:25438891 阅读:69 留言:0更新日期:2020-08-28 22:27
本发明专利技术公开了一种持久化内存文件系统数据组织方法、系统及存储介质,所述方法包括:当接收到文件数据操作指令时,根据所述文件数据操作指令的类型执行相应的数据操作机制;若所述文件数据操作指令的类型为覆盖写,则执行多粒度写时复制机制的数据操作机制;若所述文件数据操作指令的类型为文件启/闭,则执行零拷贝文件数据迁移的数据操作机制。本发明专利技术能够解决现有持久化文件系统在使用超级页组织文件数据时存在极大的写放大及空间严重浪费的问题,从而提高持久化内存文件系统的性能和存储空间利用率,满足了实际应用需求。

【技术实现步骤摘要】
持久化内存文件系统数据组织方法、系统及存储介质
本专利技术涉及计算机信息存储
,特别是涉及一种持久化内存文件系统数据组织方法、系统及存储介质。
技术介绍
随着科学技术的不断发展,近年来,出现了诸多以持久化内存作为存储设备的持久化内存文件系统(PersistentMemoryFileSystem),例如BPFS、SCMFS、PMFS、SIMFS、NOVA和HiNFS等。这类文件系统具有持久化内存的低延迟性和可按字节寻址等优点,通过优化文件数据的组织方式和数据一致性机制,极大的提升了文件系统的性能,使得文件访问的吞吐率达到GB/s级。众所周知的,文件系统通常使用写前日志(WAL)和写时复制(CoW)机制来保证数据一致性。其中,WAL将存储空间分为数据区和日志区,在更新数据前,先更新数据写入日志,然后在更新数据。若在修改数据的过程中发生系统崩溃或掉电,可根据日志数据重做或撤回保证数据一致性。然而WAL存在“两次写问题”,严重降低文件系统的性能。而CoW采用异地更新原则,把数据更新到新的存储位置,最后修改文件数据索引结构,降低数据一致性开销,因此通常采用CoW保证数据一致性。其中,现有的持久化内存文件普遍使用4KB物理页来组织文件数据。然而,这种数据组织策略对大文件而言常常存在文件数据页查找和空间管理开销大的问题。因此,借鉴于现有内存超级页机制,SCMFS-LP和PMFS支持超级页(2MB或1GB)组织文件数据来降低文件数据查找和空间管理开销,同时提高TLB命中率。因此,持久化文件系统在使用超级页作为内存管理粒度时,虽然能够提高TLB的命中率,在一定程度上能够提高访问效率,但是会产生写放大及空间严重浪费的问题。
技术实现思路
为了解决上述问题,本专利技术的目的是提供一种能够解决现有持久化文件系统在使用超级页作为内存管理粒度时存在写放大及空间严重浪费的问题,从而提高持久化内存文件系统的性能和存储空间利用率的持久化内存文件系统数据组织方法、系统、存储介质。根据本专利技术提供的持久化内存文件系统数据组织方法,所述方法包括如下步骤:当接收到文件数据操作指令时,根据所述文件数据操作指令的类型执行相应的数据操作机制;若所述文件数据操作指令的类型为覆盖写,则执行多粒度写时复制机制的数据操作机制;若所述文件数据操作指令的类型为文件启/闭,则执行零拷贝文件数据迁移的数据操作机制。根据本专利技术提供的持久化内存文件系统数据组织方法,首先通过在执行覆盖写的文件数据操作指令时,则执行多粒度写时复制机制的数据操作机制,即根据被覆盖写的文件数据的大小及范围进行文件数据写入及映射关系的调整,以避免写放大的技术问题;通过在执行文件启/闭的数据操作时,执行零拷贝文件数据迁移的数据操作机制,即通过回收文件所占的最后一个数据页上的空闲空间来解决空间浪费的问题。本专利技术通过虚拟内存管理机制结合文件数据索引结构来管理文件数据,根据更新数据的大小使用修改文件数据索引结构和页表相结合的方法实现数据一致性,同时,通过修改页表的方式实现数据动态迁移,提高了混持久化内存空间的利用率,满足了实际应用需求。另外,根据本专利技术上述的持久化内存文件系统数据组织方法,还可以具有如下附加的技术特征:进一步地,在接收文件数据操作指令的步骤之前,所述方法还包括:将持久化内存的物理地址空间映射至一连续的、大小相等的虚拟地址空间,所述虚拟地址空间内设有多个虚拟超级页;将持久化内存的物理地址空间划分为用来记录虚拟地址到物理地址映射关系的页表区,以及用来存储文件系统数据的普通物理页区。进一步地,执行多粒度写时复制机制的数据操作制的方法包括:判断被覆盖写的文件数据所占用的虚拟超级页的个数;当被覆盖写的文件数据所占用的虚拟超级页的数量为一个或多个时,则采用粗粒度的写时复制机制的数据操作机制;当被覆盖写的文件数据所占用的虚拟超级页的数量为一个或多个虚拟超级页的部分空间时,则采用细粒度的写时复制机制的数据操作机制。进一步地,采用粗粒度的写时复制机制的数据操作机制的方法包括:为所需进行覆盖写的虚拟超级页分配一空闲虚拟超级页,把所需进行覆盖写的文件数据写入所述空闲虚拟超级页中,并生成对应的事务日志,其中所述空闲虚拟超级页为未使用的虚拟超级页;将页表中虚拟超级页的文件数据索引替换为空闲虚拟超级页的文件数据索引,并回收所需进行覆盖写的虚拟超级页的数据空间。进一步地,采用细粒度的写时复制机制的数据操作机制的方法包括:为所需进行覆盖写的虚拟普通页分配一空闲虚拟普通页,并从页表中获取所述虚拟普通页及空闲虚拟普通页所对应的物理地址,其中所述空闲虚拟普通页为未使用的虚拟普通页,把所需进行覆盖写的文件数据写入所述空闲虚拟普通页中,并生成对应的事务日志;交换虚拟普通页及空闲虚拟普通页在页表区中的条目,并回收所述虚拟普通页的数据空间。进一步地,执行多粒度写时复制机制的数据操作机制的方法还包括:当文件系统在系统崩溃或电源故障后进行重启的过程中,检查事务日志的状态;当存在覆盖写的过程未完成时,通过所述事务日志的日志信息判断被覆盖写文的件数据的数据一致性;根据事务日志的使用页号和存储在事务日志中的物理地址进行页表或文件数据索引的修改,并将当前事务日志的状态更新为完成。进一步地,执行零拷贝文件数据迁移的数据操作机制的方法包括:当文件关闭时,回收该文件最后一个虚拟超级页中未使用的空间,同时,在文件索引节点中设置一标志位;当该文件被重新打开以执行追加写入操作时,则分配一未使用的虚拟超级页,同时将页表中最后一个虚拟超级页所存储的虚拟普通页与未使用的虚拟超级页所存储的虚拟普通页进行条目表换;修改文件数据索引中相应的条目,将其重定向到未使用的虚拟超级页,回收最一个虚拟超级页中所存储的虚拟普通页的空间,并将追加写入操作中所需写入的数据完全附加在未使用的虚拟超级页所存储的虚拟普通页之后。进一步地,普通物理页区内设有多个普通物理页,每个虚拟超级页由多个虚拟普通页组成,所述虚拟普通页的大小与普通物理页的大小相等,均为4KB。本专利技术的另一实施例提出一种新的持久化内存文件系统数据组织系统,解决了现有持久化文件系统在使用超级页组织文件数据时存在极大的写放大及空间严重浪费的问题,从而提高持久化内存文件系统的性能和存储空间利用率,提高了用户数据存储体验的满意度。根据本专利技术实施例的持久化内存文件系统数据组织系统,包括:指令接收模块,用于当接收到文件数据操作指令时,根据所述文件数据操作指令的类型执行相应的数据操作机制;第一执行模块,用于若所述文件数据操作指令的类型为覆盖写,则执行多粒度写时复制机制的数据操作机制;第二执行模块,用于若所述文件数据操作指令的类型为文件启/闭,则执行零拷贝文件数据迁移的数据操作机制。本专利技术的另一个实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上本文档来自技高网
...

【技术保护点】
1.一种持久化内存文件系统数据的组织方法,其特征在于,所述方法包括如下步骤:/n当接收到文件数据操作指令时,根据所述文件数据操作指令的类型执行相应的数据操作机制;/n若所述文件数据操作指令的类型为覆盖写,则执行多粒度写时复制机制的数据操作机制;/n若所述文件数据操作指令的类型为文件启/闭,则执行零拷贝文件数据迁移的数据操作机制。/n

【技术特征摘要】
1.一种持久化内存文件系统数据的组织方法,其特征在于,所述方法包括如下步骤:
当接收到文件数据操作指令时,根据所述文件数据操作指令的类型执行相应的数据操作机制;
若所述文件数据操作指令的类型为覆盖写,则执行多粒度写时复制机制的数据操作机制;
若所述文件数据操作指令的类型为文件启/闭,则执行零拷贝文件数据迁移的数据操作机制。


2.根据权利要求1所述的持久化内存文件系统的数据组织方法,其特征在于,在接收文件数据操作指令的步骤之前,所述方法还包括:
将持久化内存的物理地址空间映射至一连续的、大小相等的虚拟地址空间,所述虚拟地址空间内设有多个虚拟超级页;
将持久化内存的物理地址空间划分为用来记录虚拟地址到物理地址映射关系的页表区,以及用来存储文件系统数据的普通物理页区。


3.根据权利要求1所述的持久化内存文件系统的数据组织方法,其特征在于,执行多粒度写时复制机制的数据操作制的方法包括:
判断被覆盖写的文件数据所占用的虚拟超级页的个数;
当被覆盖写的文件数据所占用的虚拟超级页的数量为一个或多个时,则采用粗粒度的写时复制机制的数据操作机制;
当被覆盖写的文件数据所占用的虚拟超级页的数量为一个或多个虚拟超级页的部分空间时,则采用细粒度的写时复制机制的数据操作机制。


4.根据权利要求3所述的持久化内存文件系统数据组织方法,其特征在于,采用粗粒度的写时复制机制的数据操作机制的方法包括:
为所需进行覆盖写的虚拟超级页分配一空闲虚拟超级页,把所需进行覆盖写的文件数据写入所述空闲虚拟超级页中,并生成对应的事务日志,其中所述空闲虚拟超级页为未使用的虚拟超级页;
将页表中虚拟超级页的文件数据索引替换为空闲虚拟超级页的文件数据索引,并回收所需进行覆盖写的虚拟超级页的数据空间。


5.根据权利要求3所述的持久化内存文件系统数据组织方法,其特征在于,采用细粒度的写时复制机制的数据操作机制的方法包括:
为所需进行覆盖写的虚拟普通页分配一空闲虚拟普通页,并从页表中获取所述虚拟普通页及空闲虚拟普通页所对应的物理地址,其中所述空闲虚拟普通页为未使用的虚拟普通页,
把所需进行覆盖写的文件数据写入所述空闲虚拟普通页中,并生成对应...

【专利技术属性】
技术研发人员:刘铎聂顺杨朝树张润宇陈咸彰谭玉娟
申请(专利权)人:重庆大学
类型:发明
国别省市:重庆;50

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

1