APP下载

基于HNBJSON的物联网数据压缩方法

2021-02-24钟永彦

刘 凯,钟永彦,陈 娟,朱 震

(南通大学电气工程学院,江苏 南通 226019)

随着物联网技术的飞速发展,万物互联(Internet of Everything,IoE)的规模将越来越大[1-3]。 据思科、摩根士丹利与华为等公司估计,2019年全球约有400亿户的IoE连接,2020年连接规模达到750亿户,2025年将高达1 000亿户[4]。尤其在智能电网中,由于引入了大量先进的计算技术、通信技术与数据采集技术[5-6],海量的传感器与智能电表接入电网,这将带来井喷式的通信数据增长,进而造成数据阻塞现象,导致云边网络通信时延增大[7-8],这对数据压缩方法提出新的挑战。 常见的无损数据压缩方法主要有LZW算法和Huffman算法,它们具有通用性强、压缩效果好的特点[9-10]。然而,LZW算法易造成大量内存浪费,Huffman算法则占用CPU大量时间。当处理器内存和CPU性能受限时,将这两种算法直接用于物联网数据处理往往达不到预期效果[11-12]。

考虑到物联网终端设备常采用JSON或XML数据格式进行数据传输,而JSON数据格式在浏览器中使用更加广泛[13-14],因此,对 JSON 数据进行压缩成为研究热点。文献[15]使用Zlib将JSON数据进行压缩,减少了数据文件大小,但缩减量有限且仅用于数据存储。文献[16]提出通过数据映射的方式对JSON数据进行压缩,在原始数据分隔符较少的情况下,该方法存在压缩效率低的缺点。文献[17]介绍了SJSON算法,该方法将JSON键值对拆分,再分别编码压缩。当JSON数据结构较复杂时,具有压缩效率高、压缩时间短的优势,而数据内容复杂时,压缩率表现较差。文献[18]提出从云端主字典中提取用户字典的方式实现JSON数据压缩,但该方法并未涉及到具体的提取方式且字典未进行自适应更新,当JSON数据发生变化时,压缩效率会大打折扣。……

登录APP查看全文