CN113704217A - 一种分布式持久性内存文件系统中元数据及数据组织架构方法 - Google Patents

一种分布式持久性内存文件系统中元数据及数据组织架构方法 Download PDF

Info

Publication number
CN113704217A
CN113704217A CN202110737961.0A CN202110737961A CN113704217A CN 113704217 A CN113704217 A CN 113704217A CN 202110737961 A CN202110737961 A CN 202110737961A CN 113704217 A CN113704217 A CN 113704217A
Authority
CN
China
Prior art keywords
area
metadata
file system
data
file
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.)
Pending
Application number
CN202110737961.0A
Other languages
English (en)
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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN202110737961.0A priority Critical patent/CN113704217A/zh
Publication of CN113704217A publication Critical patent/CN113704217A/zh
Pending legal-status Critical Current

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/18File system types
    • G06F16/182Distributed file systems
    • 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

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

本发明公开了一种分布式持久性内存文件系统中元数据及数据组织架构方法,其包括:构建根元数据区、元数据索引区、元数据区、数据区和日志区;根元数据区为分布式持久性内存文件系统的关键信息存储区域;元数据索引区,由二级索引组成,包括初级的段索引以及次级的组索引,用于快速获取元数据的序号以及元数据地址;元数据区,包括元数据位图区、详细信息存储区;数据区是分布式持久性内存文件系统中数据块的存储区域,采用基数树结构组织方式;日志区用于记录文件数据的修改,并将变化内容记录入日志,以确保文件系统的一致性。通过该方法可得到针对分布式文件系统的分布式持久性内存,其可靠性高,性能好。

Description

一种分布式持久性内存文件系统中元数据及数据组织架构 方法
技术领域
本发明涉及计算机系统软件技术领域,具体涉及一种分布式持久性内存文件系统中元数据及数据组织架构方法。
背景技术
传统的分布式文件系统的物理存储资源基于磁盘(HDD)和闪存(SSD)构建,有持久化需求的数据需要通过DRAM内存刷新到HDD或者SSD,从而降低了分布式文件系统的性能。新型的持久性内存PM结合了DRAM内存和磁盘的优良特性,具有低访问延时、低功耗、掉电数据不丢失和可字节访问等优点。直接将PM引入分布式文件系统,使其作为其物理存储资源,这会导致整个分布式文件系统的硬件体系架构层次发生变化,进而需要重构或者优化分布式文件系统的软件栈。元数据及数据的组织架构方法是分布式文件系统设计中的关键技术,然而现有的分布式文件系统中鲜有专门针对分布式持久性内存,进行元数据及数据的组织架构方法。
在本技术领域,涉及以下技术术语:
DRAM:Dynamic Random Access Memory,动态随机存储器,即现阶段广泛使用的内存,其特点是断电后信息丢失,理论上读写寿命不受限制。
DDR4 SDRAM:Double Data Rate Fourth Generation Synchronous DynamicRandom Access Memory,第四代双倍数据率同步动态随机存储器,是目前最新一代的计算机存储器规格,相比历代规格提供更低的电压、功耗与更高的带宽。
PM:Persistent Memory,非易失型内存或持久性内存STTRAM、PCM、RRAM 都属于PM,其特点是断电后信息不丢失,可字节寻址;但读写次数受限制,并且读写不对称,根据材料的不同,传统的PM写耗费时间大概是其读耗费时间的 2到4倍,PM的读时间比DRAM慢1到3倍,Intel最新发布的Optane DC Persistent Memory在读写速度上已经与现有的DDR4规格的DRAM相当。
分布式文件系统:文件系统管理的物理存储资源分布在多个物理机器节点上,物理机器节点之间通过网络相互连接和传输数据,用户可以像访问本地文件系统一样访问存放在分布式文件系中的数据资源,而不必关心从哪个节点上获得数据存放在分布式文件系中的数据资源,而不必关心从哪个节点上获得数据或者在哪个物理节点上存放数据。分布式文件系统可以有效地扩展数据的存储方或者在哪个物理节点上存放数据。分布式文件系统可以有效地扩展数据的存储方式,加速数据的读取速率,加强系统的容错性式,加速数据的读取速率,加强系统的容错性等。图1给出了一种分布式文件系统的架构图。
分布式持久性内存文件系统:如图2所示,即在图1的基础上将PM引入分布式文件系统的每个物理节点,这些物理节点之间通过TCP/IB连接并进行数据传输。基于图2的物理架构设计的分布式文件系统称为分布式持久性内存文件系统。
发明内容
本发明的目的是根据上述现有技术的不足之处,提供一种分布式持久性内存文件系统中元数据及数据组织架构方法,所述方法能够快捷的添加到分布式持久性内存文件系统的设计中,对构建基于新型持久性内存的分布式系统有积极的意义。
本发明目的实现由以下技术方案完成:
一种分布式持久性内存文件系统中元数据及数据组织架构方法,其包括:构建根元数据区、元数据索引区、元数据区、数据区和日志区,其中:
所述根元数据区为分布式持久性内存文件系统的关键信息存储区域,在构建方式上采用双备份的冗余机制;
所述元数据索引区,由二级索引组成,包括初级的段索引以及次级的组索引,用于快速获取元数据的序号以及元数据地址;
元数据区,包括元数据位图区、详细信息存储区;
数据区是分布式持久性内存文件系统中数据块的存储区域,采用基数树结构组织方式;
所述日志区用于记录文件数据的修改,并将变化内容记录入日志,以确保文件系统的一致性。
本发明的进一步改进在于,在所述根元数据区中,分布式持久性内存文件系统的关键信息包括:存放元数据索引区信息、元数据区信息、数据区总量信息、文件系统的类型、文件系统的大小、文件系统的状态。
本发明的进一步改进在于,所述根元数据区处于分布式持久性内存文件系统中首地址开始的区域,该区域记录文件系统全局信息,包括:
用于链接其他文件系统的双向循环链表,链表位于根元数据区的数据结构中的首位;
以比特为单位的文件系统中数据块大小,用以根据块大小快速查找定位数据块;
脏位,用以标识根元数据区是否被修改;
以字节为单位的文件系统允许的单个最大文件。
本发明的进一步改进在于,所述元数据索引区由一个索引节点表构成,索引节点以128字节对齐;所述的索引结构分为段索引、组索引。
本发明的进一步改进在于,在所述元数据区中:数据位图区(位图管理表) 用于记录管理inode空间使用情况,其使用位图中的比特位0表示相应inode 处于空闲状态,未被使用或已经释放可以用来分配新文件,并用位图中的比特位1表示相应inode已经被分配了具体的数据;详细信息存储区中的数据包括若干个inode,每个inode表示一个文件或文件夹目录;inode中包含了文件的类型属性、文件大小、文件的局部id和全局id、文件的创建时间、最近一次访问时间、最近一次更新时间、文件的所属组、文件的拥有者、文件的访问权限矩阵、文件的物理地址。
本发明的进一步改进在于,数据区的分布算法采取的是基数树结构,并且在元数据区中由inode进行存储管理;基数树包含树的根节点和索引节点,其中根节点由当前树的高度、内存申请时的使用类型标志和指向第一层节点的指针构成,其中索引节点由可配置大小的指针数组非空指针计算器和记录页面脏标记与写回标记的二维数组构成。
本发明的进一步改进在于,数据区紧连元数据区,数据区地址由根元数据区大小、元数据索引区大小、元数据区大小决定。
本发明的进一步改进在于,所述日志区包含着文件系统创建、删除、修改、查看历史以及对应的时间戳。
本发明的优点是:通过该方法可得到针对分布式文件系统的分布式持久性内存,其可靠性高,性能好。
附图说明
图1为一种分布式文件系统的架构图;
图2为一种分布式持久性内存文件系统的架构图;
图3为分布式持久性内存文件系统的元数据及数据的组织架构。
具体实施方式
以下结合附图通过实施例对本发明的特征及其它相关特征作进一步详细说明,以便于同行业技术人员的理解:
实施例:如图3所示,本发明的实施例包括一种分布式持久性内存文件系统中元数据及数据组织架构方法,其包括:构建根元数据区、元数据索引区、元数据区、数据区和日志区。其中:
根元数据区用于描述和维护文件系统的状态,并作为整个分布式持久性内存文件系统的关键信息存储区域。分布式持久性内存文件系统的关键信息包括存放元数据索引区信息、元数据区信息、数据区总量信息、文件系统的类型、文件系统的大小、文件系统的状态。根元数据区在构建方式上采用双备份的冗余机制。
元数据索引区,由二级索引组成,包括初级的段索引以及次级的组索引,用于快速获取元数据的序号以及元数据地址。
元数据区,包括元数据位图区、详细信息存储区。详细信息存储区用于存储文件和文件目录等详细描述信息。元数据区的功能为元数据资源的描述,检索、选择、定位及更新信息。
数据区是分布式持久性内存文件系统中数据块的存储区域,采用基数树结构组织方式;当基数树的深度为5时,可以表示的单个文件的最大容量为4TB,当基数树的深度为8时,可以表示的单个文件的最大容量为256TB,基数树的存储结构适合大容量的PM构造的分布式持久性内存文件系统。
日志区,包括活跃日志,堕性日志,老化回收机制。日志区用于记录文件数据的修改,并将变化内容记录入日志,以确保文件系统的一致性。
根元数据区处于分布式持久性内存文件系统中首地址开始的区域,该区域记录文件系统全局信息,主要包括:用于链接其他文件系统的双向循环链表,链表位于根元数据区的数据结构中的首位;以比特为单位的文件系统中数据块大小,用以根据块大小快速查找定位数据块;脏位,用以标识根元数据区是否被修改;以字节为单位的文件系统允许的单个最大文件。
在所述元数据索引区中:元数据索引区由一个索引节点表构成,索引节点以128字节对齐。索引结构分为段索引、组索引。先根据地址前n位进行分段,每个段中包含组索引号信息。该区域中段索引与组索引依地址顺序排列,段索引区域大小固定,可根据地址偏移快速定位段号。在确定段号之后快速索引组索引号信息:(段号 *段中组索引数*组索引大小)+段索引大小=组索引基地址,地址段第二部分为长度 m的组索引偏移地址,该偏移地址与地址段的剩余部分拼接成实际地址。实际地址用于在本地元数据区中查找具体存放元数据的inode。
在元数据区中:该区域中首先包括一个用于记录管理inode空间使用情况的数据位图区。数据位图区的每一位表示一个inode的状态。数据位图区用位图中的比特位“0”表示该inode处于空闲状态,未被使用或已经释放可以用来分配新文件。用位图中的比特位“1”表示该inode已经被分配了具体的数据。元数据区域的详细信息存储区中存放的主要数据为inode,每个inode表示一个文件或文件夹目录。inode中包含了文件的类型属性,文件大小,文件的局部id和全局id,文件的创建时间,最近一次访问时间,最近一次更新时间,文件的所属组,文件的拥有者,文件的访问权限矩阵,文件的物理地址。元数据区还包含文件的寻址管理信息和对齐信息。
在所述数据区中:数据区的分布算法采取的是基数树结构,并且在元数据区中由节点inode进行存储管理。基数树包含树的根节点和索引节点,其中根节点由当前树的高度,内存申请时的使用类型标志和指向第一层节点的指针构成,其中索引节点由可配置大小的指针数组,非空指针计算器和记录页面脏标记与写回标记的二维数组构成。
数据区紧连元数据区,根据根元数据区大小,元数据索引区大小,元数据大小,可以快速算出数据区地址。计算的依据是:根元数据区具有固定大小,元数据索引区存放的数据大小固定,元数据区大小根据节点inode的数量变化。所以,数据区的起始地址=根元数据区起始地址及大小+元数据索引区大小+索引节点inode大小* (文件系统中文件inode数+目录inode数)。数据区域按页划分,页索引信息在元数据区中的inode存储。
在所述日志区中:日志使用undo和redo结合的技术来保证文件系统的一致性,使系统能进行可靠的更新。日志区包含着文件系统创建、删除、修改、查看历史以及对应的时间戳等详细记录信息。日志操作是原子性事务,日志区中的日志项是一个数据修改记录向量<数据旧信息,数据新信息,时间戳>,使用日志向量可以使用 redo来操控没有执行完整的动作,undo来执行必要的回滚。只有
日志项中已经记录了数据修改记录向量,才能进行数据的实际更新,在数据更新完成后日志项才能标记为执行完毕,对应的事务才能标记为完成状态。根据日志项的使用频率可以把日志区分为活跃日志和惰性日志,定期的将部分活跃日志调整为惰性日志,部分惰性日志最终回收并释放其占用的空间。
以上的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于包括:构建根元数据区、元数据索引区、元数据区、数据区和日志区,其中:
所述根元数据区为分布式持久性内存文件系统的关键信息存储区域,在构建方式上采用双备份的冗余机制;
所述元数据索引区,由二级索引组成,包括初级的段索引以及次级的组索引,用于快速获取元数据的序号以及元数据地址;
元数据区,包括元数据位图区、详细信息存储区;
数据区是分布式持久性内存文件系统中数据块的存储区域,采用基数树结构组织方式;
所述日志区用于记录文件数据的修改,并将变化内容记录入日志,以确保文件系统的一致性。
2.根据权利要求1所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,在所述根元数据区中,分布式持久性内存文件系统的关键信息包括:存放元数据索引区信息、元数据区信息、数据区总量信息、文件系统的类型、文件系统的大小、文件系统的状态。
3.根据权利要求2所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,所述根元数据区处于分布式持久性内存文件系统中首地址开始的区域,该区域记录文件系统全局信息,包括:
用于链接其他文件系统的双向循环链表,链表位于根元数据区的数据结构中的首位;
以比特为单位的文件系统中数据块大小,用以根据块大小快速查找定位数据块;
脏位,用以标识根元数据区是否被修改;
以字节为单位的文件系统允许的单个最大文件。
4.根据权利要求1所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,所述元数据索引区由一个索引节点表构成,索引节点以128字节对齐;所述的索引结构分为段索引、组索引。
5.根据权利要求1所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,在所述元数据区中:数据位图区用于记录管理inode空间使用情况,其使用位图中的比特位0表示相应inode处于空闲状态,未被使用或已经释放可以用来分配新文件,并用位图中的比特位1表示相应inode已经被分配了具体的数据;详细信息存储区中的数据包括若干个inode,每个inode表示一个文件或文件夹目录;inode中包含了文件的类型属性、文件大小、文件的局部id和全局id、文件的创建时间、最近一次访问时间、最近一次更新时间、文件的所属组、文件的拥有者、文件的访问权限矩阵、文件的物理地址。
6.根据权利要求5所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,数据区的分布算法采取的是基数树结构,并且在元数据区中由inode进行存储管理;基数树包含树的根节点和索引节点,其中根节点由当前树的高度、内存申请时的使用类型标志和指向第一层节点的指针构成,其中索引节点由可配置大小的指针数组非空指针计算器和记录页面脏标记与写回标记的二维数组构成。
7.根据权利要求1所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,数据区紧连元数据区,数据区地址由根元数据区大小、元数据索引区大小、元数据区大小决定。
8.根据权利要求1所述的一种分布式持久性内存文件系统中元数据及数据组织架构方法,其特征在于,所述日志区包含着文件系统创建、删除、修改、查看历史以及对应的时间戳。
CN202110737961.0A 2021-06-30 2021-06-30 一种分布式持久性内存文件系统中元数据及数据组织架构方法 Pending CN113704217A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110737961.0A CN113704217A (zh) 2021-06-30 2021-06-30 一种分布式持久性内存文件系统中元数据及数据组织架构方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110737961.0A CN113704217A (zh) 2021-06-30 2021-06-30 一种分布式持久性内存文件系统中元数据及数据组织架构方法

Publications (1)

Publication Number Publication Date
CN113704217A true CN113704217A (zh) 2021-11-26

Family

ID=78648253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110737961.0A Pending CN113704217A (zh) 2021-06-30 2021-06-30 一种分布式持久性内存文件系统中元数据及数据组织架构方法

Country Status (1)

Country Link
CN (1) CN113704217A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918576A (zh) * 2021-12-13 2022-01-11 北京宇信科技集团股份有限公司 一种元数据管理平台及管理方法
CN114153400A (zh) * 2021-12-08 2022-03-08 国仪石油技术(无锡)有限公司 一种用于测井仪器中的数据存储方法
CN117056245A (zh) * 2023-08-18 2023-11-14 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693864B1 (en) * 2006-01-03 2010-04-06 Netapp, Inc. System and method for quickly determining changed metadata using persistent consistency point image differencing
CN104598533A (zh) * 2014-12-29 2015-05-06 曙光云计算技术有限公司 一种文件扩展属性的存储方法
CN111400306A (zh) * 2020-02-20 2020-07-10 上海交通大学 基于rdma与非易失性内存的基数树访问系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693864B1 (en) * 2006-01-03 2010-04-06 Netapp, Inc. System and method for quickly determining changed metadata using persistent consistency point image differencing
CN104598533A (zh) * 2014-12-29 2015-05-06 曙光云计算技术有限公司 一种文件扩展属性的存储方法
CN111400306A (zh) * 2020-02-20 2020-07-10 上海交通大学 基于rdma与非易失性内存的基数树访问系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114153400A (zh) * 2021-12-08 2022-03-08 国仪石油技术(无锡)有限公司 一种用于测井仪器中的数据存储方法
CN114153400B (zh) * 2021-12-08 2024-01-30 国仪石油技术(无锡)有限公司 一种用于测井仪器中的数据存储方法
CN113918576A (zh) * 2021-12-13 2022-01-11 北京宇信科技集团股份有限公司 一种元数据管理平台及管理方法
CN113918576B (zh) * 2021-12-13 2022-03-22 北京宇信科技集团股份有限公司 一种元数据管理平台及管理方法
CN117056245A (zh) * 2023-08-18 2023-11-14 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法
CN117056245B (zh) * 2023-08-18 2024-02-23 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法

Similar Documents

Publication Publication Date Title
EP2735978B1 (en) Storage system and management method used for metadata of cluster file system
CN107943867B (zh) 支持异构存储的高性能层次化存储系统
CN107463447B (zh) 一种基于远程直接非易失内存访问的b+树管理方法
AU2014235185B2 (en) System-wide checkpoint avoidance for distributed database systems
CN113704217A (zh) 一种分布式持久性内存文件系统中元数据及数据组织架构方法
CN107798130A (zh) 一种分布式存储的快照方法
US20230053087A1 (en) Data management system and method of controlling
CN103207883A (zh) 用于元数据持久存储的方法
CN101488153A (zh) 嵌入式Linux下大容量闪存文件系统的实现方法
JP2015532993A (ja) 光ディスクに基づくデータベース記憶システム及びその利用方法
CN114281762B (zh) 一种日志存储加速方法、装置、设备及介质
CN113626431A (zh) 一种基于lsm树的延迟垃圾回收的键值分离存储方法及系统
CN103106286A (zh) 元数据的管理方法和装置
CN103838853A (zh) 一种基于不同存储介质的混合文件系统
CN110147203B (zh) 一种文件管理方法、装置、电子设备及存储介质
CN109407985B (zh) 一种数据管理的方法以及相关装置
CN105045850A (zh) 云存储日志文件系统中垃圾数据回收方法
CN113590612A (zh) Dram-nvm混合索引结构的构建方法及操作方法
CN109165321A (zh) 一种基于非易失内存的一致性哈希表构建方法和系统
CN113377292B (zh) 一种单机存储引擎
Lv et al. Zonedstore: A concurrent zns-aware cache system for cloud data storage
CN111274259A (zh) 一种分布式存储系统中存储节点的数据更新方法
CN111338569A (zh) 一种基于直接映射的对象存储后端优化方法
CN116226232A (zh) 面向分布式数据库的持久内存数据存储方法及系统
US9063656B2 (en) System and methods for digest-based storage

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