[发明专利]一种文件读取方法和系统、存储介质、计算机设备有效
申请号: | 201811455960.1 | 申请日: | 2018-11-30 |
公开(公告)号: | CN111258955B | 公开(公告)日: | 2023-09-19 |
发明(设计)人: | 李文博;吴义谱;张炎泼 | 申请(专利权)人: | 北京白山耘科技有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/17 |
代理公司: | 北京名华博信知识产权代理有限公司 11453 | 代理人: | 白莹;苗源 |
地址: | 100015 北京市朝阳区酒仙*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 读取 方法 系统 存储 介质 计算机 设备 | ||
本发明提供了一种文件读取方法和系统。涉及存储技术,解决了读取小文件索引压力大及I/O开销高的问题。该方法包括:根据待读取的第一文件信息,查找所述第一文件归属的第二文件,所述第一文件为第一类型,所述第二文件包含至少两个第一类型的文件,所述第二文件为第二类型的文件;读取所述第二文件;从所述第二文件中查找得到所述第一文件。本发明提供的技术方案适用于海量小文件存储,实现了高效高资源利用率的小文件存储管理。
技术领域
本发明涉及存储技术,尤其涉及一种文件读取方法和系统、存储介质、计算机设备。
背景技术
存储系统中索引的设计以减少内存成本和降低I/O开销为目的,但这两方面有矛盾的地方,要降低I/O开销就要使索引的尽量准确,而这样又必然会导致索引的容量增加。这种情形在存储系统中小文件的场景中尤为明显。
现有技术主流采用将小文件合并存储的方式,然后在内存中分别建立这些小文件的索引。
这样做的缺点是,小文件数目较多时,建立的索引所占用的容量会很大,尤其在当下短视频和图片服务发展迅猛的场景中,海量小文件存储建立的索引的容量会使得单机内存容量难以负担。
内存容量难以负担时,需要将索引分层,将全量索引写入到磁盘,只在内存中存储全量索引的索引。这样带来的问题是查找文件时必须要经过2次I/O,一次读取全量索引,一次读取文件。
发明内容
本发明旨在解决上面描述的问题。
根据本发明的第一方面,提供了一种文件读取方法,包括:
根据待读取的第一文件信息,查找所述第一文件归属的第二文件,所述第一文件为第一类型,所述第二文件包含至少两个第一类型的文件,所述第二文件为第二类型的文件;
读取所述第二文件;
从所述第二文件中查找得到所述第一文件。
优选的,根据待读取的第一文件信息,查找所述第一文件归属的第二文件的步骤之前,还包括:
将多个第一类型的文件组成至少一个第二类型的文件写入存储。
优选的,所述第一类型为小文件类型,所述第二类型为大文件类型,将多个第一类型的文件组成至少一个第二类型的文件写入存储的步骤包括:
为第一类型的文件添加包含该文件元信息的头部;
将多个第一类型的文件按照预置的第二类型的文件容量进行组合,构成所述第二类型的文件;
将所述第二类型的文件写入存储,并为所述第二类型的文件建立索引。
优选的,将多个第一类型的文件按照预置的第二类型的文件容量进行组合,构成所述第二类型的文件的步骤包括:
对所述多个第一类型的文件进行排序;
依序截取多个第一类型的文件分组,每个文件分组的总数据量达到或接近达到预置的第二类型的文件容量;
以每个文件分组构成一个第二类型的文件,所述第二类型的文件的名称为对应的文件分组中第一个第一类型的文件的名称。
优选的,根据待读取的第一文件信息,查找所述第一文件归属的第二文件的步骤包括:
对比所述第一文件的元信息与各个第二类型的文件的索引,确定包含所述第一文件的第二类型的文件为所述第一文件归属的第二文件。
根据本发明的另一方面,还提供了一种文件读取系统,包括:
文件查找模块,用于根据待读取的第一文件信息,查找所述第一文件归属的第二文件,所述第一文件为第一类型,所述第二文件包含至少两个第一类型的文件,所述第二文件为第二类型的文件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京白山耘科技有限公司,未经北京白山耘科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811455960.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于区块链的数据管理方法以及相关装置
- 下一篇:一种换热器