一种存储系统数据压缩方法、系统及设备和存储介质技术方案

技术编号:19820638 阅读:47 留言:0更新日期:2018-12-19 14:17
本申请公开了一种存储系统数据压缩方法、系统及设备和计算机可读存储介质,该方法包括:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。本申请提供的存储系统数据压缩方法利用队列存储未处理压缩请求,在接收到压缩请求时获取实时的队列深度,根据该队列深度确定压缩等级。用户可以根据实际情况设置队列深度与压缩等级的对应关系,最大限度的提高压缩比性能。对于全闪存储产品来说,在保证高性能的基础上获得更高的压缩比,尽可能的提升SSD的使用寿命。

【技术实现步骤摘要】
一种存储系统数据压缩方法、系统及设备和存储介质
本申请涉及存储
,更具体地说,涉及一种存储系统数据压缩方法、系统及设备和一种计算机可读存储介质。
技术介绍
在大数据、云计算的潮流下,数据存储的重要性日益显著。目前,全闪产品是存储系统发展的必然趋势,SSD(中文全称:固态硬盘,英文全称:SolidStateDrives)的容量和密度不断增加的同时,擦写寿命的限制成为其短板,其中,写放大是缩短SSD擦写寿命的主要原因。如何破解写放大成为全闪存储系统厂商的最大挑战。现有技术中减少写放大、提升SSD使用寿命的主要方法为数据压缩。数据压缩的压缩比性能越高,写放大越小,SSD的寿命也就越长。但随着数据中心的建设,对存储系统的吞吐量的要求也越来越高。因此,如何平衡存储系统的压缩比和压缩效率是用户需要解决的问题。
技术实现思路
本申请的目的在于提供一种存储系统数据压缩方法、系统及设备和一种计算机可读存储介质,在保证高压缩速度的基础上获得更高的压缩比。为实现上述目的,本申请提供了一种存储系统数据压缩方法,包括:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。其中,根据所述压缩等级对所述目标压缩请求对应的数据执行压缩操作之后,还包括:将压缩后的数据和所述数据对应的所述压缩等级存储至所述存储系统中。其中,还包括:当接收到解压命令时,获取所述解压命令对应的待解压数据和所述待解压数据对应的压缩等级;根据所述压缩等级确定目标解压方式,并利用所述目标解压方式对所述待解压数据执行解压操作。其中,利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作,包括:根据所述目标压缩方式调用QAT中对应的API对所述数据执行压缩操作;相应的,利用所述目标解压方式对所述待解压数据执行解压操作,包括:根据所述目标解压方式调用QAT中对应的API对所述待解压数据执行解压操作。其中,还包括:为压缩请求创建环形队列;相应的,所述当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度,包括:当接收到目标压缩请求时,将所述目标压缩请求存储至所述环形队列的尾指针中;根据所述环形队列的头指针和尾指针确定所述环形队列的队列深度。其中,通过队列深度计算公式确定所述环形队列的队列深度;其中,所述队列深度计算公式具体为:h=(tail-head+max)%max;其中,h为所述队列深度,tail为所述尾指针,head为所述头指针,max为所述环形队列的最大深度。为实现上述目的,本申请提供了一种存储系统数据压缩系统,包括:获取模块,用于当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;确定模块,用于根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;压缩模块,用于利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。其中,还包括:创建模块,用于为压缩请求创建环形队列;相应的,所述获取模块包括:存储单元,用于当接收到目标压缩请求时,将所述目标压缩请求存储至所述环形队列的尾指针中;获取单元,用于根据所述环形队列的头指针和尾指针确定所述环形队列的队列深度。为实现上述目的,本申请提供了一种存储系统数据压缩设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述存储系统数据压缩方法的步骤。为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述存储系统数据压缩方法的步骤。通过以上方案可知,本申请提供的一种存储系统数据压缩方法,包括:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。本申请提供的存储系统数据压缩方法利用队列存储未处理压缩请求,在接收到压缩请求时获取实时的队列深度,根据该队列深度确定压缩等级。用户可以根据实际情况设置队列深度与压缩等级的对应关系,最大限度的提高压缩比性能。对于全闪存储产品来说,在保证高性能的基础上获得更高的压缩比,尽可能的提升SSD的使用寿命。本申请还公开了一种存储系统数据压缩系统及设备和一种计算机可读存储介质,同样能实现上述技术效果。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例公开的一种存储系统数据压缩方法的流程图;图2为本申请实施例公开的一种存储系统数据解压方法的流程图;图3为本申请实施例公开的一种存储系统数据压缩系统的结构图;图4为本申请实施例公开的一种存储系统数据压缩设备的结构图;图5为本申请实施例公开的另一种存储系统数据压缩设备的结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请实施例公开了一种存储系统数据压缩方法,在保证高压缩速度的基础上获得更高的压缩比。参见图1,本申请实施例公开的一种存储系统数据压缩方法的流程图,如图1所示,包括:S101:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;本实施例提供的存储系统数据压缩方法可以利用intel提供的QATdriver完成驱动模块的编译工作,生成可在通用处理器运行的主机端程序,并进行软件安装工作,在存储系统中增加编程代码(如C语言代码),完成后续步骤,当然,此处不限定具体的编程语言,用户可以根据实际情况灵活选择。本步骤默认存在存储未缓存压缩请求的队列,此处不限定队列的具体形式,即可以为顺序队列,也可以为环形队列,用户可以根据队列的具体形式,选择确定队列深度的方式。作为一种优选实施方式,在本步骤之前,为压缩请求创建环形队列,当接收到目标压缩请求时,将所述目标压缩请求存储至环形队列的尾指针中,根据环形队列的头指针和尾指针确定所述环形队列的队列深度,即通过队列深度计算公式确定所述环形队列的队列深度;其中,所述队列深度计算公式具体为:h=(tail-head+max)%max;其中,h为所述队列深度,tail为所述尾指针,head为所述头指针,max为所述环形队列的最大深度。S102:根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;本步骤默认存在队列深度与压缩等级的对应关系,该对应关系可以以数据表的形式存储于内存中,当然也可以以其他形式存储,在此不作具体限定。用户根据实际情况预先划分压缩等级,此处不对压缩等级的数量进行限定,优选为4个,并为每一压缩等级建立其对应的队列深度阈值。例如,队列深度小于3时,压缩等级为4,队列深度在3-8时,压缩等级为3,队列深度在8-15时,压缩等级为本文档来自技高网...

【技术保护点】
1.一种存储系统数据压缩方法,其特征在于,包括:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。

【技术特征摘要】
1.一种存储系统数据压缩方法,其特征在于,包括:当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度;根据所述队列深度确定压缩等级,并根据所述压缩等级确定目标压缩方式;利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作。2.根据权利要求1所述存储系统数据压缩方法,其特征在于,根据所述压缩等级对所述目标压缩请求对应的数据执行压缩操作之后,还包括:将压缩后的数据和所述数据对应的所述压缩等级存储至所述存储系统中。3.根据权利要求1所述存储系统数据压缩方法,其特征在于,还包括:当接收到解压命令时,获取所述解压命令对应的待解压数据和所述待解压数据对应的压缩等级;根据所述压缩等级确定目标解压方式,并利用所述目标解压方式对所述待解压数据执行解压操作。4.根据权利要求3所述存储系统数据压缩方法,其特征在于,利用所述目标压缩方式对所述目标压缩请求对应的数据执行压缩操作,包括:根据所述目标压缩方式调用QAT中对应的API对所述数据执行压缩操作;相应的,利用所述目标解压方式对所述待解压数据执行解压操作,包括:根据所述目标解压方式调用QAT中对应的API对所述待解压数据执行解压操作。5.根据权利要求1-4任一项所述存储系统数据压缩方法,其特征在于,还包括:为压缩请求创建环形队列;相应的,所述当接收到目标压缩请求时,获取缓存中未处理压缩请求的队列深度,包括:当接收到目标压缩请求时,将所述目标压缩请求存储至所述环形队列的尾指针中;根...

【专利技术属性】
技术研发人员:赵帅孙昊王淑童肖占慧亓浩
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1