文件存储方法和装置的制造方法
【技术领域】
[0001]本公开涉及通信领域,尤其涉及文件存储方法和装置。
【背景技术】
[0002]存储设备在存储文件时,在存储文件的同时,通常也会将该文件的大小等信息作为索引数据在磁盘中指定的索引区进行存储,当读取该文件时,首先从索引区读取该文件的大小等信息,再根据该文件的大小信息从磁盘中读取对应的文件。然而,由于在索引区存储文件的大小等信息需要占用一定的存储空间,因此当存储设备在进行大批量文件的存储时,索引区占用的存储空间将会剧增。
【发明内容】
[0003]为克服相关技术中存在的问题,本公开提供一种文件存储方法和装置。
[0004]根据本公开实施例的第一方面,提供一种文件存储方法,所述方法包括:
[0005]获取目标文件的文件大小;
[0006]判断所述目标文件的文件大小是否落入预设区间;其中所述预设区间被预先设置了对应的大小偏移量;
[0007]当所述目标文件的大小落入所述预设区间时,将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储。
[0008]可选的,所述方法还包括:
[0009]遍历目标文件集以获取所述目标文件集中各目标文件的大小;
[0010]根据预设算法对所述目标文件集中各目标文件的大小进行统计分析以得到表征所述目标文件集中各目标文件的大小分布规律的大小分布特征;
[0011]基于所述各目标文件的大小分布特征创建所述预设区间,并为所述预设区间设置对应的大小偏移量。
[0012]可选的,所述各目标文件的大小分布特征包括统计分析出的若干文件大小分布区间,以及落入所述若干文件大小分布区间中目标文件的数量;
[0013]所述基于所述各目标文件的大小分布特征创建所述大小分布区间包括:
[0014]分别计算所述若干文件大小分布区间中目标文件的数量占所述目标文件集中目标文件总数量的比值;
[0015]将计算出的所述比值与预设阈值进行比较;
[0016]当所述若干文件大小分布区间中任一文件大小分布区间中目标文件的数量占所述目标文件集中目标文件总数量的比值达到所述预设阈值时,将该文件大小分布区间设置为所述预设区间。
[0017]可选的,所述为所述预设区间设置对应的大小偏移量包括:
[0018]将所述预设区间的起始值设置为该预设区间的大小偏移量。
[0019]可选的,所述方法还包括:
[0020]当接收到所述目标文件的读取请求时,读取所述目标文件的索引数据;
[0021]基于所述索引数据中存储的所述目标文件的文件大小与所述大小偏移量的和作为所述目标文件的实际文件大小进行数据读取。
[0022]根据本公开实施例的第二方面,提供一种文件存储装置,所述装置包括:
[0023]获取模块,被配置为获取目标文件的文件大小;
[0024]判断模块,被配置为判断所述目标文件的文件大小是否落入预设区间;其中所述预设区间被预先设置了对应的大小偏移量;
[0025]存储模块,被配置为在所述目标文件的大小落入所述预设区间时,将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储。
[0026]可选的,所述装置还包括:
[0027]遍历模块,被配置为遍历目标文件集以获取所述目标文件集中各目标文件的大小;
[0028]分析模块,被配置为根据预设算法对所述目标文件集中各目标文件的大小进行统计分析以得到表征所述目标文件集中各目标文件的大小分布规律的大小分布特征;
[0029]创建模块,被配置为基于所述各目标文件的大小分布特征创建所述预设区间,并为所述预设区间设置对应的大小偏移量。
[0030]可选的,所述各目标文件的大小分布特征包括统计分析出的若干文件大小分布区间,以及落入所述若干文件大小分布区间中目标文件的数量;
[0031]所述创建模块包括:
[0032]计算子模块,被配置为分别计算所述若干文件大小分布区间中目标文件的数量占所述目标文件集中目标文件总数量的比值;
[0033]比较子模块,被配置为将计算出的所述比值与预设阈值进行比较;
[0034]第一设置子模块,被配置为在所述若干文件大小分布区间中任一文件大小分布区间中目标文件的数量占所述目标文件集中目标文件总数量的比值达到所述预设阈值时,将该文件大小分布区间设置为所述预设区间。
[0035]可选的,所述创建模块还包括:
[0036]第二设置子模块,被配置为将所述预设区间的起始值设置为该预设区间的大小偏移量。
[0037]可选的,所述装置还包括:
[0038]第一读取模块,配置为在接收到所述目标文件的读取请求时,读取所述目标文件的索引数据;
[0039]第二读取模块,被配置为基于所述索引数据中存储的所述目标文件的文件大小与所述大小偏移量的和作为所述目标文件的实际文件大小进行数据读取。
[0040]根据本公开实施例的第三方面,提供一种文件存储装置,包括:
[0041]处理器;
[0042]用于存储处理器可执行指令的存储器;
[0043]其中,所述处理器被配置为:
[0044]获取目标文件的文件大小;
[0045]判断所述目标文件的文件大小是否落入预设区间;其中所述预设区间被预先设置了对应的大小偏移量;
[0046]当所述目标文件的大小落入所述预设区间时,将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储。
[0047]本公开的实施例提供的技术方案可以包括以下有益效果:
[0048]本公开的以上实施例中,通过获取目标文件的文件大小,并判断所述目标文件的文件大小是否落入预设区间,其中所述预设区间被预先设置了对应的大小偏移量;当所述目标文件的大小落入所述预设区间时,则将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储,从而可以有效的减少目标文件的索引数据的大小,节省索引数据占用磁盘的存储空间。
[0049]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
【附图说明】
[0050]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0051]图1是根据一示例性实施例示出的一种文件存储方法的流程示意图;
[0052]图2是根据一示例性实施例示出的另一种文件存储方法的流程示意图;
[0053]图3是根据一示例性实施例示出的一种文件存储装置的示意框图;
[0054]图4是根据一示例性实施例示出的另一种文件存储装置的示意框图;
[0055]图5是根据一示例性实施例示出的另一种文件存储装置的示意框图;
[0056]图6是根据一示例性实施例示出的另一种文件存储装置的示意框图;
[0057]图7是根据一示例性实施例示出的另一种文件存储装置的示意框图;
[0058]图8是根据一示例性实施例示出的一种用于所述文件存储装置的一结构示意图;
[0059]图9是根据一示例性实施例示出的另一种用于所述文件存储装置的一结构示意图。
【具体实施方式】
[0060]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0061]在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0062]应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0063]本公开提出一种文件存储方法,通过获取目标文件的文件大小,并判断所述目标文件的文件大小是否落入预设区间,其中所述预设区间被预先设置了对应的大小偏移量;当所述目标文件的大小落入所述预设区间时,则将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储,从而可以有效的减少目标文件的索引数据的大小,节省索引数据占用磁盘的存储空间。
[0064]如图1所示,图1是根据一示例性实施例示出的一种文件存储方法,应用于存储设备,包括以下步骤:
[0065]在步骤101中,获取目标文件的文件大小;
[0066]在步骤102中,判断所述目标文件的文件大小是否落入预设区间;其中所述预设区间被预先设置了对应的大小偏移量;
[0067]在步骤103中,当所述目标文件的大小落入所述预设区间时,将所述目标文件的大小与所述大小偏移量的差值作为所述目标文件的索引数据进行存储。
[0068]上述存储设备可以包括存储服务器、移动终端、PC终端或者其它具有文件存储功能的设备。
[0069]存储设备的文件系统在进行文件存储时,通常会在设备的存储空间中规划数据区和索引区,数据区用于存储目标文件,而索引区用于存储目标文件的索引数据。索引数据通常是用来提高目标文件查询效率的辅助