[发明专利]一种文件压缩方法及装置有效
申请号: | 201410201459.8 | 申请日: | 2014-05-13 |
公开(公告)号: | CN105095278B | 公开(公告)日: | 2018-09-07 |
发明(设计)人: | 才宇东 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 压缩 方法 装置 | ||
本发明实施例公开了一种文件压缩方法及装置,采用分级压缩技术,有效提高文件的压缩比。本发明实施例方法包括:从源文件中抽取数据,并将所述数据排列成数据矩阵,所述数据矩阵包括行压缩单元;调整所述数据矩阵中的行压缩单元得到被压缩数据矩阵;对所述被压缩数据矩阵的行压缩单元进行一级紧致化,得到紧致化数据块;对所述紧致化数据块进行二级数据压缩,得到目标压缩文件。
技术领域
本发明涉及数据通信领域,具体涉及一种文件压缩方法及装置。
背景技术
当前是互联网极度发达的时代,在互联网中每天都会产生巨大的数据。其中,一些数据需要永久保存,以便之后用来进行数据分析、取证等。由于数据较大,通常在保存时,采取压缩保存的方式。
其中,常用的压缩方法是从源文件中获取数据流,然后将数据流分成多个数据块,对数据块逐个压缩,将压缩后的数据块存储为目标压缩文件。在该压缩方法中,虽然能够提高压缩的速度,但是其压缩比仍是亟待解决的问题。
发明内容
针对上述缺陷,本发明实施例提供了一种文件压缩方法及装置,采用分级压缩技术,有效提高文件的压缩比。
本发明第一方面提供了一种文件压缩方法,可包括:
从源文件中抽取数据,并将所述数据排列成数据矩阵,所述数据矩阵包括行压缩单元;
调整所述数据矩阵中的行压缩单元得到被压缩数据矩阵;
对所述被压缩数据矩阵的行压缩单元进行一级紧致化,得到紧致化数据块;
对所述紧致化数据块进行二级数据压缩,得到目标压缩文件。
结合第一方面,在第一种可能的实现方式中,所述调整所述数据矩阵中的行压缩单元得到被压缩数据矩阵包括:根据所述数据矩阵中行压缩单元的行权值,对所述数据矩阵的行压缩单元进行多种排列;其中,所述行权值根据所述行压缩单元的业务属性分配;计算每一种排列下的数据矩阵的级联值;所述级联值用于指示所述数据矩阵的行压缩单元排列的优选级;选择级联值最大的数据矩阵作为被压缩数据矩阵。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述计算每一种排列下的数据矩阵的级联值,包括:计算所述数据矩阵中行压缩单元的去重回报值;所述去重回报值用于指示所述行压缩单元中数据重复率;根据所述去重回报值和行权值,计算所述数据矩阵的级联值。
结合第一方面,或第一方面的第一种可能的实现方式,或第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述对所述被压缩数据矩阵的行压缩单元进行一级紧致化得到紧致化数据块,包括:对所述被压缩数据矩阵的行压缩单元进行去重处理,得到紧致化数据块;其中,所述紧致化数据块包括紧致化信息和统计信息,所述紧致化信息包括头部和去重处理后的数据;所述统计信息包括去重数据出现在行压缩单元中的位置和重复次数。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述对所述紧致化数据块进行二级数据压缩,得到目标压缩文件包括:对所述紧致化数据块进行压缩,得到目标压缩文件;其中,所述目标压缩文件包括压缩头部和压缩数据,所述压缩头部包括所述紧致化数据块的大小,所述压缩数据包括压缩后的紧致化数据块。
本发明第二方面还提供了一种文件压缩装置,可包括:
抽取单元,用于从源文件中抽取数据,并将所述数据排列成数据矩阵,所述数据矩阵包括行压缩单元;
调整单元,用于调整所述数据矩阵中的行压缩单元得到被压缩数据矩阵;
一级压缩单元,用于对所述被压缩数据矩阵的行压缩单元进行一级紧致化,得到紧致化数据块;
二级压缩单元,用于对所述紧致化数据块进行二级数据压缩,得到目标压缩文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410201459.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种分布式存储系统的数据布局方法
- 下一篇:跨领域观点数据的分类方法和装置