[发明专利]一种文件数据块寻址方法、系统及设备和存储介质有效
申请号: | 201810697847.8 | 申请日: | 2018-06-29 |
公开(公告)号: | CN108897698B | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 邸忠辉 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F12/0802 | 分类号: | G06F12/0802 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 数据 寻址 方法 系统 设备 存储 介质 | ||
本申请公开了一种文件数据块寻址方法、系统及设备和计算机可读存储介质,该方法包括:获取待操作文件的文件块号,并判断所述文件块号是否在预设范围内;若是,则根据所述文件块号对应的指针通过直接寻址的方式确定所述待操作文件对应的磁盘逻辑块号;若否,则获取目标指针,并根据所述目标指针指向的基树和所述文件块号确定所述待操作文件对应的磁盘逻辑块号;其中,所述基树为存储文件的磁盘逻辑块号的基树。本申请提供的文件数据块寻址方法,采用直接映射加基树映射,将文件块号映射到磁盘逻辑块号。通过文件块号预设范围的直接索引,小文件通过两次访问磁盘就能完成磁盘请求,对稀疏文件及大文件采用基树映射,有效降低了索引块的磁盘占用。
技术领域
本申请涉及存储技术领域,更具体地说,涉及一种文件数据块寻址方法、系统及设备和一种计算机可读存储介质。
背景技术
用户数据在文件系统中以文件的方式进行存储,文件由文件数据和文件元数据组成,文件数据就是用户存储的数据内容,元数据是描述文件数据的数据,即如何识别找到该文件数据,如何记录文件数据的变化等。每个非空的普通文件都由一组数据块组成。这些块由文件内的相对位置(即文件块号)来标识,或者磁盘分区内的位置(即磁盘逻辑块号)来标识。为了从文件内的偏移量导出相应数据块的磁盘逻辑块号,需要从偏移量导出文件块号,即在偏移量处的字符所在的块索引,再将文件块号转换为相应的磁盘逻辑块号。
因此,文件系统必须提供一种方法,建立每个文件块号与相应逻辑块号之间的关系。现有技术中采用分级索引映射,如图1所示,索引节点的i_block数组将文件块号的0-11进行直接映射,文件块号大于11的采取分级映射。
使用分级索引映射操作简单,应用于小文件时性能优异,但映射间接块所占的磁盘空间较大,对于大文件及稀疏文件性能较差。
因此,如何减少文件块号与磁盘逻辑块号映射所占的磁盘空间是本领域技术人员需要解决的问题。
发明内容
本申请的目的在于提供一种文件数据块寻址方法、系统及设备和一种计算机可读存储介质,减少了文件块号与磁盘逻辑块号映射所占的磁盘空间。
为实现上述目的,本申请提供了一种文件数据块寻址方法,包括:
获取待操作文件的文件块号,并判断所述文件块号是否在预设范围内;
若是,则根据所述文件块号对应的指针通过直接寻址的方式确定所述待操作文件对应的磁盘逻辑块号;
若否,则获取目标指针,并根据所述目标指针指向的基树和所述文件块号确定所述待操作文件对应的磁盘逻辑块号;
其中,所述基树为存储文件的磁盘逻辑块号的基树。
其中,获取待操作文件的文件块号,包括:
获取文件操作请求;其中,所述文件操作请求至少包括所述待操作文件的文件块号;
相应的,所述确定所述待操作文件对应的磁盘逻辑块号之后,还包括:
根据所述文件操作请求对所述磁盘逻辑块号对应的数据块执行相应的操作,并返回操作结果。
其中,根据所述文件操作请求对所述磁盘逻辑块号对应的数据块执行相应的操作,并返回操作结果之后,还包括:
根据所述操作结果更新所述基树。
其中,所述基树的根节点的数据结构至少包括所述基树的当前深度和根节点指针,所述根节点指针指向所述基树的第一层节点。
其中,所述基树除所述根节点外的节点的数据结构至少包括指针数组和所述指针数组中非空指针的计数变量。
其中,根据所述目标指针指向的基树和所述文件块号确定所述待操作文件对应的磁盘逻辑块号,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810697847.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置