数据库控制方法及控制系统技术方案

技术编号:33952465 阅读:18 留言:0更新日期:2022-06-29 22:44
本申请一种数据库控制方法及控制系统,涉及数据业务相关技术领域。主流平台常用的数据压缩技术受操作系统限制,多操作系统之间不能互相兼容。本申请包括如下步骤:S1:数据读取模块对配置数据库、基础数据库内的数据项依次逐个读取,得到元数据项;S2:数据采集模块对所述数据读取模块读取的所述数据项进行选择性采集,对符合预设要求的所述数据项采集;S3:数据压缩模块对所述数据采集模块采集的符合预设要求的数据项进行压缩形成数据块;S4:对步骤S3中进入缓存池内的符合预设要求的数据块经过再次压缩,形成压缩文件。本申请克服现有国产操作系统和芯片性能不足,提供了基于国产操作系统的实时数据接收、压缩、存储、查询一体化处理平台。处理平台。处理平台。

【技术实现步骤摘要】
数据库控制方法及控制系统


[0001]本申请涉及数据业务相关
,具体涉及一种数据库控制方法及控制系统。

技术介绍

[0002]实时数据库软件是指在基于实时操作系统,能独立运行的一种数据库控制方法及控制系统,用以处理大量的、时效性强且有严格时序的数据,以高可靠、高时效为目标。
[0003]实时数据,其具有以下特征:
[0004]数据变化具有一定波形规律;
[0005]高并发、高采样率;
[0006]数据中只有小部分测点的值经常发生改变;
[0007]数据中很多测点的数值都具有慢变化的特征;
[0008]数值变化与时间变化具有共同变化特性;
[0009]用户在一定范围内,能够允许数据的精度损失;
[0010]数据具有标签、指标和时间戳三元素。
[0011]基于实时操作系统的数据库大多被国外垄断,国内市场上缺少成熟的基于实时国产操作系统的数据库产品。目前,行业内普遍应用的实时数据库管理系统都属于内存数据库,如果应用层任务对内存操作不当,容易引起系统崩溃。主流平台常用的数据压缩技术受操作系统限制,多操作系统之间不能互相兼容。

技术实现思路

[0012]本申请提供一种数据库控制方法及控制系统,以解决行业内普遍应用的实时数据库管理系统都属于内存数据库,如果应用层任务对内存操作不当,容易引起系统崩溃。主流平台常用的数据压缩技术受操作系统限制,多操作系统之间不能互相兼容。数据查询也受操作系统限制的问题。
[0013]为达上述目的,本申请提供的一种数据库控制方法,包括如下步骤:
[0014]S1:数据读取模块对配置数据库、基础数据库内的数据项依次逐个读取,得到元数据项,每读取一个则进入步骤S2;
[0015]S2:数据采集模块对所述元数据项进行选择性采集,如果所述元数据项符合预设采集要求,则将所述元数据项进行采集,得到采集数据项,进入步骤S3,如果所述元数据项不符合预设采集要求,则将所述元数据项进行舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束;
[0016]S3:数据压缩模块对所述采集数据项进行选择压缩,如果所述采集数据项符合预设压缩要求,则将所述采集数据项进行压缩形成数据块,进入步骤S4,如果所述采集数据项不符合预设压缩要求,则将所述采集数据项进行舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束;
[0017]S4:缓存池对所述数据块进行选择存储,如果所述数据块符合预设存储要求,则将
所述数据块进行再次压缩,形成压缩文件,然后进行存储,如果所述数据块不符合预设存储要求,则将所述数据块舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束。
[0018]在本申请的一些实施例中,所述数据压缩模块对所述采集数据项进行选择压缩,是采用旋转门压缩算法。
[0019]在本申请的一些实施例中,所述旋转门压缩算法参数包括压缩偏差,所述压缩偏差是绝对误差值,依据经验设定;在绝对误差值范围内,数据项被压缩;在绝对误差值范围外,数据项不能压缩。
[0020]在本申请的一些实施例中,所述旋转门压缩算法参数还包括斜率,所述斜率包括上斜率、下斜率和中间斜率,计算公式如下:
[0021]上斜率K1=(当前数据项数值

(上一保存数据项数值

压缩偏差))/(当前数据项时间

上一保存数据项时间);
[0022]下斜率K2=(当前数据项数值

(上一保存数据项数值+压缩偏差))/(当前数据项时间

上一保存数据项时间);
[0023]中间斜率K=(当前数据项数值

待保存数据项数值)/(当前数据项时间

待保存数据项时间);
[0024]压缩和存储准则如下:
[0025]如果K2≤K≤K1,待保存数据项被压缩;
[0026]如果K<K2或者K>K1,待保存数据项被存储。
[0027]在本申请的一些实施例中,所述旋转门压缩算法的步骤如下:
[0028]S20:所述数据采集模块对所述元数据项进行采集,得到采集数据项;
[0029]S30:判断采集数据项是否处于死区范围:a、死区范围内,不用保存,进行压缩;b、死区范围外,则进入步骤S40;
[0030]S40:接着计算所述死区范围外的所述采集数据项的上中下三个斜率,对采集数据项的上中下斜率大小进行判断:a、如果斜率满足K2≤K≤K1,则对采集数据项进行压缩;b、如果K<K2或者K>K1,采集数据项信息保存,存入缓存池,压缩形成数据块,并计算数据块的压缩比;同时,返回步骤S30,直到所有采集数据项全部结束;
[0031]S50:对所述数据块的压缩比进行判断:a、达到阈值,进行数据块压缩;b、未达到阈值,返回继续对其他数据块压缩比进行判断。
[0032]在本申请的一些实施例中,所述数据块符合预设存储要求,则将所述数据块进行再次压缩,形成压缩文件,是采用LZ4压缩算法。
[0033]在本申请的一些实施例中,所述LZ4压缩算法包括如下步骤:
[0034]S100:对所述缓存池内的所述数据块进行扫描,扫描窗口采用4字节的移动步长查找匹配字符;
[0035]S200:对所述匹配字符进行判断:a、不符合匹配字符,返回步骤S100的匹配过程;b、符合匹配字符,则继续向后匹配,并计算出匹配长度和字符串长度,最终输出数据;
[0036]S300:判断所述缓存池内的符合预设要求的所述数据块是否扫描结束:a、符合预设要求的所述数据块扫描结束,则程序终止;b、符合预设要求的所述数据块扫描未结束,则重复步骤S100的扫描匹配过程。
[0037]在本申请的一些实施例中,所述数据采集模块对所述元数据项进行选择性采集包
括如下步骤:
[0038]S21:服务器上电启动,创建接收线程,判断网络中是否有元数据项:a、网络中没有元数据项,则返回到创建接收线程;b、网络中有元数据项,根据内部通讯协议进行元数据项校验;
[0039]S22:判断元数据项是否符合内部通讯协议:a、元数据项校验不符合内部通讯协议,则进入步骤S21中继续判断网络中是否有其他元数据项;b、元数据项校验符合内部通讯协议,则对元数据项的变化进行校验;
[0040]S23:对元数据项的变化进行判断:a、元数据项的变化没有超过阈值,则进入步骤S21中判断网络中是否有其他元数据项;b、元数据项的变化超过阈值,则数据项写入缓存池,完成数据项采集。
[0041]在本申请的一些实施例中,所述数据块进行选择存储的频率线程包括如下步骤:
[0042]S31:服务器创建采样线程,对缓存池内的数据块进行校验;
[0043]S32:判断缓存池内是否有数据块:a、没有数据块,则对其他的缓存池进行数据块校验;b、有数据块,则需要对数据块存储本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库控制方法,其特征在于,包括如下步骤:S1:数据读取模块对配置数据库、基础数据库内的数据项依次逐个读取,得到元数据项,每读取一个则进入步骤S2;S2:数据采集模块对所述元数据项进行选择性采集,如果所述元数据项符合预设采集要求,则将所述元数据项进行采集,得到采集数据项,进入步骤S3,如果所述元数据项不符合预设采集要求,则将所述元数据项进行舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束;S3:数据压缩模块对所述采集数据项进行选择压缩,如果所述采集数据项符合预设压缩要求,则将所述采集数据项进行压缩形成数据块,进入步骤S4,如果所述采集数据项不符合预设压缩要求,则将所述采集数据项进行舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束;S4:缓存池对所述数据块进行选择存储,如果所述数据块符合预设存储要求,则将所述数据块进行再次压缩,形成压缩文件,然后进行存储,如果所述数据块不符合预设存储要求,则将所述数据块舍弃,返回步骤S1读取下一个数据项,直至所有的数据项全部结束。2.根据权利要求1所述的数据库控制方法,其特征在于,所述数据压缩模块对所述采集数据项进行选择压缩,是采用旋转门压缩算法。3.根据权利要求2所述的数据库控制方法,其特征在于,所述旋转门压缩算法参数包括压缩偏差,所述压缩偏差是绝对误差值,依据经验设定;在绝对误差值范围内,数据项被压缩;在绝对误差值范围外,数据项不能压缩。4.根据权利要求3所述的数据库控制方法,其特征在于,所述旋转门压缩算法参数还包括斜率,所述斜率包括上斜率、下斜率和中间斜率,计算公式如下:上斜率K1=(当前数据项数值

(上一保存数据项数值

压缩偏差))/(当前数据项时间

上一保存数据项时间);下斜率K2=(当前数据项数值

(上一保存数据项数值+压缩偏差))/(当前数据项时间

上一保存数据项时间);中间斜率K=(当前数据项数值

待保存数据项数值)/(当前数据项时间

待保存数据项时间);压缩和存储准则如下:如果K2≤K≤K1,待保存数据项被压缩;如果K<K2或者K>K1,待保存数据项被存储。5.根据权利要求4所述的数据库控制方法,其特征在于,所述旋转门压缩算法的步骤如下:S20:所述数据采集模块对所述元数据项进行采集,得到采集数据项;S30:判断采集数据项是否处于死区范围:a、死区范围内,不用保存,进行压缩;b、死区范围外,则进入步骤S40;S40:接着计算所述死区范围外的所述采集数据项的上中下三个斜率,对采集数据项的上中下斜率大小进行判断:a、如果斜率满足K2≤K≤K1,则对采集数据项进行压缩;b、如果K<K2或者K>K1,采集数据项信息保存,存入缓存池,压缩形成数据块,并计算数据块的压缩比;同时,返回步骤S30,直到所有采集数据项全部结束;
S50:对所述数据块的...

【专利技术属性】
技术研发人员:沈璐璐许峰聂晓崧祝成成梁雅慧肖丹丹
申请(专利权)人:中国船舶重工集团公司第七一一研究所
类型:发明
国别省市:

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

1