[发明专利]一种数据压缩、解压方法及装置有效
申请号: | 201910196114.0 | 申请日: | 2019-03-15 |
公开(公告)号: | CN109947776B | 公开(公告)日: | 2021-05-28 |
发明(设计)人: | 郭磊;黄何 | 申请(专利权)人: | 海南火链科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;H03M7/30 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 郭放;许伟群 |
地址: | 571924 海南省海口市澄迈县老城*** | 国省代码: | 海南;46 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据压缩 解压 方法 装置 | ||
1.一种数据压缩方法,其特征在于,所述方法包括:
获取第一输入数据,分割成预设规格的所述第一输入数据,得到若干数据块;
将每个所述数据块压缩,得到若干压缩后数据和标记位,同时对每个所述数据块进行unit64转化后做hash操作,得到hash值和对应的偏移量;
将所述hash值和对应的偏移量存入hashtable中,并在所述hashtable中的最后一行对所有所述数据块对应的hash值进行拼接,得到拼接数据;
所述拼接数据通过数据解压方法解压,所述数据解压方法包括:
获取第二输入数据,所述第二输入数据包括若干压缩后数据、标记位和hashtable;
获取一个压缩后数据,根据所述标记位,将所述压缩后数据还原,得到数据块;
统计数据块的数量;
判断所述数据块的数量是否大于预设数据块数量;
如果所述数据块的数量不大于预设数据块数量,则获取下一个压缩后数据,重复执行根据标记位,将所述压缩后数据还原,得到数据块的步骤;
如果所述数据块的数量大于预设数据块数量,则将按照还原顺序得到的所述数据块,与在所述hashtable中的hash值比较,判断hashtable中是否存在与所述数据块对应的hash值;
如果存在与所述数据块对应的hash值,则将所述数据块写入内存,统计所述内存中数据块的数量,判断所述内存中数据块的数量是否等于所述hashtable中的hash值的数量;
如果所述内存中数据块的数量不等于所述hashtable中的hash值的数量,则获取下一个数据块,重复执行hashtable中是否存在与所述数据块对应的hash值的步骤;
如果所述内存中数据块的数量等于所述hashtable中的hash值的数量,则判断所述内存中数据块是否和hashtable中最后一行的所有hash值拼接得到的拼接内容相匹配;
如果与拼接内容相匹配,则解压成功,将所述内存中的数据块返回。
2.根据权利要求1所述的一种数据压缩方法,其特征在于,所述将每个数据块进行压缩,得到压缩后的数据和标记位采用的方法为霍夫曼编码方法。
3.根据权利要求1所述的一种数据压缩方法,其特征在于,所述在hashtable中的最后一行对所有所述数据块对应的hash值进行拼接的方法包括:
对所有所述数据块对应的hash值进行hash操作,偏移量设置为-1。
4.一种数据解压方法,其特征在于,所述方法包括:
获取第二输入数据,所述第二输入数据包括若干压缩后数据、标记位和hashtable;
获取一个压缩后数据,根据所述标记位,将所述压缩后数据还原,得到数据块;
统计数据块的数量;
判断所述数据块的数量是否大于预设数据块数量;
如果所述数据块的数量不大于预设数据块数量,则获取下一个压缩后数据,重复执行根据标记位,将所述压缩后数据还原,得到数据块的步骤;
如果所述数据块的数量大于预设数据块数量,则将按照还原顺序得到的所述数据块,与在所述hashtable中的hash值比较,判断hashtable中是否存在与所述数据块对应的hash值;
如果存在与所述数据块对应的hash值,则将所述数据块写入内存,统计所述内存中数据块的数量,判断所述内存中数据块的数量是否等于所述hashtable中的hash值的数量;
如果所述内存中数据块的数量不等于所述hashtable中的hash值的数量,则获取下一个数据块,重复执行hashtable中是否存在与所述数据块对应的hash值的步骤;
如果所述内存中数据块的数量等于所述hashtable中的hash值的数量,则判断所述内存中数据块是否和hashtable中最后一行的所有hash值拼接得到的拼接内容相匹配;
如果与拼接内容相匹配,则解压成功,将所述内存中的数据块返回。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海南火链科技有限公司,未经海南火链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910196114.0/1.html,转载请声明来源钻瓜专利网。