CN110311687A - 一种基于集成算法的时序数据无损压缩方法 - Google Patents

一种基于集成算法的时序数据无损压缩方法 Download PDF

Info

Publication number
CN110311687A
CN110311687A CN201910613950.4A CN201910613950A CN110311687A CN 110311687 A CN110311687 A CN 110311687A CN 201910613950 A CN201910613950 A CN 201910613950A CN 110311687 A CN110311687 A CN 110311687A
Authority
CN
China
Prior art keywords
algorithm
compression
data
serial data
data block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910613950.4A
Other languages
English (en)
Other versions
CN110311687B (zh
Inventor
戴�峰
赵志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Tian Zhi Zhi Technology Co Ltd
Original Assignee
Nanjing Tian Zhi Zhi Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Tian Zhi Zhi Technology Co Ltd filed Critical Nanjing Tian Zhi Zhi Technology Co Ltd
Priority to CN201910613950.4A priority Critical patent/CN110311687B/zh
Publication of CN110311687A publication Critical patent/CN110311687A/zh
Application granted granted Critical
Publication of CN110311687B publication Critical patent/CN110311687B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于集成算法的时序数据无损压缩方法,将所有的数据分为多个数据块,每个数据块包含多个数据串;读入前一部分数据串的值并利用所有内置的压缩算法对其进行一次压缩,得到每个数据串的最优压缩算法;成为最优压缩算法次数最多的算法,成为该数据块的当前最优压缩算法;利用数据块的当前最优压缩算法,对该数据块接下来的数据串进行压缩;经过一段时间的压缩,对该数据块的当前最优压缩算法进行验证,判断是否重新选择该数据块的当前最优压缩算法。本发明不局限于一种压缩算法,不断改变的算法可以达到最大的压缩率。

Description

一种基于集成算法的时序数据无损压缩方法
技术领域
本发明涉及一种时序数据压缩方法,特别是一种基于集成算法的时序数据无损压缩方法。
背景技术
时序数据往往占用大量储存空间,造成了存储资源的浪费。时序数据的压缩就是要把时间戳和值所组成的键值对(Key-Value Pair)进行压缩,降低在硬盘中或在内存中的占用空间,并且能够根据一定的算法复现原有数据。现有的时序数据压缩方法要么是有损压缩,即会丧失数据的精度;要么在压缩率上不尽人意,不能达到最小化数据占用空间的目的,造成一定的资源浪费。
发明内容
本发明所要解决的技术问题是提供一种基于集成算法的时序数据无损压缩方法,提高时序数据的压缩率,达到最小化数据占用空间的目的。
为解决上述技术问题,本发明所采用的技术方案是:
一种基于集成算法的时序数据无损压缩方法,其特征在于包含以下步骤:
步骤一:将所有的数据分为多个数据块,每个数据块包含多个按照数值的时间戳顺序排列的数据串;
步骤二:对于一个数据块,读入其前一部分数据串的值,读入的数据串的数量预先指定,对读取的这部分数据串,利用***内置的所有压缩算法对每一个数据串都进行一次压缩;
步骤三:对经过所有压缩算法压缩的数据串,得到每一个数据串的最优压缩算法;
步骤四:对于一个数据块,选取步骤三中成为最优压缩算法次数最多的算法作为该数据块的当前最优压缩算法;
步骤五:对该数据块接下来的数据串,使用该数据块的当前最优压缩算法进行压缩,对每一个经过压缩的数据串,包括之前采用所有算法进行压缩的数据串,在其压缩完以后的二进制串的最前面拼接上该数据串使用的压缩算法;
步骤六:在接下来的压缩过程中,定期对该数据块的当前最优压缩算法进行验证,如果验证成功,则继续使用该数据块的当前最优压缩算法进行压缩,如果失败,则重新选择该数据块的当前最优压缩算法,使用新的算法对接下来的数据串进行压缩;
步骤七:重复定期验证的过程,直到该数据块的全部数据串都被压缩完毕。
进一步地,需要恢复数据时,根据二进制串最前面的标识位获取该数据串的压缩算法,再根据相应的压缩算法的解压缩方法进行解压缩。
进一步地,所述步骤二中的***内置的所有压缩算法包括DFCM算法、FCM算法、XOR算法、线性预测的XOR算法和delta-of-delta算法。
进一步地,所述步骤二中,当所有算法的压缩效果都比不压缩要差时,则不采用任何压缩,直接存储不经过压缩的结果。
进一步地,所述步骤三中最优压缩算法的判断过程为对经过所有压缩算法压缩的数据串,比较其经过压缩后的二进制串的长度,压缩完以后二进制串长度最短的算法,为该数据串的最优压缩算法。
进一步地,所述步骤五中拼接在数据串前的压缩算法采用标识位,标识位采用定长标识位或采用霍夫曼编码的标识位。
进一步地,所述步骤六具体为
在接下来的压缩过程中,读入接下来一部分数据串的值,读入的数据串的数量预先指定,对于这部分数据串,利用***内置的所有压缩算法,对每一个数据串都进行一次压缩,得到每一个数据串的最优压缩算法,根据每一个数据串的最优压缩算法,得到这一部分数据串的当前最优压缩算法;如果该最优算法与该数据块的当前最优压缩算法一致,则验证完成,继续对接下来的数据按照该数据块的当前最优压缩算法进行压缩;如果不一致,则用于验证的这一部分数据串的当前最优压缩算法更新为该数据块的当前最优压缩算法,使用新的当前最优压缩算法进行压缩。
本发明与现有技术相比,具有以下优点和效果:本发明的一种基于集成算法的时序数据无损压缩方法将所有数据分割成块,然后对每个数据块选择最优的压缩算法进行压缩,下一个数据块则可以选择不同的压缩算法进行压缩,保证每个数据块都是采用最优化的压缩算法,而不是整体采用一种压缩算法,这样区别对待不同的数据,达到了最佳的压缩率,达到了最小化数据占用空间的目的,避免计算机存储资源的浪费。
附图说明
图1是一种基于集成算法的时序数据无损压缩方法的示意图。
具体实施方式
下面通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
如图1所示,本发明的一种基于集成算法的时序数据无损压缩方法,包括多个单独的压缩算法,包含一个算法选择过程,包含一个算法验证过程,包含一个解压缩方法。具体包括以下步骤:
步骤一:将所有的数据分为多个数据块,每个数据块包含多个按照数值的时间戳顺序排列的数据串。在实际使用中,数据块的划分可以按照某一个实际指标的采集过程来进行。每一个数据块中的数据串可以按照小时的频率进行分割。按照采集的规则,同一个数据块内的数据串应该具有相似的分布。
步骤二:对于一个数据块,读入其前一部分数据串的值,读入的数据串的数量预先指定。对这部分数据串,利用***内置的所有压缩算法,对每一个数据串都进行一次压缩。***内置的所有压缩算法均采用无损算法,包括但不限于:DFCM算法、FCM算法、XOR算法、线性预测的XOR算法、delta-of-delta算法等。除此以外,还包括不压缩的结果。也就是说,如果所有算法的压缩效果都比不压缩要差,则不采用任何压缩,直接存储不经过压缩的结果。
步骤三:对经过所有压缩算法压缩的数据串,可以得到每一个数据串的“最优压缩算法”。对经过所有压缩算法压缩的数据串,比较其经过压缩后的二进制串的长度。压缩完以后二进制串长度最短的算法,称为该数据串的“最优压缩算法”。
步骤四:对于该数据块,在上一步中成为“最优压缩算法”次数最多的算法,成为该数据块的“当前最优压缩算法”。
步骤五:对该数据块接下来的数据串,使用该数据块的“当前最优压缩算法”进行压缩。对每一个经过压缩的数据串,包括之前采用所有算法进行压缩的数据串,在其压缩完以后的二进制串的最前面(最低位)拼接上该数据串使用的压缩算法。拼接时,使用标识位来唯一标识一个算法,标识位可以采用定长标识位,也可以采用霍夫曼编码的标识位。
步骤六:在接下来的压缩过程中,定期对该数据块的“当前最优压缩算法”进行验证。验证的方法为:读入接下来一部分数据串的值,读入的数据串的数量预先指定。对于这部分数据串,利用***内置的所有压缩算法,对每一个数据串都进行一次压缩,得到每一个数据串的“最优压缩算法”,根据每一个数据串的“最优压缩算法”,得到这一部分数据串的“当前最优压缩算法”。如果该最优算法与该数据块的“当前最优压缩算法”一致,则验证完成。如果验证成功,则继续使用该数据块的“当前最优压缩算法”进行压缩。如果失败,则重新选择该数据块的“当前最优压缩算法”,使用新的算法对接下来的数据串进行压缩。新的算法可以使用验证的数据串所确定的“当前最优压缩算法”。
步骤七:重复定期验证的过程,直到该数据块的全部数据串都被压缩完毕。
步骤八:需要恢复数据时,根据二进制串最前面(最低位)的标识位获取该数据串的压缩算法,再根据相应的压缩算法的解压缩方法进行解压缩。
本发明根据上述的一种基于集成算法的无损浮点型时序数据压缩方法,举例描述该算法为:
假设要压缩的数据块为:1.0、2.0、3.0、4.0、5.0、6.0、7.0、8.0、9.0、10.0、11.0、12.0、13.0、14.0、15.0、16.0、17.0、……25.0、26.0、27.0、28.0、29.0、30.0、……95.0、96.0、97.0、98.0、99.0、100.0。按照5个一组的分为20个数据串,对前5个数据串使用所有压缩算法进行压缩。发现使用预测公式为的XOR压缩算法,效果最好。那么预测公式为的XOR算法则为该数据块的“当前最优压缩算法”。使用“当前最优压缩算法”对接下来的数据串进行压缩。当压缩到一半时,进行验证。取3个数据串,使用所有压缩算法进行压缩,发现依然是使用预测公式为的XOR算法压缩效果最好。那么验证成功,继续使用“当前最优压缩算法”进行压缩。
本发明的一种基于集成算法的时序数据无损压缩方法将所有数据分割成块,然后对每个数据块选择最优的压缩算法进行压缩,下一个数据块则可以选择不同的压缩算法进行压缩,保证每个数据块都是采用最优化的压缩算法,而不是整体采用一种压缩算法,这样区别对待不同的数据,达到了最佳的压缩率,达到了最小化数据占用空间的目的,避免计算机存储资源的浪费。
本说明书中所描述的以上内容仅仅是对本发明所作的举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种修改或补充或采用类似的方式替代,只要不偏离本发明说明书的内容或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

Claims (7)

1.一种基于集成算法的时序数据无损压缩方法,其特征在于包含以下步骤:
步骤一:将所有的数据分为多个数据块,每个数据块包含多个按照数值的时间戳顺序排列的数据串;
步骤二:对于一个数据块,读入其前一部分数据串的值,读入的数据串的数量预先指定,对读取的这部分数据串,利用***内置的所有压缩算法对每一个数据串都进行一次压缩;
步骤三:对经过所有压缩算法压缩的数据串,得到每一个数据串的最优压缩算法;
步骤四:对于一个数据块,选取步骤三中成为最优压缩算法次数最多的算法作为该数据块的当前最优压缩算法;
步骤五:对该数据块接下来的数据串,使用该数据块的当前最优压缩算法进行压缩,对每一个经过压缩的数据串,包括之前采用所有算法进行压缩的数据串,在其压缩完以后的二进制串的最前面拼接上该数据串使用的压缩算法;
步骤六:在接下来的压缩过程中,定期对该数据块的当前最优压缩算法进行验证,如果验证成功,则继续使用该数据块的当前最优压缩算法进行压缩,如果失败,则重新选择该数据块的当前最优压缩算法,使用新的算法对接下来的数据串进行压缩;
步骤七:重复定期验证的过程,直到该数据块的全部数据串都被压缩完毕。
2.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:需要恢复数据时,根据二进制串最前面的标识位获取该数据串的压缩算法,再根据相应的压缩算法的解压缩方法进行解压缩。
3.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:所述步骤二中的***内置的所有压缩算法包括DFCM算法、FCM算法、XOR算法、线性预测的XOR算法和delta-of-delta算法。
4.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:所述步骤二中,当所有算法的压缩效果都比不压缩要差时,则不采用任何压缩,直接存储不经过压缩的结果。
5.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:所述步骤三中最有压缩算法的判断过程为对经过所有压缩算法压缩的数据串,比较其经过压缩后的二进制串的长度,压缩完以后二进制串长度最短的算法,为该数据串的最优压缩算法。
6.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:所述步骤五中拼接在数据串前的压缩算法采用标识位,标识位采用定长标识位或采用霍夫曼编码的标识位。
7.按照权利要求1所述的基于集成算法的时序数据无损压缩方法,其特征在于:所述步骤六具体为
在接下来的压缩过程中,读入接下来一部分数据串的值,读入的数据串的数量预先指定,对于这部分数据串,利用***内置的所有压缩算法,对每一个数据串都进行一次压缩,得到每一个数据串的最优压缩算法,根据每一个数据串的最优压缩算法,得到这一部分数据串的当前最优压缩算法;如果该最优算法与该数据块的当前最优压缩算法一致,则验证完成,继续对接下来的数据按照该数据块的当前最优压缩算法进行压缩;如果不一致,则用于验证的这一部分数据串的当前最优压缩算法更新为该数据块的当前最优压缩算法,使用新的当前最优压缩算法进行压缩。
CN201910613950.4A 2019-07-09 2019-07-09 一种基于集成算法的时序数据无损压缩方法 Active CN110311687B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910613950.4A CN110311687B (zh) 2019-07-09 2019-07-09 一种基于集成算法的时序数据无损压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910613950.4A CN110311687B (zh) 2019-07-09 2019-07-09 一种基于集成算法的时序数据无损压缩方法

Publications (2)

Publication Number Publication Date
CN110311687A true CN110311687A (zh) 2019-10-08
CN110311687B CN110311687B (zh) 2022-10-04

Family

ID=68079362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910613950.4A Active CN110311687B (zh) 2019-07-09 2019-07-09 一种基于集成算法的时序数据无损压缩方法

Country Status (1)

Country Link
CN (1) CN110311687B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114595270A (zh) * 2022-02-23 2022-06-07 南京云蝙信息技术有限公司 基于大数据的时序数据高效压缩方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1106595A (zh) * 1993-07-08 1995-08-09 国际商业机器公司 执行顺序数据压缩算法的方法与装置
TWI246256B (en) * 2004-07-02 2005-12-21 Univ Nat Central Apparatus for audio compression using mixed wavelet packets and discrete cosine transformation
CN101420608A (zh) * 2007-10-22 2009-04-29 华为技术有限公司 一种实现数据解码的方法和装置
US20090284400A1 (en) * 2008-05-15 2009-11-19 International Business Machines Corporation Method and System for Reducing Required Storage During Decompression of a Compressed File
CN101883109A (zh) * 2010-06-29 2010-11-10 上海大学 有损网络中大规模三维数据实时传输方法
CN103888144A (zh) * 2014-03-04 2014-06-25 上海挚连科技有限公司 基于信息熵优选的自适应数据预测编码算法
CN104348490A (zh) * 2014-11-14 2015-02-11 北京东方国信科技股份有限公司 一种基于效果优选的组合数据压缩算法
CN104703262A (zh) * 2015-03-20 2015-06-10 湘潭大学 基于压缩感知的分簇式数据收集方法
CN106662981A (zh) * 2014-06-27 2017-05-10 日本电气株式会社 存储设备、程序和信息处理方法
CN108958966A (zh) * 2018-09-27 2018-12-07 合肥达博科技有限公司 一种无损数据压缩的数据保护方法和装置
CN109739444A (zh) * 2019-01-08 2019-05-10 郑州云海信息技术有限公司 存储***压缩数据的方法、装置、设备及可读存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1106595A (zh) * 1993-07-08 1995-08-09 国际商业机器公司 执行顺序数据压缩算法的方法与装置
TWI246256B (en) * 2004-07-02 2005-12-21 Univ Nat Central Apparatus for audio compression using mixed wavelet packets and discrete cosine transformation
CN101420608A (zh) * 2007-10-22 2009-04-29 华为技术有限公司 一种实现数据解码的方法和装置
US20090284400A1 (en) * 2008-05-15 2009-11-19 International Business Machines Corporation Method and System for Reducing Required Storage During Decompression of a Compressed File
CN101883109A (zh) * 2010-06-29 2010-11-10 上海大学 有损网络中大规模三维数据实时传输方法
CN103888144A (zh) * 2014-03-04 2014-06-25 上海挚连科技有限公司 基于信息熵优选的自适应数据预测编码算法
CN106662981A (zh) * 2014-06-27 2017-05-10 日本电气株式会社 存储设备、程序和信息处理方法
CN104348490A (zh) * 2014-11-14 2015-02-11 北京东方国信科技股份有限公司 一种基于效果优选的组合数据压缩算法
CN104703262A (zh) * 2015-03-20 2015-06-10 湘潭大学 基于压缩感知的分簇式数据收集方法
CN108958966A (zh) * 2018-09-27 2018-12-07 合肥达博科技有限公司 一种无损数据压缩的数据保护方法和装置
CN109739444A (zh) * 2019-01-08 2019-05-10 郑州云海信息技术有限公司 存储***压缩数据的方法、装置、设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YUBIN XIE等: "DeepNitro: Prediction of Protein Nitration and Nitrosylation Sites by Deep Learning", 《GENOMICS,PROTEOMICS & BIOINFORMATICS》 *
刘洲洲等: "WSNs中基于期望网络覆盖和分簇压缩感知的数据收集方案", 《控制与决策》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114595270A (zh) * 2022-02-23 2022-06-07 南京云蝙信息技术有限公司 基于大数据的时序数据高效压缩方法
CN114595270B (zh) * 2022-02-23 2024-06-07 北京深思得文化创意有限公司 基于大数据的时序数据高效压缩方法

Also Published As

Publication number Publication date
CN110311687B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
US8838551B2 (en) Multi-level database compression
KR101653692B1 (ko) 데이터 오브젝트 처리 방법 및 장치
US9298722B2 (en) Optimal sequential (de)compression of digital data
CN102353894B (zh) 基于参考向量和位掩码的soc的测试方法
CN102682024B (zh) 未残缺jpeg文件碎片重组的方法
US20170185712A1 (en) A method of storing/reconstructing a multitude of sequences in/from a data storage structure
CN106201774B (zh) 一种nand flash存储芯片数据存储结构分析方法
CN107027326B (zh) 存储***中数据备份的方法及装置
WO2015076671A1 (en) A method of generating a reference index data structure and method for finding a position of a data pattern in a reference data structure
US20110069833A1 (en) Efficient near-duplicate data identification and ordering via attribute weighting and learning
CN115438114B (zh) 存储格式转换方法、***、装置、电子设备及存储介质
JP4194785B2 (ja) テストベクトルの圧縮方法
CN110311687A (zh) 一种基于集成算法的时序数据无损压缩方法
CN111061428B (zh) 一种数据压缩的方法及装置
CN103780263B (zh) 数据压缩装置、数据压缩方法及记录介质
CN102622302B (zh) 碎片数据类型的识别方法
KR101842420B1 (ko) 정보 처리 장치 및 데이터 관리 방법
CN106155840A (zh) 当重组碎片jpeg图像时使用的方法和设备
CN110288666B (zh) 一种数据压缩方法及装置
Ravi et al. A method for carving fragmented document and image files
CN110442557B (zh) 数据压缩及解压缩方法、电子设备和计算机可读存储介质
KR102497634B1 (ko) 문자 빈도 기반 서열 재정렬을 통한 fastq 데이터 압축 방법 및 장치
CN108848383A (zh) 一种视频、图像数据的压缩方法
CN113285720A (zh) 基因数据无损压缩方法、集成电路及无损压缩设备
CN108230041B (zh) 一种基于广告投放的索引热加载方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 201100 no.1628, sushao Road, Minhang District, Shanghai

Applicant after: Shanghai Tiantian smart core semiconductor Co.,Ltd.

Address before: 210000 4 floor of No. 180, No. 180, Yuhuatai District, Yuhuatai District, Jiangsu

Applicant before: Nanjing Tianshu Zhixin Technology Co.,Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 201100 no.1628, sushao Road, Minhang District, Shanghai

Applicant after: Shanghai Tiantian smart core semiconductor Co.,Ltd.

Address before: 210000 4 floor of No. 180, No. 180, Yuhuatai District, Yuhuatai District, Jiangsu

Applicant before: Nanjing Tianshu Zhixin Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant