一种时序数据库的缺失数据智能匹配方法与流程
- 国知局
- 2024-07-31 23:17:46
本发明涉及时序数据处理,尤其涉及一种时序数据库的缺失数据智能匹配方法。
背景技术:
1、随着工业控制和物联网行业的迅猛发展,物联网设备产生的数据量呈爆炸式增长。这些数据通过各种传感器进行收集,将收集到的数据存入时序数据库中。这些数据有相对稳定的采集频率、采集频率较快、测量数据点多、数据量庞大等特点。而且在时序数据库中,所有采集的数据都是有采集时间的,这些数据严格以时间为主键进行排序。
2、目前来说,在关系型数据库领域有着数据对比工具,可以针对两个库之间的差异进行提取,从而找到缺失数据,进行数据恢复,但是在时序数据库中基本不能适用。由于时序数据的采集频率快,数据量巨多,在某些场景中,例如车辆上的传感器,生产线的运行状态实时监测,高铁数据监测等,各类监测系统几乎均有成千上万的监测点,监测点每秒钟都产生数据,每天产生几十gb的数据量,一天的数据量可能就超过100亿条。
3、在这种情况下,针对时序数据库做数据同步或者数据迁移时,由于中途程序故障(网络卡顿、重启、等待等各类突发问题)造成的目标端缺失好几段的数据,若使用现有关系库对比技术进行查找,关于数据模型就会产生很大问题,而且在时序数据库如此庞大的数据下进行对比的效率极低,很难快速的找到缺失数据的时间范围,故传统对比技术基本不能适用于时序数据库当中。
技术实现思路
1、基于上述技术问题,本发明提出了一种时序数据库的缺失数据智能匹配方法,解决时序数据库中缺失数据的匹配查询问题。
2、一种时序数据库的缺失数据智能匹配方法,包括以下步骤:
3、步骤s1:配置文件,用户添加文件源端和目标端配置信息以及表名匹配级别;
4、步骤s2:对添加的匹配级别进行判断确认;
5、步骤s3:根据时间范围和数据量,对各表名的数据做分段处理;
6、步骤s4:对分段后的各段数据分别进行缺失数据的查找,获取数据缺失情况;
7、步骤s5:获取完成后,用户选择是否将缺失数据补全到目标数据库;若需要,则直接将文件中的数据导入到目标端,导入完成后,再次对比源端和目标端数据是否一致,确认缺失数据是否全部获取。
8、进一步,所述文件源端和目标端配置信息还包括:源端和目标端的连接信息和数据采集频率。
9、进一步,所述表名匹配级别若初始化为0,则表示默认库级匹配级别;若为表级匹配级别,则传入tbname表名库。
10、进一步,所述表级匹配级别,可直接对该表做确实数据的查找;所述库级匹配级别,在元数据系统表中获取这个库中的子表信息,然后逐个对获取的子表进行缺失数据的查找;所述获取的子表类型包括普通表和超级表。
11、进一步,所述步骤s3具体包括:
12、步骤s31:从源端获取各表数据的数据总量和查询范围,分别查询源端和目标端的数据总量,对比查询结果看是否相同,相同则退出,返回结果为该表无缺失数据;若结果不同,则需获取源端总数据以及数据时间范围,则进行分段化数据处理;
13、步骤s32:依据数据总量和查询范围共同确认数据的分段范围及查询线程,计算确认规则参数β,根据确认规则参数β分别判断普通表和超级表分段时间,所述确认规则参数β计算式为:
14、其中,数据时间范围单位为分钟。
15、进一步,所述普通表分段时间的判断具体包括:若β<1000,则分段时间设置为一小时;若β>1000,则分段时间设置为半小时。
16、进一步,所述超级表分段时间的判断具体包括:若β<100w,则分段时间设置为一小时;若100w<β<600w,则分段时间设置为半小时;若β>600w,则分段时间设置为十分钟。
17、进一步,所述步骤s4具体包括:
18、步骤s41:使用会话窗口来采集故障后的数据的时间戳,会话窗口根据记录的时间戳主键的值来确定是否属于同一个会话;
19、步骤s42:设置时间间隔为t,上下两条时间跨度不超过t即视为一个窗口,若在段中只有一个窗口则说明数据没有缺失,超过一个窗口即为数据缺失;
20、步骤s43:在目标端找到缺失的范围,将缺失的范围生成一条查询sql语句发往源端进行查询,最终将查询到的结果存放在文件当中。
21、进一步,所述步骤s5还包括:分别对子表及普通表级别进行对比,若全部无差错,则缺失数据查找导入成功;若某表还存在缺失,则子表和普通表皆再次按照普通表的分段方式进行分段并查询。
22、本发明的有益效果:本发明提出了一种时序数据库的缺失数据智能匹配方法,具有以下技术优势:
23、高效性:依据时序数据的特点(严格按照时间排序)做针对性处理,以时间频率为窗口,并根据时间范围和数据量做分段多线程处理,无需和传统方法逐行对比数据就可快速定位缺失位置;
24、易用性:用户只需指定目标端和源端的连接信息,匹配级别信息即可自动去匹配到缺失数据,降低了使用门槛,提升用户的体验感;
25、数据完整性:缺失补齐后还进行二次检查补录,进一步保障了数据的完整性;
26、适用性:在传感器数据极多的时序场景都适用。
技术特征:1.一种时序数据库的缺失数据智能匹配方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述文件源端和目标端配置信息还包括:源端和目标端的连接信息和数据采集频率。
3.根据权利要求1所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述表名匹配级别若初始化为0,则表示默认库级匹配级别;若为表级匹配级别,则传入tbna me表名库。
4.根据权利要求3所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述表级匹配级别,可直接对该表做确实数据的查找;所述库级匹配级别,在元数据系统表中获取这个库中的子表信息,然后逐个对获取的子表进行缺失数据的查找;所述获取的子表类型包括普通表和超级表。
5.根据权利要求4所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述步骤s3具体包括:
6.根据权利要求5所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述普通表分段时间的判断具体包括:若β<1000,则分段时间设置为一小时;若β>1000,则分段时间设置为半小时。
7.根据权利要求5所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述超级表分段时间的判断具体包括:若β<100w,则分段时间设置为一小时;若100w<β<600w,则分段时间设置为半小时;若β>600w,则分段时间设置为十分钟。
8.根据权利要求1所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述步骤s4具体包括:
9.根据权利要求1所述的一种时序数据库的缺失数据智能匹配方法,其特征在于,所述步骤s5还包括:分别对子表及普通表级别进行对比,若全部无差错,则缺失数据查找导入成功;若某表还存在缺失,则子表和普通表皆再次按照普通表的分段方式进行分段并查询。
技术总结本发明公开了一种时序数据库的缺失数据智能匹配方法,包括:步骤S1:配置文件,用户添加文件源端和目标端配置信息以及表名匹配级别;步骤S2:对添加的匹配级别进行判断;步骤S3:根据时间范围和数据量,对各表名的数据做分段处理;步骤S4:对分段后的各段数据分别进行缺失数据的查找,获取数据缺失情况;步骤S5:获取完成后,用户选择是否将缺失数据补全到目标数据库;若需要,则直接将文件中的数据导入到目标端,导入完成后,再次对比源端和目标端数据是否一致,确认缺失数据是否全部获取。本方案根据时间范围和数据量做分段多线程处理,无需和传统方法逐行对比数据就可快速定位时序数据库数据缺失位置。技术研发人员:李尤兵,张力鑫,王松,国家宝,李黎受保护的技术使用者:成都虚谷伟业科技有限公司技术研发日:技术公布日:2024/7/29本文地址:https://www.jishuxx.com/zhuanli/20240730/196868.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。