一种实时数据库中历史数据的压缩方法技术

技术编号:18553713 阅读:241 留言:0更新日期:2018-07-28 10:49
本发明专利技术提供一种实时数据库中历史数据的压缩方法,包括:步骤S1、在内存中开辟实时数据缓存区和历史数据缓存区;步骤S2、将采集到的实时数据搬迁至实时数据缓存区;步骤S3、将实时数据缓存区的实时数据搬迁至历史数据压缩模块,将其压缩成历史数据压缩文件保存在所述历史数据缓存区中;步骤S4、当所述历史数据缓存区中的历史数据压缩文件的大小超过设定大小时,附上索引文件后进行保存在历史数据存储区中。本发明专利技术方法能同时应对多个通信点大量数据的输入,在满足历史数据文件最小化的同时,将历史数据进行有效的压缩,并确保高效的历史数据查询效率,提高了客户体验。

【技术实现步骤摘要】
一种实时数据库中历史数据的压缩方法
本专利技术涉及工业自动化控制
,特别涉及一种实时数据库中历史数据的压缩方法。
技术介绍
实时数据库是实时系统技术和数据库技术相结合的产物,具有高实时性、高数据吞吐量等特点,在自动控制领域得到了广泛的应用。当前,国内外主流实时数据库产品一般都提供了历史数据存储功能,能够长时间地保存、备份现场的过程数据。但是由于控制现场的采集点多,采集时间周期短,因而要保存的历史数据量非常大。如果将这些数据直接存储,不仅会占用大量的系统存储空间,而且会降低数据的实时性,使数据的传输、查询变得困难。因此如何在保持数据库高实时性的同时,尽可能地提高数据库的容量,是实时数据研究的一个热点方向。
技术实现思路
本专利技术要解决的技术问题,在于提供一种实时数据库中历史数据的压缩方法,用以解决现有技术中由于控制现场的采集点多,采集时间周期短、数据量大,导致历史数据存储困难、占用系统空间大,进而影响客户体验的问题。本专利技术是这样实现的:一种实时数据库中历史数据的压缩方法,包括:步骤S1、在内存中开辟实时数据缓存区和历史数据缓存区;步骤S2、将采集到的实时数据搬迁至实时数据缓存区;步骤S3、将实时数据缓存区的实时数据搬迁至历史数据压缩模块,将其压缩成历史数据压缩文件保存在所述历史数据缓存区中;步骤S4、当所述历史数据缓存区中的历史数据压缩文件的大小超过设定大小时,附上索引文件后进行保存在历史数据存储区中。进一步的,所述实时数据的提取与存储的过程是:(a)由数据采集装置将采集的实时数据传输至控制站中;(b)位于PC端的通讯程序根据事先配置好的控制站地址与通讯点信息将该控制站地址实时数据搬迁至位于内存中的实时数据缓存区进行存储,所述实时数据包含控制站信息及通讯点信息;(c)通信数据搬迁执行模块将位于实时数据缓存区的实时数据值搬迁至实时数据同步模块、历史数据压缩存储模块、历史数据服务接口模块和报警数据判定储存模块。进一步的,所述通信数据搬迁执行模块为Car.exe;所述实时数据同步模块为ValueIntf.exe;所述历史数据压缩存储模块为Bag.exe;所述历史数据服务接口模块为Door.exe;所述报警数据判定储存模块为Alarm.exe。进一步的,所述历史数据压缩文件包含历史IO点信息、历史数据缓存头和历史数据内容。进一步的,所述步骤S3和步骤S4由历史数据压缩存储模块Bag.exe来执行。进一步的,所述索引文件包括日期索引文件和时期索引文件。进一步的,所述压缩的规则包括模拟量规则和数字量规则:所述模拟量规则为:(M1)、数据变化满足压缩算法的压缩条件时压缩数据;(M2)、距离前一压缩时间点的间隔时间超过压缩时间设置值时压缩数据;所述数字量规则为:(D1)、数据变化时压缩数据;(D2)、通信质量发生变化时压缩数据;(D2)、距离前一压缩时间点的间隔时间超过压缩时间设置值压缩数据。进一步的,所述步骤S4中,当所述历史数据压缩文件的大小超过历史数据存储大小设置值时,对其进行二次压缩,生成包含所述历史数据压缩文件、日期索引文件和时间索引文件在内的二次压缩文件,然后再存储在所述历史数据存储区中。本专利技术具有如下优点:本专利技术方法给出了一种新的文件型历史数据结构的设计,能同时应对多个通信点大量数据的输入,在满足历史数据文件最小化的同时,将历史数据进行有效的压缩,并确保高效的历史数据查询效率,提高了客户体验。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1为本专利技术方法中实时数据的提取与存储执行流程图。图2为本专利技术方法中历史数据的压缩与存储执行流程图。具体实施方式本专利技术的实时数据库中历史数据的压缩方法,包括:步骤S1、在内存中开辟实时数据缓存区和历史数据缓存区;步骤S2、将采集到的实时数据搬迁至实时数据缓存区;步骤S3、将实时数据缓存区的实时数据搬迁至历史数据压缩模块,将其压缩成历史数据压缩文件保存在所述历史数据缓存区中;步骤S4、当所述历史数据缓存区中的历史数据压缩文件的大小超过设定大小时,附上索引文件后进行保存在历史数据存储区中,所述索引文件包括日期索引文件和时期索引文件。如图1所示,所述实时数据的提取与存储的过程是:(a)由传感器、PLC等备数据采集设将采集的实时数据传输至控制站中;(b)位于PC端的通讯程序根据事先配置好的控制站地址与通讯点信息将该控制站地址实时数据搬迁至位于内存中的实时数据缓存区进行存储,所述实时数据包含控制站信息及通讯点信息;(c)通信数据搬迁执行模块Car.exe将位于实时数据缓存区的实时数据值搬迁至实时数据同步模块ValueIntf.exe、历史数据压缩存储模块Bag.exe、历史数据服务接口模块Door.exe、报警数据判定储存模块Alarm.exe。如图2所示,历史数据的压缩与存储的过程:(1)由历史数据压缩存储模块Bag.exe来执行对历史数据的压缩与存储。(2)历史数据压缩存储模块Bag.exe将由实时数据内存区搬迁来的历史数据压缩后保存在历史数据缓存区域中,所述历史数据压缩文件包含历史IO点信息、历史数据缓存头和历史数据内容。其中,所述压缩的规则包括模拟量规则和数字量规则:所述模拟量规则为:(M1)、数据变化满足压缩算法的压缩条件时压缩数据;(M2)、距离前一压缩时间点的间隔时间超过压缩时间设置值时压缩数据;所述数字量规则为:(D1)、数据变化时压缩数据;(D2)、通信质量发生变化时压缩数据;(D2)、距离前一压缩时间点的间隔时间超过压缩时间设置值压缩数据。(3)当所述历史数据压缩文件的大小超过历史数据存储大小设置值时,对其进行二次压缩,生成包含所述历史数据压缩文件、日期索引文件和时间索引文件在内的二次压缩文件,然后再存储在所述历史数据存储区中。所述历史数据文件包含历史数据的详细内容,文件编号为1-32000,编号顺序由该历史数据文件的生成顺序依次排列;所述日期索引文件,包含日期索引文件生成时的日期信息;时间索引文件则包含该文件生成时的时间信息,具体至秒。以此来保证历史信息的查询效率,提高了客户体验。虽然以上描述了本专利技术的具体实施方式,但是熟悉本
的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本专利技术的范围的限定,熟悉本领域的技术人员在依照本专利技术的精神所作的等效的修饰以及变化,都应当涵盖在本专利技术的权利要求所保护的范围内。本文档来自技高网
...

【技术保护点】
1.一种实时数据库中历史数据的压缩方法,其特征在于:包括:步骤S1、在内存中开辟实时数据缓存区和历史数据缓存区;步骤S2、将采集到的实时数据搬迁至实时数据缓存区;步骤S3、将实时数据缓存区的实时数据搬迁至历史数据压缩模块,将其压缩成历史数据压缩文件保存在所述历史数据缓存区中;步骤S4、当所述历史数据缓存区中的历史数据压缩文件的大小超过设定大小时,附上索引文件后进行保存在历史数据存储区中。

【技术特征摘要】
1.一种实时数据库中历史数据的压缩方法,其特征在于:包括:步骤S1、在内存中开辟实时数据缓存区和历史数据缓存区;步骤S2、将采集到的实时数据搬迁至实时数据缓存区;步骤S3、将实时数据缓存区的实时数据搬迁至历史数据压缩模块,将其压缩成历史数据压缩文件保存在所述历史数据缓存区中;步骤S4、当所述历史数据缓存区中的历史数据压缩文件的大小超过设定大小时,附上索引文件后进行保存在历史数据存储区中。2.根据权利要求1所述的一种实时数据库中历史数据的压缩方法,其特征在于:所述实时数据的提取与存储的过程是:(a)由数据采集装置将采集的实时数据传输至控制站中;(b)位于PC端的通讯程序根据事先配置好的控制站地址与通讯点信息将该控制站地址实时数据搬迁至位于内存中的实时数据缓存区进行存储,所述实时数据包含控制站信息及通讯点信息;(c)通信数据搬迁执行模块将位于实时数据缓存区的实时数据值搬迁至实时数据同步模块、历史数据压缩存储模块、历史数据服务接口模块和报警数据判定储存模块。3.根据权利要求2所述的一种实时数据库中历史数据的压缩方法,其特征在于:所述通信数据搬迁执行模块为Car.exe;所述实时数据同步模块为ValueIntf.exe;所述历史数据压缩存储模块为Bag.exe;所述历史数据服务接口模块为Door.exe;所述...

【专利技术属性】
技术研发人员:郑松刘朝儒钟金妹黄玉杰蒋巧玲刘合锋李骏毕超
申请(专利权)人:爱普福建科技有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1