当前位置: 首页 > 专利查询>重庆大学专利>正文

一种文件系统自适应压缩方法及系统技术方案

技术编号:38463088 阅读:8 留言:0更新日期:2023-08-11 14:40
本发明专利技术涉及文件系统文件压缩技术领域,具体公开了一种文件系统自适应压缩方法及系统,包括步骤:获取待压缩文件组,并设置将所述待压缩文件组进行压缩并写入到磁盘所允许的最大时延T;以最大时延T为约束,以最大化减少存储容量为优化目标,为待压缩文件组中的每个文件选择最合适的压缩算法;将待压缩文件组中的每个文件按照选择的压缩算法进行压缩并通过文件系统写入磁盘。本发明专利技术可根据不同的时延要求选择最节省存储空间的压缩算法;通过预测技术在不实际压缩文件的情况下获取压缩算法对文件的压缩时间和压缩率,降低了传统压缩算法选择的时间开销。选择的时间开销。选择的时间开销。

【技术实现步骤摘要】
一种文件系统自适应压缩方法及系统


[0001]本专利技术涉及文件系统文件压缩
,尤其涉及一种文件系统自适应压缩方法及压缩系统。

技术介绍

[0002]随着互联网技术的不断进步,应用程序对网络带宽和存储容量的需求不断增加,尤其是在大数据传输方面。为了应对这一挑战,新的技术不断涌现,其中之一就是数据压缩技术。数据压缩技术通过消除大量数据集中的冗余信息,从而节省存储空间并提高传输效率。这种技术的发展使得更多的数据能够在有限的带宽下传输,并且占用更少的存储空间。
[0003]压缩算法主要分为两种类型:有损压缩和无损压缩。有损压缩通过去除人类难以察觉的信息来减小数据量,主要应用于多媒体文件等不需要完全保留原始数据的文件压缩。相比之下,无损压缩则保证了数据完整性,但压缩效率更低且复杂度更高。在最小化信息不能丢失的情况下,通常采用无损压缩,例如在文本文件中。压缩算法的性能通常通过压缩速度、解压速度和压缩率来评估。现有的压缩算法在设计时往往侧重不同的性能因素。例如,LZO和LZ4注重压缩和解压速度,而GZip和Zlib则更注重压缩率,这导致它们在不同的数据类型和应用场景中具有不同的优缺点。
[0004]由于不同的数据格式和工作负载具有不同的特征,单一的压缩算法并不能有效地处理所有数据和场景的压缩需求。因此,为了最大化压缩收益,需要在不同的工作负载下选择适合的压缩算法。然而,如果压缩算法的选择由人工决策,那么在数据变化频繁的情况下,人工决策通常不够快速和准确。为了解决这一问题,自适应压缩系统应运而生。自适应压缩系统利用计算机高速的分析和决策能力,根据数据的特征和工作负载的需求,动态地选择最适合的压缩算法,从而节省时间、空间和能源等资源。自适应压缩系统的核心在于开发动态选择压缩算法的机制,以实现高效的压缩和解压缩过程。通过自适应压缩系统,可以在不同的情境下灵活地选择最佳的压缩算法,从而在不同的数据场景中获得更好的性能和效果。
[0005]目前,一些文件系统如Cramfs、EROFS、ZFS等已经支持文件的透明压缩,并且通常支持多种压缩算法。在这些文件系统中,用户需要手动配置压缩算法来进行文件的压缩。然而,也有一些文件系统引入了自适应压缩的概念,通过自动选择不同的压缩算法来优化存储和性能。例如,中国科学院大学的研究人员提出了基于预测的自适应压缩模型(PACM),该模型根据不同的数据格式和工作负载使用不同的压缩算法,从而提高存储系统的性能。这一模型已经被应用于分布式文件系统HDFS中,以提高数据传输吞吐量。另外,明尼苏达大学的研究人员提出了一种自适应压缩(AC)系统,该系统根据可用的压缩算法列表结合CPU使用情况、磁盘带宽以及当前写队列长度等信息来选择压缩算法。同时,该系统还使用“字节计数”估计压缩率。最终,这一AC系统被集成到ZFS的写入管道中,以减少文件系统的总体写入时间。此外,电子科技大学的研究人员还将一种弹性数据压缩解决方案(EDC)集成到分布式存储的客户端文件系统中。该系统通过检测文件类型、可压缩性和客户端负载等维度计
算文件的压缩指标,并根据该指标判断文件是否需要压缩。如果需要,该系统会在指定的阈值范围内使用高、中、低三个级别的压缩算法,从而在保持高存储效率的同时实现高I/O性能。这些自适应压缩系统的引入,使得文件系统能够根据不同的数据特征和工作负载需求自动选择最合适的压缩算法,从而在提高存储效率的同时优化性能。这为文件系统在不同应用场景下提供了更加灵活和高效的数据压缩解决方案。
[0006]通过研究发现,在AC系统实现中,一个关键的技术是如何预测压缩率。因为为了选择最适合数据的压缩算法,需要了解其在不同压缩算法下的性能表现(通常关注压缩率)。直接压缩数据后再对比性能差异的计算开销过大,因此需要在不实际压缩数据的情况下,了解各种算法在相应文件下的性能表现。目前,在压缩率预测方面已经有一些研究。现有的AC系统通常利用香农熵或者字节计数或者文件扩展名来预测文件压缩率。
[0007]目前,现有的压缩文件系统存在一些不足之处。一方面,一些文件系统不支持自适应压缩,需要用户手动选择压缩算法,不够智能化。而另一方面,一些支持自适应压缩的文件系统主要关注系统吞吐量的优化,适用于数据传输和通信领域,对于计算和存储资源受限的特定应用场景(如边缘计算、物联网、嵌入式)并不适用,需要提出新的解决方案。

技术实现思路

[0008]本专利技术提供一种文件系统自适应压缩方法及系统,解决的技术问题在于:如何在一定时间约束下以最大化减少存储容量为优化目标,为各文件选择最合适的压缩算法并进行压缩。
[0009]为解决以上技术问题,本专利技术提供一种文件系统自适应压缩方法,包括步骤:
[0010]S1、获取待压缩文件组,并设置将所述待压缩文件组进行压缩并写入到磁盘所允许的最大时延T;
[0011]S2、以所述最大时延T为约束,以最大化减少存储容量为优化目标,为所述待压缩文件组中的每个文件选择最合适的压缩算法;
[0012]S3、将所述待压缩文件组中的每个文件按照步骤S2中选择的压缩算法进行压缩并通过文件系统写入磁盘。
[0013]进一步地,在所述步骤S2中,通过构建优化问题并对所述优化问题进行求解以为所述待压缩文件组中的每个文件选择最合适的压缩算法;
[0014]所述优化问题构建为:
[0015][0016][0017][0018]其中,a
ij
表示状态函数,如果文件i采用第j种压缩算法压缩,则a
ij
=1,否则a
ij
=0;表示文件i采用第j种压缩算法的预估延时,由基于机器学学习的压缩时间预测模
型预测得到;表示文件i采用第j种压缩算法后写入存储介质的预估延时,根据磁盘写入速度和压缩后文件大小计算得到;S
i,j
表示文件i采用第j种压缩算法后的大小,S
i,j
根据预测的压缩率和文件原始大小计算得到,其中预测的压缩率由压缩率预测模型预测得到;i∈F,F表示所述待压缩文件组中n个文件的集合;j∈A,A表示m种压缩算法的集合。
[0019]进一步地,所述步骤S2具体包括步骤:
[0020]S21、选择所述待压缩文件组中的一个文件;
[0021]S22、利用压缩率预测模型,对压缩库中每种压缩算法对该文件进行压缩时的压缩率进行预测;
[0022]S23、使用压缩时间预测模型,对压缩库中每种压缩算法在对文件进行压缩时所需的时间即进行预测;
[0023]S24、通过步骤S22中预测的压缩率和文件原始大小计算压缩后文件大小即S
i
,j;
[0024]S25、利用iostat系统调用获取当前磁盘写入速度;
[0025]S26、利用磁盘写入速度和压缩后文件大小S
i,j
计算磁盘写入时间即
[0026]S27、对待压缩文件组中所有文件重复步骤S21~S26,得到每个文件在不同压缩算法下的压缩时间、磁盘写入时间本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件系统自适应压缩方法,其特征在于,包括步骤:S1、获取待压缩文件组,并设置将所述待压缩文件组进行压缩并写入到磁盘所允许的最大时延T;S2、以所述最大时延T为约束,以最大化减少存储容量为优化目标,为所述待压缩文件组中的每个文件选择最合适的压缩算法;S3、将所述待压缩文件组中的每个文件按照步骤S2中选择的压缩算法进行压缩并通过文件系统写入磁盘。2.根据权利要求1所述的一种文件系统自适应压缩方法,其特征在于,在所述步骤S2中,通过构建优化问题并对所述优化问题进行求解以为所述待压缩文件组中的每个文件选择最合适的压缩算法;所述优化问题构建为:所述优化问题构建为:所述优化问题构建为:其中,a
ij
表示状态函数,如果文件i采用第j种压缩算法压缩,则a
ij
=1,否则a
ij
=0;表示文件i采用第j种压缩算法的预估延时,由基于机器学习的压缩时间预测模型预测得到;表示文件i采用第j种压缩算法后写入存储介质的预估延时,根据磁盘写入速度和压缩后文件大小计算得到;S
i,j
表示文件i采用第j种压缩算法后的大小,S
i,j
根据预测的压缩率和文件原始大小计算得到,其中预测的压缩率由压缩率预测模型预测得到;i∈F,F表示所述待压缩文件组中n个文件的集合;j∈A,A表示m种压缩算法的集合。3.根据权利要求2所述的一种文件系统自适应压缩方法,其特征在于,所述步骤S2具体包括步骤:S21、选择所述待压缩文件组中的一个文件;S22、利用压缩率预测模型,对压缩库中每种压缩算法对该文件进行压缩时的压缩率进行预测;S23、使用压缩时间预测模型,对压缩库中每种压缩算法在对文件进行压缩时所需的时间即进行预测;S24、通过步骤S22中预测的压缩率和文件原始大小计算压缩后文件大小即S
i
,j;S25、利用iostat系统调用获取当前磁盘写入速度;S26、利用磁盘写入速度和压缩后文件大小S
i,j
计算磁盘写入时间即S27、对待压缩文件组中所有文件重复步骤S21~S26,得到每个文件在不同压缩算法下
的压缩时间、磁盘写入时间、压缩后文件大小;S28、计算所有文件在所有压缩算法选择组合下的时延以及对应的压缩后总文件大小S29、对所述优化问题进行求解,得到满足总时延小于等于T,且压缩后总文件大小最小的压缩算法组合。4.根据权利要求3所述的一种文件系统自适应压缩方法,其特征在于:在所述步骤S22中,所述压缩率预测模型根据输入文件的文件类型、文件大小、香农熵、数据对随机分布距离、压缩算法预测出该文件的压缩率,所述数据对随机分布距离由下式计算:其中,coreset为组成大部分数据的独特符号集,a、b分别为coreset中两个不同的符号,size of sample表示core...

【专利技术属性】
技术研发人员:陈咸彰陈进刘铎谭玉娟任骜
申请(专利权)人:重庆大学
类型:发明
国别省市:

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

1