本发明专利技术提供一种数据压缩方法、数据解压方法、电子设备及存储介质,涉及但不限于数据传输技术领域,其中数据压缩方法中通过设置压缩参数后,调用API接口获取用户数据,并对获取的用户数据进行数据特征判断,根据判断进行分片压缩,生成若干个分片压缩数据后,将分片压缩数据打包成组包数据进行数据传输,解决现有压缩数据传输方法在高带宽通道下传输速率低导致速率低和延迟高的的问题,实现了在高带宽通道下低延迟和高速率的数据传输。
【技术实现步骤摘要】
数据压缩方法、数据解压方法、电子设备及存储介质
本专利技术涉及数据传输
,尤其是涉及一种数据压缩方法、数据解压方法、电子设备及存储介质。
技术介绍
随着网络技术的高速发展,网络系统越来越庞大,用户在基于消息中间件在端对端进行通道数据传输时,会对数据进行压缩以便进行数据传输,而影响数据的传输速率的则是带宽大小,通常情况下带宽越高,数据传输速率越高,但是,在高带宽情况下,数据传输的速率反而降低了,在现有的压缩数据传输系统中,并没有能够解决在高带宽通道下数据传输速率降低导致速率低和延迟高的问题,因此需要提供一种能够提高在高带宽通道下数据传输速率的方法。
技术实现思路
本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,本专利技术提出一种数据压缩方法,能够解决现有压缩数据传输方法在高带宽通道下传输速率低的问题,实现了在高带宽通道下低延迟和高速率的数据传输。对应于数据压缩方法,本专利技术还提出一种数据解压方法。对应于数据压缩方法和数据解压方法,本专利技术还提出一种电子设备。对应于数据压缩方法和数据解压方法,本专利技术还提出一种计算机可读存储介质。第一方面,本专利技术采用的技术方案为一种数据压缩方法,包括:设置压缩参数;获取用户数据,并对判断所述用户数据进行的数据特征判断是否符合压缩条件;若所述数据特征判断结果符合压缩条件,则进行分片压缩,生成若干个分片压缩数据;将所述分片压缩数据打包成组包数据进行数据传输。进一步地,还包括:所述根据计算机运行环境设置压缩参数;所述计算机运行环境包括:操作系统位数、计算机L1缓存、传输通道类型、处理器核数;所述压缩参数包括:压缩字典大小、读写字长、可压缩长度区间、分片个数、可压缩比值。进一步地,所述数据特征包括:数据长度特征和数据稀疏特征;所述压缩条件包括:所述数据长度特征在所述可压缩长度区间内并且所述数据稀疏特征大于所述可压缩比值。进一步地,所述进行分片压缩,包括:根据所述分片个数切割所述用户数据生成若干个分片数据后,根据所述压缩参数对所述分片数据进行压缩生成分片压缩数据,所述分片压缩数据包括压缩包头。进一步地,所述组包数据包括组包包头,通过识别所述组包包头对所述组包数据进行解压,所述组包包头包括:解压标识、压缩分片个数、用户数据字节数和压缩数据字节数。进一步地,若不符合压缩条件,则将所述用户数据打包成组包数据进行数据传输。第二方面,本专利技术采用的技术方案为一种数据解压方法,包括:接收如第一方面所述的数据压缩方法压缩得到的组包数据;识别所述组包数据中组包包头的解压标识,所述解压标识用于判断是否符合解压条件;根据所述组包包头对所述组包数据进行解压重组生成解压数据,并进行解包生成用户数据并上传。进一步地,若不符合解压条件则对所述组包数据进行解包生成用户数据。第三方面,本专利技术采用的技术方案为一种电子设备,包括至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的数据压缩方法和第二方面所述的数据解压方法。第四方面,本专利技术采用的技术方案为一种计算机可读存储介质,包括所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行第一方面所述的数据压缩方法和第二方面所述的数据解压方法。本专利技术的有益效果是:本专利技术提供一种数据压缩方法、数据解压方法、电子设备及存储介质,其中一种数据压缩方法中通过设置压缩参数后,调用API接口获取用户数据,并对获取的用户数据进行数据特征判断,根据判断结果进行分片压缩,生成若干个分片压缩数据后,将分片压缩数据打包成组包数据进行数据传输,解决现有压缩数据传输方法在高带宽通道下传输速率低导致速率低和延迟高的的问题,实现了在高带宽通道下低延迟和高速率的数据传输。附图说明图1是本专利技术实施例中数据压缩方法中第一具体实施例流程示意图;图2是本专利技术实施例中数据压缩方法中第二具体实施例流程示意图;图3是本专利技术实施例中数据压缩方法中第三具体实施例流程示意图;图4是本专利技术实施例中数据压缩方法中第四具体实施例流程示意图;图5是本专利技术实施例中数据解压方法中第一具体实施例流程示意图;图6是本专利技术实施例中数据解压方法中第二具体实施例流程示意图;图7是本专利技术实施例中的数据压缩方法与数据解压方法的一具体应用示例。具体实施方式以下将结合实施例对本专利技术的构思及产生的技术效果进行清楚、完整地描述,以充分地理解本专利技术的目的、特征和效果。显然,所描述的实施例只是本专利技术的一部分实施例,而不是全部实施例,基于本专利技术的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本专利技术保护的范围。在本专利技术的描述中,如果涉及到方位描述,例如“上”、“下”、“前”、“后”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。如果某一特征被称为“设置”、“固定”、“连接”、“安装”在另一个特征,它可以直接设置、固定、连接在另一个特征上,也可以间接地设置、固定、连接、安装在另一个特征上。在本专利技术实施例的描述中,如果涉及到“若干”,其含义是一个以上,如果涉及到“多个”,其含义是两个以上,如果涉及到“大于”、“小于”、“超过”,均应理解为不包括本数,如果涉及到“以上”、“以下”、“以内”,均应理解为包括本数。如果涉及到“第一”、“第二”,应当理解为用于区分技术特征,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先v后关系。随着网络技术的高速发展,网络系统越来越庞大,用户在基于消息中间件在端对端进行通道数据传输时,会对数据进行压缩以便传输,而影响数据的传输速率的则是带宽大小,通常情况下带宽越高,数据传输速率越高,但是,在高带宽情况下,数据传输的速率反而降低了,在现有的压缩数据传输系统中,并没有能够解决在高带宽通道下速率降低导致速率低和延迟高的问题。其中,高带宽通道是指高速率的带宽传输通道,例如大于1G*bps直至40G*bps带宽的物理传输通道,具体可以是万兆网、40G光纤等;消息中间件是用于屏蔽底层实现细节、向用户提供特定通信API接口的中间件,消息中间件适用于任何需要进行网络通信的系统,负责建立网络通信的通道,进行数据或文件发送。消息中间件的重要作用之一是可以实现跨平台操作,为不同操作系统上的应用软件集成提供服务。其中压缩数据原理是利用压缩算法将文件进行有损或无损处理,以达到保留最多文件信息,而令文件体积变小。压缩文件的基本原理是查找文件内的重复字节,并建立一个相同字节的“字典”文件,并用一个代码表示,比如在文件里有几处有一个相同的词“本文档来自技高网...
【技术保护点】
1.一种数据压缩方法,其特征在于,应用于消息中间件,包括:/n设置压缩参数;/n获取用户数据,并判断所述用户数据的数据特征是否符合压缩条件;/n若符合压缩条件,则进行分片压缩,生成若干个分片压缩数据;/n将所述分片压缩数据打包成组包数据进行数据传输。/n
【技术特征摘要】
1.一种数据压缩方法,其特征在于,应用于消息中间件,包括:
设置压缩参数;
获取用户数据,并判断所述用户数据的数据特征是否符合压缩条件;
若符合压缩条件,则进行分片压缩,生成若干个分片压缩数据;
将所述分片压缩数据打包成组包数据进行数据传输。
2.根据权利要求1所述的数据压缩方法,其特征在于,还包括:根据计算机运行环境设置压缩参数;
所述计算机运行环境包括:操作系统位数、计算机L1缓存、传输通道类型、处理器核数;
所述压缩参数包括:压缩字典大小、读写字长、可压缩长度区间、分片个数、可压缩比值。
3.根据权利要求2所述的数据压缩方法,其特征在于,所述数据特征包括:数据长度特征和数据稀疏特征;
所述压缩条件包括:所述数据长度特征在所述可压缩长度区间内并且所述数据稀疏特征大于所述可压缩比值。
4.根据权利要求3所述的数据压缩方法,其特征在于,所述进行分片压缩,包括:
根据所述分片个数切割所述用户数据生成若干个分片数据后,根据所述压缩参数对所述分片数据进行压缩生成分片压缩数据,所述分片压缩数据包括压缩包头。
5.根据权利要求1至4任一所述的数据压缩方法,其特征在于,所述组包数据包括组包包头,通过识别所述组包包头对所述组包数据进行解压,所述组包包头包括:解压标识、压缩...
【专利技术属性】
技术研发人员:刘建德,梁宏建,刘洪磊,
申请(专利权)人:深圳市科思科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。