[发明专利]基于分布式文件系统的小文件存储方法及装置有效
申请号: | 201610082148.3 | 申请日: | 2016-02-04 |
公开(公告)号: | CN105677904B | 公开(公告)日: | 2019-07-12 |
发明(设计)人: | 张亚惠 | 申请(专利权)人: | 杭州数梦工场科技有限公司 |
主分类号: | G06F16/182 | 分类号: | G06F16/182;G06F16/31 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310024 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 分布式 文件系统 文件 存储 方法 装置 | ||
本申请提供一种基于分布式文件系统的小文件存储方法及装置,所述方法包括:为存在关联性的待存储小文件分配唯一对应的数据分表;所述数据分表为预设的逻辑二维表,包括由预设大小的逻辑存储单元构成的若干逻辑行和逻辑列;所述待存储文件包括文件类型和大小均不相同的批量小文件;将所述待存储小文件中存在关联性的小文件分别存储至所述数据分表中的同一逻辑行或者同一逻辑列;针对所述存在关联性的小文件分别生成唯一对应的文件索引,并将该文件索引保存至对应的逻辑行或者逻辑列中。本申请可以显著降低分布式文件系统的文件存储压力。
技术领域
本申请涉及通信领域,尤其涉及一种基于分布式文件系统的小文件存储方法及装置。
背景技术
随着信息技术的发展,面临的数据处理需求将越来越复杂,而且非结构化数据的比例也会越来越高。所谓结构化数据,是指可以按照特定格式进行整理的数据,更符合传统数据处理的需求;比如更符合关系型数据库的处理需求。而非结构化数据是指没有特定格式或者结构的数据;比如无特定格式的纯文本,图像,视频等数据。
在实际生产环境中,数据来源和类型可能会非常复杂,在进行数据处理的过程中,实际处理的数据中可能会包含大量的非结构化数据,甚至这些非结构化数据可能都是不同大小甚至包含各种不同格式的数据,因此在针对这些非结构化数据进行处理时,大量的小文件意味着将要面对海量的文件处理对象,当处理的小文件达到一定的数量后(比如数以亿计),可能会由于消耗大量的内存导致数据处理系统崩溃。
发明内容
本申请提出一种基于分布式文件系统的小文件存储方法,该方法包括:
为存在关联性的待存储小文件分配唯一对应的数据分表;所述数据分表为预设的逻辑二维表,包括由预设大小的逻辑存储单元构成的若干逻辑行和逻辑列;所述待存储文件包括文件类型和大小均不相同的批量小文件;
将所述待存储小文件中存在关联性的小文件分别存储至所述数据分表中的同一逻辑行或者同一逻辑列;
针对所述存在关联性的小文件分别生成唯一对应的文件索引,并将该文件索引保存至对应的逻辑行或者逻辑列中。
可选的,所述为存在关联性的待存储小文件分配唯一对应的数据分表包括:
基于表征所述待存储小文件的关联性的信息生成唯一对应的查询索引;
为生成的所述查询索引分配对应的数据分表,并建立所述查询索引与所述数据分表之间的映射关系。
可选的,所述将所述待存储小文件中存在关联性的小文件分别存储至所述数据分表中的同一逻辑行或者同一逻辑列包括:
依次读取所述待存储小文件中存在关联性的小文件;
在所述数据分表中为所述待存储小文件中存在关联性的小文件分别指定逻辑行或者逻辑列;
基于所述逻辑行或者逻辑列的逻辑存储地址将所述存在关联性的小文件分别存储至指定的同一逻辑行或者同一逻辑列中。
可选的,所述基于所述逻辑行或者逻辑列的逻辑存储地址将所述存在关联性的小文件存储至指定的同一逻辑行或者同一逻辑列中包括:
从所述存在关联性的小文件中依次读取目标小文件;
判断读取到的所述目标小文件的大小是否大于所述逻辑存储单元的大小;
当读取到的所述目标小文件的大小小于或者等于所述逻辑存储单元的大小时,基于所述逻辑行或者逻辑列的逻辑存储地址将所述目标小文件的文件内容存储至同一逻辑行或者同一逻辑列中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州数梦工场科技有限公司,未经杭州数梦工场科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610082148.3/2.html,转载请声明来源钻瓜专利网。