一种轻量级文件系统的数据处理方法和系统技术方案

技术编号:27603298 阅读:12 留言:0更新日期:2021-03-10 10:26
本发明专利技术公开了一种轻量级文件系统的数据处理方法和系统,数据处理方法包括:将文件系统布局方式设置为磁盘头部存储标签、超级块、文件数据、元数据、数据校验值、元数据校验值信息,磁盘中部以及尾部存储超级块备份信息;当文件中的数据写入磁盘时,通过算法计算出数据和元数据的校验值信息;将文件系统加载流程设置为先计算超级块存储位置,其次读取超级块信息,最后加载磁盘中元数据信息;根据元数据中信息设置文件系统中文件的写、创建、删除、读方法;本发明专利技术能够支持并发的文件的元数据更新,同时增加对超级块的备份,每个文件的元数据和数据的数据校验信息,避免磁盘静默而导致的数据不一致风险。据不一致风险。据不一致风险。

【技术实现步骤摘要】
一种轻量级文件系统的数据处理方法和系统


[0001]本专利技术涉及存储云计算领域,特别是涉及一种轻量级文件系统的数据处理方法和系统。

技术介绍

[0002]单机存储引擎主要用于解决如何在SSD、HDD或NVMe等物理存储设备上快速高效的组织数据、索引数据和存储数据,同时为上层存储系统提供易用的存储接口。另外,在存储引擎中需要考虑如何提供优越的性能,同时在物理设备掉电或故障时如何保证数据恢复和数据一致性。
[0003]Ceph中Bluefs组件为一个轻量级文件系统,它实现了一个轻量级的日志管理模块,记录所有元数据更改的操作,但是它没有实现Posix标准接口,不支持对文件的覆盖写操作只支持追加写,没有本地文件系统的树形层次结构,只有扁平的目录到文件的映射关系;另外,其仅提供扁平化的目录和文件的映射关系,没有提供深层的目录管理;若磁盘静默则会导致的数据不一致,若磁盘损坏则磁盘中的数据无法恢复。

技术实现思路

[0004]本专利技术主要解决的技术问题是提供一种轻量级文件系统的数据处理方法和系统,能够支持并发的文件的元数据更新,同时增加对超级块的备份,每个文件的元数据和数据的数据校验信息,避免磁盘静默而导致的数据不一致风险。
[0005]为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种轻量级文件系统的数据处理方法,包括:
[0006]将文件系统布局方式设置为将磁盘中存储空间分为三部分,磁盘头部存储空间、磁盘中部存储空间以及磁盘尾部存储空间;所述磁盘头部存储空间存储标签、超级块、文件数据、元数据、数据校验值、元数据校验值信息,磁盘中部存储空间以及磁盘尾部存储空间存储超级块备份信息;
[0007]当文件中的数据写入磁盘时,通过算法计算出数据和元数据的校验值信息,并将数据和元数据的校验值信息写入磁盘头部对应数据校验值、元数据校验值信息位置处;
[0008]将文件系统加载流程设置为计算超级块存储位置、读取并判断超级块信息,根据超级块信息判断系统格式化是否成功,若成功,则同时校验磁盘中所有的超级块数据是否一致,若一致,则加载磁盘中元数据信息;
[0009]根据元数据中信息设置文件系统中文件的写、创建、删除、读方法。
[0010]进一步,所述超级块中存储唯一标识、版本号以及空间大小;
[0011]所述唯一标识校验磁盘是否格式化,若文件系统中存在所述唯一标识,则磁盘格式化完成;
[0012]根据所述版本号确定磁盘的管理方式;
[0013]所述空间大小为数据的磁盘占用空间大小;
[0014]所述元数据中包含索引号、文件占用空间大小、文件名称、修改时间、文件在磁盘存储的起始地址和结束地址以及磁盘中数据删除字段;
[0015]所述索引号是文件的唯一标识;
[0016]所述算法为CRC算法,所述数据和元数据校验值信息存储容量为512字节。
[0017]进一步,所述计算超级块存储位置包括:
[0018]根据文件系统数据布局方式计算超级块在磁盘的存储位置,读取超级块中信息;
[0019]所述根据超级块信息判断系统格式化是否成功包括:
[0020]根据超级块信息中是否存在唯一标识,判断文件系统是否格式化成功;
[0021]若超级块中存在唯一标识则文件系统格式化成功。
[0022]进一步,所述加载磁盘中元数据信息包括:
[0023]首先判断磁盘的空间大小,遍历文件系统中所有磁盘中存储元数据区域,从磁盘读取并加载元数据;
[0024]然后根据元数据的预定格式,读取磁盘中数据的校验值信息判断数据是否完整,若不完整,则标记文件数据损坏,并将文件数据删除,删除后将从磁盘中读取的所有元数据信息,记录到内存中。
[0025]进一步,所述根据元数据中信息设置文件系统中文件的写方法包括写入信息时,先写入数据信息,数据写入完成后,更新元数据信息和校验值信息;
[0026]所述根据元数据中信息设置文件系统中文件的创建方法包括创建文件时,根据当前元数据中的索引号,分配新的索引号作为文件的唯一标识,根据文件写入数据长度,更新数据长度,并更新元数据信息中名称和修改时间。
[0027]进一步,所述创建文件或写入信息过程中,当出现故障或写入失败时,元数据更新失败,并标记为数据写入失败,保证写入数据的一致性。
[0028]进一步,所述根据元数据中信息设置文件系统中文件的删除方法包括标记文件对应的元数据中的数据删除字段为0;当数据误删除后,根据数据删除字段恢复数据;
[0029]所述根据元数据中信息设置文件系统中文件的读方法包括所述文件系统加载流程完成后,根据内存中记录的文件元数据判断元数据中磁盘存储的起始地址和结束地址,在起始地址和结束地址处读取数据;读取完成后,校验数据的元数据信息是否一致,若不一致,则不将数据返回起始地址和结束地址。
[0030]一种轻量级文件系统,包括:布局模块、备份模块、校验模块、加载流程模块、文件操作模块;所述布局模块将磁盘中存储空间分为三部分,磁盘头部存储空间、磁盘中部存储空间以及磁盘尾部存储空间;所述磁盘头部存储空间存储标签、超级块、文件数据、元数据、数据校验值、元数据校验值信息,磁盘中部存储空间以及磁盘尾部存储空间存储超级块备份信息;所述备份模块将所述磁盘头部中超级块信息进行备份,并存储至磁盘中部存储空间以及磁盘尾部存储空间;所述检验模块通过算法计算数据和元数据的校验值信息并存储至所述磁盘头部存储空间数据校验值和元数据校验值中;所述加载流程模块通过超级块中信息进行判断所述系统是否格式化成功,若所述系统格式化成功,则同时校验磁盘中所有的超级块数据是否一致,若一致,则加载磁盘中元数据信息;所述文件操作模块根据元数据中信息执行文件系统中文件的写、创建、删除、读方法。
[0031]进一步,所述加载流程模块包括判断模块、加载元数据模块;
[0032]所述判断模块线找到磁盘中超级块存储位置,读取并判断超级块信息,若超级块信息中存在唯一标识则文件系统格式化成功并将格式化成功信息发送至所述校验超级块信息模块;
[0033]所述加载元数据模块判断磁盘的空间大小,遍历文件系统中所有磁盘中存储元数据区域,从磁盘读取并加载元数据;
[0034]然后根据元数据的预定格式,读取磁盘中数据的校验值信息判断数据是否完整,若不完整,则标记文件数据损坏,并将文件数据删除,删除后将从磁盘中读取的所有元数据信息,记录到内存中。
[0035]进一步,所述文件操作模块包括执行写文件方法模块、执行创建文件方法模块、执行删除文件方法模块、执行读文件方法模块;
[0036]所述执行写文件方法模块在写入信息时,先写入数据信息,数据写入完成后,更新元数据信息和校验值信息;
[0037]所述执行创建文件方法模块在创建文件时,根据当前元数据中的索引号,分配新的索引号作为文件的唯一标识,根据文件写入数据长度,更新数据长度,并更新元数据信息中名称和修改时间;
...

【技术保护点】

【技术特征摘要】
1.一种轻量级文件系统的数据处理方法,其特征在于,包括:将文件系统布局方式设置为将磁盘中存储空间分为三部分,磁盘头部存储空间、磁盘中部存储空间以及磁盘尾部存储空间;所述磁盘头部存储空间存储标签、超级块、文件数据、元数据、数据校验值、元数据校验值信息,磁盘中部存储空间以及磁盘尾部存储空间存储超级块备份信息;当文件中的数据写入磁盘时,通过算法计算出数据和元数据的校验值信息,并将数据和元数据的校验值信息写入磁盘头部对应数据校验值、元数据校验值信息位置处;将文件系统加载流程设置为计算超级块存储位置、读取并判断超级块信息,根据超级块信息判断系统格式化是否成功,若成功,则同时校验磁盘中所有的超级块数据是否一致,若一致,则加载磁盘中元数据信息;根据元数据中信息设置文件系统中文件的写、创建、删除、读方法。2.根据权利要求1所述的一种轻量级文件系统的数据处理方法,其特征在于:所述超级块中存储唯一标识、版本号以及空间大小;所述唯一标识校验磁盘是否格式化,若文件系统中存在所述唯一标识,则磁盘格式化完成;根据所述版本号确定磁盘的管理方式;所述空间大小为数据的磁盘占用空间大小;所述元数据中包含索引号、文件占用空间大小、文件名称、修改时间、文件在磁盘存储的起始地址和结束地址以及磁盘中数据删除字段;所述索引号是文件的唯一标识;所述算法为CRC算法,所述数据和元数据校验值信息存储容量为512字节。3.根据权利要求1所述的一种轻量级文件系统的数据处理方法,其特征在于:所述计算超级块存储位置包括:根据文件系统数据布局方式计算超级块在磁盘的存储位置,读取超级块中信息;所述根据超级块信息判断系统格式化是否成功包括:根据超级块信息中是否存在唯一标识,判断文件系统是否格式化成功;若超级块中存在唯一标识则文件系统格式化成功。4.根据权利要求3所述的一种轻量级文件系统的数据处理方法,其特征在于:所述加载磁盘中元数据信息包括:首先判断磁盘的空间大小,遍历文件系统中所有磁盘中存储元数据区域,从磁盘读取并加载元数据;然后根据元数据的预定格式,读取磁盘中数据的校验值信息判断数据是否完整,若不完整,则标记文件数据损坏,并将文件数据删除,删除后将从磁盘中读取的所有元数据信息,记录到内存中。5.根据权利要求1所述的一种轻量级文件系统的数据处理方法,其特征在于:所述根据元数据中信息设置文件系统中文件的写方法包括写入信息时,先写入数据信息,数据写入完成后,更新元数据信息和校验值信息;所述根据元数据中信息设置文件系统中文件的创建方法包括创建文件时,根据当前元数据中的索引号,分配新的索引号作为文件的唯一标识,根据文件写入数据长度,更新数据
长度,并更新元数据信息中名称和修改时间。6.根据权利要求5所述的一种轻量级文件系统的数据处理方法,其特征在于:所述创建文件或写入信息过程中,当出现故障或写入失败时,元数据更新失败,并标记为数据写入失败,保证写入数据的一致性。7.根据权利要求5所述的一种轻量级文件系统的数据处理方法,其特...

【专利技术属性】
技术研发人员:方浩
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1