[发明专利]一种数据压缩、解压缩方法、装置、电子设备及存储介质在审
申请号: | 201910320309.1 | 申请日: | 2019-04-19 |
公开(公告)号: | CN111835686A | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 王希斌;刘涛;樊宇;尹飞云 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;G06F9/54 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据压缩 解压缩 方法 装置 电子设备 存储 介质 | ||
本发明实施例公开了一种数据压缩、解压缩方法、装置、电子设备及存储介质。所述压缩方法包括:发送端设备按照预先确定的消息体大小在当前数据流中获取当前原始消息体;根据所述当前原始消息体对应的压缩算法,生成所述当前原始消息体对应的当前传输消息体;其中,所述当前传输消息体包括:所述当前传输消息体的头部和所述当前传输消息体的内容;通过预先设置的消息队列将所述当前传输消息体发送至接收端设备。可以有效地提升数据压缩效果,通用性更强。
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种数据压缩、解压缩方法、装置、电子设备及存储介质。
背景技术
在需要对大量数据进行处理的系统中,往往需要对大批量的数据进行存储和传输,数据量越大,存储和传输这些数据所占用的存储空间、计算资源以及运行时间也就越多,对数据量大、并发量高的系统而言,存储和传输大批量数据可能会降低系统性能。为了减少存储和传输大批量数据对系统性能的影响,常用的方式是,通过压缩数据来减少存储、传输的数据量以提高数据库的读写性能以及数据的传输性能。
在现有的数据压缩方法中,发送端设备先按照预先确定的消息体大小在当前数据流中获取当前原始消息体;然后将当前原始消息体发送至消息队列;该消息队列将当前原始消息体压缩为当前传输消息体后发送至接收端设备;在现有的数据解压缩方法中,接收端设备先接收消息队列压缩后的当前传输消息体,然后将当前传输消息体解压缩为当前原始消息体。
在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:
在现有的数据压缩方法中,消息队列通常根据通用的压缩算法对当前原始消息体进行压缩;在现有的数据解压缩方法中,接收端设备通常根据通用的解压缩算法对当前传输消息体进解压缩;压缩和解压缩效果都不理想;而且大部分的消息队列不支持数据压缩,应用范围比较有限。
发明内容
有鉴于此,本发明实施例提供一种数据压缩、解压缩方法、装置、电子设备及存储介质,可以有效地提升数据压缩效果,通用性更强。
第一方面,本发明实施例提供了一种数据压缩方法,应用于发送端设备,所述方法包括:
按照预先确定的消息体大小在当前数据流中获取当前原始消息体;
根据所述当前原始消息体对应的压缩算法,生成所述当前原始消息体对应的当前传输消息体;其中,所述当前传输消息体包括:所述当前传输消息体的头部和所述当前传输消息体的内容;
通过预先设置的消息队列将所述当前传输消息体发送至接收端设备。
在上述实施例中,所述根据所述当前原始消息体对应的压缩算法,生成所述当前原始消息体对应的当前传输消息体,包括:
根据所述当前原始消息体的数据类型,确定所述当前原始消息体对应的压缩算法;并将所述压缩算法的标识封装在所述当前传输消息体的头部中;
根据所述当前原始消息体对应的压缩算法,将所述当前原始消息体压缩为当前目标消息体;并将所述当前目标消息体封装在所述当前传输消息体的内容中。
在上述实施例中,所述方法还包括:
根据预先确定的计算方法计算所述当前目标消息体的大小和所述当前目标消息体的签名;
将所述当前目标消息体的大小和所述当前目标消息体的签名封装到所述当前传输消息体的头部中。
第二方面,本发明实施例还提供了一种数据解压缩方法,应用于接收端设备,所述方法包括:
通过预先设置的消息队列接收发送端设备发送的当前传输消息体;
根据所述当前传输消息体获取当前目标消息体和所述当前目标消息体对应的解压缩算法;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910320309.1/2.html,转载请声明来源钻瓜专利网。