一种基于Flink的区域布控方法和设备与流程

文档序号:36408000发布日期:2023-12-16 16:42阅读:48来源:国知局
一种基于的制作方法

本发明涉及数据处理技术,尤其涉及一种基于flink的区域布控方法和设备。


背景技术:

1、现有技术方案中,常用的实时计算框架有sparkstreaming、flink、storm,在此基础上开发实时的数据处理代码,这种模式开发周期较长,对开发者的技术要求较高,开发效率较低,功能间耦合度高,代码可复用性差。上述实时计算框架不适合用于区域布控方法,来实时获取布控对象的预警信息,分析布控对象的流动轨迹。因此需要更便捷、更高效的区域布控方法。

2、与此同时,布控获取的实时预警信息,由于数据量多,数据时间跨度大,如何快速的多维度的获取不同预警数据的统计信息,实时追踪和复现布控对象的活动轨迹,这也是当前需要解决的问题。


技术实现思路

1、本发明的目的在于克服现有技术中的至少一种缺陷,提出一种基于flink的区域布控方法和设备。

2、为实现上述目的,本发明提供一种基于flink的区域布控方法,包括如下步骤:

3、通过flink cdc创建第一同步虚拟表,获取业务端下发的至mysql中的布控信息,并对第一同步虚拟表中的布控信息进行同步变更;

4、通过flink cdc创建第二同步虚拟表,从用于实时传输抓拍数据信息的第一kafka中读取抓拍数据信息;

5、将第一同步虚拟表中的布控信息与第二同步虚拟表中的抓拍数据信息进行比对,得到符合要求的预警数据;

6、将预警数据同步输出至第一数据库,用于供业务端详细结果查询。

7、进一步地,布控信息包括人员类别布控信息、车辆布控信息、mac布控信息;

8、抓拍数据信息,包括:车辆抓拍数据、人脸抓拍数据、mac采集信息。

9、进一步地,通过flink cdc创建第一同步虚拟表,获取业务端下发的至mysql中的布控信息,并对第一同步虚拟表中的布控信息进行同步变更,具体包括:通过flink cdc创建第一同步虚拟表,实时监听mysql中布控信息的变更,从所述第一同步虚拟表中过滤失效的布控信息,获取新增的布控信息,及时同步修改更新的布控信息,确保flink中虚拟表与mysql中业务表数据的有效性和一致性;

10、和/或,

11、通过flink cdc创建第二同步虚拟表,从用于实时传输抓拍数据信息的kafka中读取抓拍数据信息,具体包括:对于车辆抓拍数据、人脸抓拍数据、mac采集信息不同主题数据,使用flink cdc分别创建各自对应的车辆抓拍虚拟表、人脸抓拍虚拟表、mac采集虚拟表,车辆抓拍虚拟表接收同步kafka的车辆抓拍数据;人脸抓拍虚拟表接收同步人脸抓拍数据;mac采集虚拟表接收同步mac采集信息。

12、进一步地,将第一同步虚拟表中的布控信息与第二同步虚拟表中的抓拍数据信息进行比对,从抓拍数据信息中筛选出符合布控信息要求的预警数据,具体包括:

13、使用flink sql中的filter()函数过滤布控信息、抓拍数据信息中的无效数据;

14、使用flink sql中的双流join操作,对有效布控信息按照布控内容进行不同类别的预聚合,包括:对于人员类别布控信息,将与人脸抓拍虚拟表数据聚合;对于车辆布控信息,将与车辆抓拍虚拟表数据聚合;对于mac布控信息,将与mac采集虚拟表数据聚合。

15、进一步地,使用flink sql中的filter()函数过滤布控信息、抓拍数据信息中的无效数据,具体包括:对于布控信息,过滤过期和已撤控的布控数据,对于抓拍数据信息中的车辆抓拍数据,从第二同步虚拟表中过滤车牌号为空,采集设备id不在区域布控列表内,数据采集时间不在区域布控时间内的数据,对于抓拍数据信息中的人脸抓拍数据,从第二同步虚拟表中过滤身份证号为空、采集设备id不在区域布控列表内,数据采集时间不在区域布控时间内的数据,对于抓拍数据信息中的mac采集信息,从第二同步虚拟表中过滤mac为空、mac所属人身份证号为空,采集设备id不在区域布控列表内,数据采集时间不在区域布控时间内的数据。

16、进一步地,第一数据库为es数据库,将预警数据同步输出至第一数据库,具体包括:使用flink cdc创建es输出数据同步表,分别将人脸抓拍虚拟表数据、车辆抓拍虚拟表数据、mac采集虚拟表数据按照布控类别,存储至同一索引中。

17、进一步地,本发明的基于flink的区域布控方法还包括如下步骤:将预警数据同步写入第二kafka,将第二kafka的数据导入第二数据库中,在第二数据库分别创建aggregate模型表和duplicate模型表,aggregate模型表存储目标在不同采集设备的统计信息,duplicate模型表存储目标在不同时间的详细记录数据。

18、进一步地,将预警数据同步写入第二kafka,具体包括:使用flink cdc创建kafka输出数据同步表,分别将人脸抓拍虚拟表数据、车辆抓拍虚拟表数据、mac采集虚拟表数据按照布控类别,存储至同一主题中,设置connector为upsert-kafka,可自动覆盖更新数据,设置key.format和value.format为json,指定json格式数据,为数据存储做准备。

19、进一步地,将第二kafka的数据使用routine load导入第二数据库中,具体包括:在第二数据库中创建一个kafka例行导入任务,订阅第二kafka的数据,通过不断的从第二kafka读取数据,将所述数据导入到第二数据库中;

20、和/或,

21、第二数据库为doris数据库。

22、本发明公开了一种基于flink的区域布控设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于flink的区域布控程序,所述基于flink的区域布控程序配置为实现如上任一项所述的基于flink的区域布控方法。

23、本发明至少具有如下有益效果:本发明通过获取业务端下发的至mysql中待布控信息,另外,kafka中实时传输抓拍数据;使用flink cdc创建同步虚拟表,同步变更的布控数据;新建另一个flink cdc任务读取kafka中实时抓拍数据;使用flink sql比对两个任务中的数据,根据布控信息从抓拍数据中筛选出符合布控信息要求的抓拍数据,获取区域布控中涉及的关键信息;将预警数据同步输出至es,用于业务端查询详细结果。同时,结果同步写入kafka;kafka数据使用routine load导入doris中,在doris分别创建aggregate模型表和duplicate模型表,用于存储目标在不同采集设备的统计信息、目标在不同时间的详细记录数据。本发明利用flinkcdc实时获取数据源的变更,及时有效的响应用户请求,doris存储海量业务数据,从多角度分析不同场景下的业务使用需求,分析布控对象的轨迹信息,及时获取多维度的预警数据,对追踪和复现布控对象的流动轨迹有重要意义。

24、本发明能根据业务需求快速查询目标数据详情,也可多维度,多聚合地反映不同目标数据的统计信息,实现快速查询和统计信息性能隔离,提高了数据的时效性和一致性,可以快速获取布控目标的轨迹信息。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1