[发明专利]一种JSON数据实时无损压缩以及解压方法有效
申请号: | 201811210828.4 | 申请日: | 2018-10-17 |
公开(公告)号: | CN109450450B | 公开(公告)日: | 2022-09-23 |
发明(设计)人: | 杨红飞 | 申请(专利权)人: | 杭州费尔斯通科技有限公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 刘静;邱启旺 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 json 数据 实时 无损 压缩 以及 解压 方法 | ||
本发明公开了一种JSON数据实时无损压缩以及解压方法,该方法包含JSON数据压缩以及解压流程;所述压缩流程通过清洗组件清洗JSON数据格式中不影响数据确定性的字符,通过提取组件提取压缩字典,通过编码组件形成初步的压缩字符,最终通过合成组件完成整个JSON数据的压缩;所述解压流程通过拆解组件拆分字典以及压缩字符,通过解析组件解析压缩字符中的占位符信息和重复次数信息并对字典中的字符进行还原,最终通过还原组件还原清洗组件清除的字符信息,得到原JSON数据。本发明有效提升JSON数据包的压缩率,JSON数据越大时,压缩率越高,压缩效果越好。
技术领域
本发明涉及字典索引、排序算法以及数据存储、数据解压缩领域,具体而言是一种JSON数据实时无损压缩以及解压方法。
背景技术
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language,Standard ECMA-262 3rd Edition-December 1999的一个子集。JSON采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率,JSON目前已经普遍使用并且成为网络传输的主流数据格式。但是JSON本身定义之初的定位是一种易于阅读和编写的数据格式,JSON数据本身存在较大的压缩和优化空间,当传输的数据量过大的时候导致消耗的流量和带宽等网络资源也越加大。
针对以上的问题,特别是在网络发达的今天,数据传输压缩愈加重要。目前存在一些开源JSON压缩算法,大部分是将JSON数据当成普通的字符串进行压缩处理,或者仅仅对重复的key或者value进行处理,这样虽然也能对JSON压缩处理,但是当JSON中属性太多,或者连续重复的字符过多时,压缩效果并不理想。
发明内容
为了解决上述技术的缺陷,本发明技术方案吸取了现有开源算法的优点,同时针对JSON数据中属性太多,连续重复字符的情况,对现有算法进行的改进和优化,目的是为了提供一种压缩率更高、压缩速度更加快捷的JSON实时无损压缩以及解压方法。
本发明的目的是通过以下技术方案来实现的:一种JSON数据实时无损压缩以及解压方法,该方法包含JSON数据压缩以及解压流程;
所述压缩流程通过清洗组件清洗JSON数据格式中不影响数据确定性的字符,通过提取组件提取压缩字典,通过编码组件形成初步的压缩字符,最终通过合成组件完成整个JSON数据的压缩;
所述解压流程通过拆解组件拆分字典以及压缩字符,通过解析组件解析压缩字符中的占位符信息和重复次数信息并对字典中的字符进行还原,最终通过还原组件还原清洗组件清除的字符信息,得到原JSON数据。
进一步地,所述清洗组件清洗的不影响数据确定性的字符包括:
清除JSON数据格式中属性的引号;
清除JSON数据格式中非纯数字字符的引号,清除纯数字字符末尾的引号;
清除布尔型数据,使用特定字符串代替。
进一步地,所述提取组件根据清洗完成的数据格式,进行最大压缩率的相同字符串提取,并生成字典;再通过编码组件进行特定占位符替换,形成新的压缩字符串,如此往复最终完全压缩所有满足条件的相同字符串。
进一步地,在提取最大压缩率的相同字符串过程中,将原字符串的所有长度大于2的字符子集取出(少于或等于2个无法满足压缩要求),并且按照子串长度从小到大排序;从前往后穷举子串集合,统计子串在原字符串中的出现次数,出现次数与子串长度相乘,得到该子串在本轮提取中的票数;例如出现“abc”字符串共10次,则“abc”得票数为30;所有子串票数统计完毕,票数最高的子串成为一个字典。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州费尔斯通科技有限公司,未经杭州费尔斯通科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811210828.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置