一种压缩数据的方法及终端技术

技术编号:16923257 阅读:54 留言:0更新日期:2017-12-31 17:14
本发明专利技术涉及数据处理领域,尤其涉及一种压缩数据的方法及终端。本发明专利技术通过S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。实现在实时发送小数据包的过程中提高小数据包的压缩效率。

【技术实现步骤摘要】
一种压缩数据的方法及终端
本专利技术涉及数据处理领域,尤其涉及一种压缩数据的方法及终端。
技术介绍
发送端和接收端使用TCP或UDP通讯过程中,传输实时数据通常不压缩数据或对每一个数据包进行压缩传输。采用不压缩数据的方式传输效率低。采用对每一个数据包进行压缩传输时,压缩算法会在压缩每一个数据包的过程中生成与该数据包对应的数据字典,以便接收端根据数据字典解码压缩后的数据包。但当数据包较小(几字节到几百字节)时,这些每次即时生成的数据字典作用不大,压缩率低,压缩效果不理想。例如,当前待压缩的数据为“hiabcdefghi”,其中只有“hi”可被压缩。而常见的游戏数据同步、文档实时协同、远程协助等应用,都需要实时传输很多小数据或指令,由于现有的数据压缩技术压缩小数据包的压缩率低,导致在实时传输小数据包的过程中传输效率低,带宽和流量的占用较大。
技术实现思路
本专利技术所要解决的技术问题是:如何提高小数据包的压缩效率。为了解决上述技术问题,本专利技术采用的技术方案为:本专利技术提供一种压缩数据的方法,包括以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。本专利技术还提供一种压缩数据的终端,包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。本专利技术的有益效果在于:本专利技术使用预设的压缩算法压缩小数据包后,还根据之前压缩的小数据包的数据字典进一步执行压缩操作,使得单个小数据包内不重复但是多个小数据包之间有重复的数据也能够被有效压缩,从而提高小数据包的压缩率。随着小数据包压缩次数的增加,共享数据字典随之增大,压缩效果越显著。本专利技术提供的压缩数据的方法及终端有效节约了使用TCP或UDP传输有大量实时小数据或指令的应用(如游戏实时数据、文档实时协作、远程协助等)运行时产生的服务端带宽占用和客户端流量费用,提高网络传输速度、效率和用户体验,解决了服务端带宽拥堵和带宽成本高的问题,提高相同带宽可支持的用户量。附图说明图1为本专利技术提供的一种压缩数据的方法的具体实施方式的流程框图;图2为本专利技术提供的一种压缩数据的终端的具体实施方式的结构框图;标号说明:1、处理器;2、存储器。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。请参照图1以及图2,如图1所示,本专利技术提供一种压缩数据的方法,包括以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。进一步地,所述S4具体为:获取与所述中间数据对应的数据字典,得到中间数据字典;获取所述中间数据字典中存在,且所述共享数据字典中不存在的数据,得到增量数据;添加所述增量数据至所述共享数据字典。由上述描述可知,有利于减小共享数据字典的冗余,提高解码效率。进一步地,还包括:与接收端建立通讯连接;实时发送所述最终数据和所述增量数据至接收端。由上述描述可知,增量发送接收端用于解压缩数据的数据字典,有利于节省传输带宽和流量。进一步地,所述S5具体为:重复步骤S2至步骤S4,直至预设时间间隔内不存在待压缩的初始数据。由上述描述可知,对于实时生成的数据需给予一定的等待时间。进一步地,所述S1之后,还包括:初始化所述共享数据字典为空集。进一步地,所述S1之后,还包括:获取待压缩的初始数据的唯一标识符;获取与所述唯一标识符对应的历史数据字典;根据所述历史数据字典初始化所述共享数据字典。由上述描述可知,在初次压缩小数据包时使用历史数据字典初始化共享数据字典可有效提高前几次的小数据包压缩效率。如图2所示,本专利技术还提供一种压缩数据的终端,包括一个或多个处理器及存储器2,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。进一步地,所述S4具体为:获取与所述中间数据对应的数据字典,得到中间数据字典;获取所述中间数据字典中存在,且所述共享数据字典中不存在的数据,得到增量数据;添加所述增量数据至所述共享数据字典。进一步地,还包括:与接收端建立通讯连接;实时发送所述最终数据和所述增量数据至接收端。进一步地,所述S5具体为:重复步骤S2至步骤S4,直至预设时间间隔内不存在待压缩的初始数据。进一步地,所述S1之后,还包括:初始化所述共享数据字典为空集。进一步地,所述S1之后,还包括:获取待压缩的初始数据的唯一标识符;获取与所述唯一标识符对应的历史数据字典;根据所述历史数据字典初始化所述共享数据字典。本专利技术的实施例一为:本实施例提供一种压缩数据的方法,包括以下步骤:S1、与接收端建立通讯连接。S2、预设共享数据字典。S3、初始化所述共享数据字典;可选地,可采用以下两种方式初始化所述共享数据字典;第一方式,初始化所述共享数据字典为空集。第二方式,获取待压缩的初始数据的唯一标识符;获取与所述唯一标识符对应的历史数据字典;根据所述历史数据字典初始化所述共享数据字典;可选地,所述唯一标识符用于标识初始数据来源于哪一个应用程序,根据该应用程序在之前实时发送数据过程中积累的历史数据字典作为本次实时发送数据过程的初始共享数据字典,极大程度上提高了前几个小数据包的压缩效率。例如,根据待压缩的初始数据的唯一标识符获取一历史数据字典,包括:字典“1”对应值“ab”,字典“2”对应值“ef”。S4、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;例如,初始数据为efabcdecd,根据预设的压缩算法LZO压缩所述初始数据,得到中间数据efab3e3,与中间数据对应的数据字典为:字典“3”对应“cd”。S5、根据所述共享数据字典压缩所述中间数据,得到最终数据;例如,使用现有的压缩算法已无法再进一步压缩中间数据efab3e3,而根据共享数据字典,可进一步压缩得到最终数据213e3,提高了小数据包的压缩效率;同理,即使在初始化阶段将共享数据字典设置为空集,随着实时发送小数据包次数的增加,共享数据字典中字典与字符串的匹配项越来越多,后续发送的小数据包的压缩率越来越高。S6、根据与所述中间数据对应的数据字典更新所本文档来自技高网
...
一种压缩数据的方法及终端

【技术保护点】
一种压缩数据的方法,其特征在于,包括以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。

【技术特征摘要】
1.一种压缩数据的方法,其特征在于,包括以下步骤:S1、预设共享数据字典;S2、根据预设的压缩算法压缩初始数据,得到中间数据和与所述中间数据对应的数据字典;S3、根据所述共享数据字典压缩所述中间数据,得到最终数据;S4、根据与所述中间数据对应的数据字典更新所述共享数据字典;S5、重复步骤S2至步骤S4,直至不存在待压缩的初始数据。2.根据权利要求1所述的压缩数据的方法,其特征在于,所述S4具体为:获取与所述中间数据对应的数据字典,得到中间数据字典;获取所述中间数据字典中存在,且所述共享数据字典中不存在的数据,得到增量数据;添加所述增量数据至所述共享数据字典。3.根据权利要求2所述的压缩数据的方法,其特征在于,还包括:与接收端建立通讯连接;实时发送所述最终数据和所述增量数据至接收端。4.根据权利要求1所述的压缩数据的方法,其特征在于,所述S5具体为:重复步骤S2至步骤S4,直至预设时间间隔内不存在待压缩的初始数据。5.根据权利要求1所述的压缩数据的方法,其特征在于,所述S1之后,还包括:初始化所述共享数据字典为空集。6.根据权利要求1所述的压缩数据的方法,其特征在于,所述S1之后,还包括:获取待压缩的初始数据的唯一标识符;获取与所述唯一标识符对应的历史数据字典根据所述历史数据字典初始化所述共享数据字典。7.一种压缩数据的终端,其特征在于,包括一个或...

【专利技术属性】
技术研发人员:刘德建陈祥方振华郭玉湖
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:福建,35

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

1