CN103136202A - 实时数据库中动态预测有损压缩及解压的方法 - Google Patents

实时数据库中动态预测有损压缩及解压的方法 Download PDF

Info

Publication number
CN103136202A
CN103136202A CN 201110374971 CN201110374971A CN103136202A CN 103136202 A CN103136202 A CN 103136202A CN 201110374971 CN201110374971 CN 201110374971 CN 201110374971 A CN201110374971 A CN 201110374971A CN 103136202 A CN103136202 A CN 103136202A
Authority
CN
China
Prior art keywords
data
real
slope
tlast
new data
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.)
Pending
Application number
CN 201110374971
Other languages
English (en)
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.)
SHANGHAI MAGUS TECHNOLOGY Co Ltd
Original Assignee
SHANGHAI MAGUS 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 SHANGHAI MAGUS TECHNOLOGY Co Ltd filed Critical SHANGHAI MAGUS TECHNOLOGY Co Ltd
Priority to CN 201110374971 priority Critical patent/CN103136202A/zh
Publication of CN103136202A publication Critical patent/CN103136202A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种实时数据库中动态预测有损压缩的方法,步骤如下:系统初始化,读入两个实时数据,将第一个数据写入数据库并保存为“最后写入数据”,根据前两个数据及误差允许范围,计算斜率上下限,初始化各修正值为0;读入新的数据,用新数据、“最后写入数据”及误差允许范围,计算斜率上下限;根据新数据的斜率上下限与当前斜率上下限进行比较,并决定是否保存新数据;调整当前斜率上下限及斜率修正值,并重复第二步。还公开了一种实时数据库中动态预测有损压缩的解压方法,包括如下步骤:设置查询时间为t,并读取t之前最近的3个数据p1(t1,v1),p2(t2,v2),p3(t3,v3),然后,通过如下计算方法计算出pt(t,vt)。本发明与现有计算相比,具有压缩比率大且误差小等优势。

Description

实时数据库中动态预测有损压缩及解压的方法
技术领域
本发明涉及的是一种实时数据库领域的方法,具体来讲,是一种通过动态修正、预测与检验实时数据,从而对数据进行有损压缩的方法。
背景技术
实时数据库主要用于工业监控领域,如火电厂厂级监控系统等。该领域中的实时数据有如下特点:
1、测点多。一个新建300WM的火电厂的监控系统测点数量超过10000个。测点多意味着系统并发任务多,对系统运行效率要求高。
2、数据量庞大。工业监控系统的数据采样频率多为秒级,即每秒每个测点获得一个数据。因此数据处理算法必须在有限的时间内完成数据处理才不会造成瓶颈。另一方面,庞大的数据量需要大量硬盘空间用于存储。
3、数据变化慢,冗余多。因为采样频率高,所以工业监控系统的实时数据多有变化慢的特点,特别对于整型与开关型变量,有大量冗余存在。
4、与时间相关性强。工业监控系统的数据随时间推移而变化,数据值与时间有很强的相关性。
5、存在不可避免的噪声。工业监控系统的数据在测量与传输过程中都有可能引入噪声。
因此数据压缩是实时数据库中的关键技术,数据压缩可分为有损压缩和无损压缩两种。而实时数据库中多采用先有损压缩,后无损压缩的二次压缩以达到更高的压缩比。有损压缩的原理是,通过一定的数据筛选规则,选择性地保留部分数据,抛弃部分数据,并保证解压算法的还原精度在系统精度误差允许范围内。因此有损压缩算法有较高的压缩比,但同时会导致系统精度下降。
目前实时数据库领域的有损压缩方法主要分为两大类:死区压缩和趋势压缩。
死区压缩是将新值与上一次的记录值进行比较,当两者差的绝对值小于误差允许阈值时,就抛弃该数据,反之保留该数据。死区压缩算法简单,但是压缩比低,很难满足实时数据库系统的要求。
趋势压缩以PI公司的旋转门算法为代表。旋转门算法大大提高了实时数据库的压缩率,但因为旋转门算法并没有对趋势的变化情况加以描述、记录和预测,因此压缩率和精确度都仍有提升的空间。
经过文献检索发现,Peter A.James于1995年在《Data CompressionFor Process Historians》一文中提出了SLIM有损压缩算法,该算法的压缩率和精确度较旋转门算法都有一定的优势,但是并未在实时数据库系统中被引入使用。且该算法仍有改进的空间。
发明内容
本发明的目的是:根据工业监控系统的数据特征及实时数据库对压缩算法的要求,提出了一种通过动态预测、修正与检验对实时数据进行有损压缩的方法,同时本发明的检验方法基于Peter A.James提出的SLIM压缩算法的检验方法,而通过动态修正与预测,可以同时提高有损压缩的压缩率和精确度。
本发明通过以下技术方案来实现:
一种实时数据库中动态预测有损压缩的方法,其特征在于,包括如下步骤:
步骤1:系统初始化,读入两个实时数据,将第一个数据写入数据库并保存为“最后写入数据”,根据前两个数据及误差允许范围,计算斜率上下限,初始化各修正值为0;
步骤2:读入新的数据,用新数据、“最后写入数据”及误差允许范围,计算斜率上下限;
步骤3:根据新数据的斜率上下限与当前斜率上下限进行比较,并决定是否保存新数据;
步骤4:调整当前斜率上下限及斜率修正值,并重复第二步;
其中:步骤1中所述的初始化过程,包括记录最初两个数据p1(t1,v1),p2(t2,v2),计算初始斜率上限rup=(v2+T-v1)/(t2-t1),斜率下限为rdown=(v2-T-v1)/(t2-t1),斜率中线为r=(v2-v1)/(t2-t1),其中T为误差容忍范围±T,初始化斜率修正值dr为0,将p1作为“最后写入数据”记录为plast(tlast,vlast),p2作为“最后读入数据”记录为pread(tread,vread);
步骤2中所述计算斜率上下限的过程,包括:读入新数据p3(t3,v3),计算斜率上限r’up=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),斜率下限r’down=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast);
步骤3中所述比较过程如下:如果r’up>rup且r’down>rup,那么需要保存新数据;如果r’down<rdown且r’up<rdown,也需要保存新数据,否则,不保存新数据,只重新调整当前斜率;
步骤4中所述调整过程如下:根据步骤3中的结果,如果需要保存新数据,计算斜率修正值dr=((v3-vread)/(t3-tread)-r)/(tread-tlast),作一通过“最后读入数据”的纵垂线,如果r’up>rup,把该纵垂线与rup的交点写入数据库并记录为“最后写入数据”,如果r’down<rdown,把该纵垂线与rdown的交点写入数据库并记录为“最后写入数据”,重新计算rup=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),rdown=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast);若无需保存新数据,如果r’up<rup,调整rup为r’up,如果r’down>rdown,调整rdown为r’down。无论是否保存新数据,记录当前数据为“最后读入数据”。
一种实时数据库中动态预测有损压缩的方法,其特征在于,包括如下步骤:设置查询时间为t,并读取t之前最近的3个数据p1(t1,v1),p2(t2,v2),p3(t3,v3),然后,通过如下计算方法计算出pt(t,vt);
所述计算方法如下:k1=(v2-v1)/(t2-t1),k2=(v3-v2)/(t3-t2),vt=v3+(t3-t2)(k2+(k2-k1)(t3-t2)/(t2-t1))。
本发明的有益效果是:本发明与旋转门和SLIM算法进行比较,对正弦曲线进行压缩:旋转门压缩方法的压缩比为17.8,还原误差为1.48;SLIM算法的压缩比为22.1,还原误差为1.17;本发明所述方法的压缩比为24.1,还原误差为1.15,由此可见,本发明与现有计算相比,具有压缩比率大且误差小等优势。
附图说明
图1是实时数据库中动态预测有损压缩的方法步骤框图;
图2是实时数据库中动态预测有损压缩的解压方法步骤框图。
具体实施方式
如图1所示,一种实时数据库中动态预测有损压缩的方法,步骤如下:
步骤1:系统初始化,读入两个实时数据,将第一个数据写入数据库并保存为“最后写入数据”,根据前两个数据及误差允许范围,计算斜率上下限,初始化各修正值为0;
步骤2:读入新的数据,用新数据、“最后写入数据”及误差允许范围,计算斜率上下限;
步骤3:根据新数据的斜率上下限与当前斜率上下限进行比较,并决定是否保存新数据;
步骤4:调整当前斜率上下限及斜率修正值,并重复第二步;
其中:步骤1中所述的初始化过程,包括记录最初两个数据p1(t1,v1),p2(t2,v2),计算初始斜率上限rup=(v2+T-v1)/(t2-t1),斜率下限为rdown=(v2-T-v1)/(t2-t1),斜率中线为r=(v2-v1)/(t2-t1),其中T为误差容忍范围±T,初始化斜率修正值dr为0,将p1作为“最后写入数据”记录为plast(tlast,vlast),p2作为“最后读入数据”记录为pread(tread,vread);
步骤2中所述计算斜率上下限的过程,包括:读入新数据p3(t3,v3),计算斜率上限r’up=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),斜率下限r’down=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast);
步骤3中所述比较过程如下:如果r’up>rup且r’down>rup,那么需要保存新数据;如果r’down<rdown且r’up<rdown,也需要保存新数据,否则,不保存新数据,只重新调整当前斜率;
步骤4中所述调整过程如下:根据步骤3中的结果,如果需要保存新数据,计算斜率修正值dr=((v3-vread)/(t3-tread)-r)/(tread-tlast),作一通过“最后读入数据”的纵垂线,如果r’up>rup,把该纵垂线与rup的交点写入数据库并记录为“最后写入数据”,如果r’down<rdown,把该纵垂线与rdown的交点写入数据库并记录为“最后写入数据”,重新计算rup=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),rdown=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast);若无需保存新数据,如果r’up<rup,调整rup为r’up,如果r’down>rdown,调整rdown为r’down。无论是否保存新数据,记录当前数据为“最后读入数据”。
如图2所示,一种实时数据库中动态预测有损压缩的解压方法,步骤如下:设置查询时间为t,并读取t之前最近的3个数据p1(t1,v1),p2(t2,v2),p3(t3,v3),然后,通过如下计算方法计算出pt(t,vt);所述计算方法如下:k1=(v2-v1)/(t2-t1),k2=(v3-v2)/(t3-t2),vt=v3+(t3-t2)(k2+(k2-k1)(t3-t2)/(t2-t1))。

Claims (7)

1.一种实时数据库中动态预测有损压缩的方法,其特征在于,包括如下步骤:
步骤1:系统初始化,读入两个实时数据,将第一个数据写入数据库并保存为“最后写入数据”,根据前两个数据及误差允许范围,计算斜率上下限,初始化各修正值为0;
步骤2:读入新的数据,用新数据、“最后写入数据”及误差允许范围,计算斜率上下限;
步骤3:根据新数据的斜率上下限与当前斜率上下限进行比较,并决定是否保存新数据;
步骤4:调整当前斜率上下限及斜率修正值,并重复第二步。
2.如权利要求1所述的实时数据库中动态预测有损压缩的方法,其特征在于,步骤1中所述的初始化过程,包括记录最初两个数据p1(t1,v1),p2(t2,v2),计算初始斜率上限rup=(v2+T-v1)/(t2-t1),斜率下限为rdown=(v2-T-v1)/(t2-t1),斜率中线为r=(v2-v1)/(t2-t1),其中T为误差容忍范围±T,初始化斜率修正值dr为0,将p1作为“最后写入数据”记录为plast(tlast,vlast),p2作为“最后读入数据”记录为pread(tread,vread)。
3.如权利要求1所述的实时数据库中动态预测有损压缩的方法,其特征在于,步骤2中所述计算斜率上下限的过程,包括:读入新数据p3(t3,v3),计算斜率上限r’up=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),斜率下限r’down=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast)。
4.如权利要求1所述的实时数据库中动态预测有损压缩的方法,其特征在于,步骤3中所述比较过程如下:如果r’up>rup且r’down>rup,那么需要保存新数据;如果r’down<rdown且r’up<rdown,也需要保存新数据,否则,不保存新数据,只重新调整当前斜率。
5.如权利要求1所述的实时数据库中动态预测有损压缩的方法,其特征在于,步骤4中所述调整过程如下:根据步骤3中的结果,如果需要保存新数据,计算斜率修正值dr=((v3-vread)/(t3-tread)-r)/(tread-tlast),作一通过“最后读入数据”的纵垂线,如果r’up>rup,把该纵垂线与rup的交点写入数据库并记录为“最后写入数据”,如果r’down<rdown,把该纵垂线与rdown的交点写入数据库并记录为“最后写入数据”,重新计算rup=(v3+T-vlast)/(t3-tlast)+dr*(t3-tlast),rdown=(v3-T-vlast)/(t3-tlast)+dr*(t3-tlast);若无需保存新数据,如果r’up<rup,调整rup为r’up,如果r’down>rdown,调整rdown为r’down。无论是否保存新数据,记录当前数据为“最后读入数据”。
6.一种实时数据库中动态预测有损压缩的解压方法,其特征在于,包括如下步骤:设置查询时间为t,并读取t之前最近的3个数据p1(t1,v1),p2(t2,v2),p3(t3,v3),然后,通过如下计算方法计算出pt(t,vt)。
7.如权利要求6所述的实时数据库中动态预测有损压缩的解压方法,其特征在于,所述计算方法如下:k1=(v2-v1)/(t2-t1),k2=(v3-v2)/(t3-t2),vt=v3+(t3-t2)(k2+(k2-k1)(t3-t2)/(t2-t1))。
CN 201110374971 2011-11-22 2011-11-22 实时数据库中动态预测有损压缩及解压的方法 Pending CN103136202A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110374971 CN103136202A (zh) 2011-11-22 2011-11-22 实时数据库中动态预测有损压缩及解压的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110374971 CN103136202A (zh) 2011-11-22 2011-11-22 实时数据库中动态预测有损压缩及解压的方法

Publications (1)

Publication Number Publication Date
CN103136202A true CN103136202A (zh) 2013-06-05

Family

ID=48496039

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110374971 Pending CN103136202A (zh) 2011-11-22 2011-11-22 实时数据库中动态预测有损压缩及解压的方法

Country Status (1)

Country Link
CN (1) CN103136202A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106021579A (zh) * 2016-06-01 2016-10-12 南京国电南自美卓控制系统有限公司 一种历史数据库的压缩方法
CN106557469A (zh) * 2015-09-24 2017-04-05 阿里巴巴集团控股有限公司 一种处理数据仓库中数据的方法及装置
CN107967360A (zh) * 2017-12-22 2018-04-27 广东雅达电子股份有限公司 一种实时数据库文件存储方法
CN110262819A (zh) * 2019-06-04 2019-09-20 深圳前海微众银行股份有限公司 一种联邦学习的模型参数更新方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106557469A (zh) * 2015-09-24 2017-04-05 阿里巴巴集团控股有限公司 一种处理数据仓库中数据的方法及装置
CN106021579A (zh) * 2016-06-01 2016-10-12 南京国电南自美卓控制系统有限公司 一种历史数据库的压缩方法
CN106021579B (zh) * 2016-06-01 2019-11-08 南京国电南自维美德自动化有限公司 一种历史数据库的压缩方法
CN107967360A (zh) * 2017-12-22 2018-04-27 广东雅达电子股份有限公司 一种实时数据库文件存储方法
CN110262819A (zh) * 2019-06-04 2019-09-20 深圳前海微众银行股份有限公司 一种联邦学习的模型参数更新方法及装置

Similar Documents

Publication Publication Date Title
Marcus et al. Benchmarking learned indexes
CN102611454B (zh) 一种实时历史数据动态无损压缩方法
US10310737B1 (en) Size-targeted database I/O compression
CN102609360B (zh) 一种数据处理方法、装置及系统
US7937371B2 (en) Ordering compression and deduplication of data
Lakshminarasimhan et al. Compressing the incompressible with ISABELA: In-situ reduction of spatio-temporal data
CN106649026B (zh) 适用于运维自动化系统的监测数据压缩方法
CN103136202A (zh) 实时数据库中动态预测有损压缩及解压的方法
US20130208795A1 (en) Encoding motion vectors for video compression
CN101807925B (zh) 一种基于数值排序线性拟合的历史数据压缩方法
CN1866241A (zh) 一种基于最小二乘线性拟合的实时数据压缩方法
CN102510287B (zh) 一种工业实时数据的快速压缩方法
CN101923569A (zh) 一种实时数据库的结构类型数据的存储方法
CN104715039A (zh) 基于硬盘和内存的列式存储和查询方法及设备
TW201644255A (zh) 用於壓縮經由網路所接收之資料的方法及設備
Anitha A new web usage mining approach for next page access prediction
CN104125458A (zh) 内存数据无损压缩方法及装置
CN105378716B (zh) 一种数据存储格式的转换方法及装置
CN110399268B (zh) 一种异常数据检测的方法、装置及设备
US10715176B1 (en) Recommending data compression scheme using machine learning and statistical attributes of the data
US10055454B2 (en) System and a method for executing SQL basic operators on compressed data without decompression process
CN116915259B (zh) 基于物联网的仓配数据优化储存方法及系统
Zhang et al. QD-compressor: A quantization-based delta compression framework for deep neural networks
Chen et al. An optimized algorithm for lossy compression of real-time data
CN104133883A (zh) 电话号码归属地数据压缩算法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130605