一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于Flink的实时数据质量检测方法及系统与流程

2022-02-20 04:22:49 来源:中国专利 TAG:

基于flink的实时数据质量检测方法及系统
技术领域
1.本发明涉及数据质量检测领域,具体地说是一种基于flink的实时数据质量检测方法及系统。


背景技术:

2.在数据来源多样化的情况下,数据的可靠性和时效性,直接影响统计分析是否能得到正确的结论,数据分析和数据挖掘都离不开高质量的数据,如果数据不具备完整性、规划性以及一致性,那么看到的问题的本质或所得的结论是有所偏失的。
3.就目前实时数据质量检测的方法来看,一般采用流处理框架。流框架依据的实现方式分为两大类:
4.第一类是native streaming,这类引擎中所有数据在到来的时候都会被立即处理,其中的代表就是storm与flink;
5.第二类是micro-batch,数据流被切分为一个一个小的批次,然后再逐个被引擎处理,其中的代表就是spark。
6.目前,大多实时数据质量检测的技术选型为spark streaming,可以达到准实时的响应,容错代价低,可以让批操作与流操作相结合,但是基于它的实现原理,不可避免的会有延迟,无法达到准确实时性。
7.目前大多数框架的时间窗口计算,都采用当前时间系统,以时间为单位进行的聚合计算只能反映数据到达计算引擎的时间,并不是实际业务时间。
8.故如何实现大批量有界或无界数据流的实时数据质量检测,丰富的时间语义支持,保证数据处理的实时性是目前亟待解决的技术问题。


技术实现要素:

9.本发明的技术任务是提供一种基于flink的实时数据质量检测方法及系统,来解决如何实现大批量有界或无界数据流的实时数据质量检测,丰富的时间语义支持,保证数据处理的实时性的问题。
10.本发明的技术任务是按以下方式实现的,一种基于flink的实时数据质量检测方法,该方法具体如下:
11.配置质量检测规则;
12.配置flink窗口配置;
13.选择待检测的数据源、数据表及待检测字段,并为待检测字段配置相应的检测规则;
14.将待检测数据源与检测规则以及flink窗口配置完成后,形成一条任务,并将该任务发送到任务调度中心进行统一调度;
15.调度中心管理并调度质量检测任务,任务被触发后调用flink数据处理模块执行实际的数据质量检测。
16.作为优选,质量检测规则包括内置通用规则和自定义规则;
17.其中,内置通用规则包括数据的格式校验、数据范围校验、空值校验、数据的唯一性校验、完整性校验和正则表达式校验;
18.自定义规则按照业务需要编写检测方法。
19.更优地,flink窗口配置包括窗口类型和延时或统计时间类型;
20.窗口类型包括滑动窗口或翻滚窗口;
21.延时或统计时间类型包括处理时间或业务时间。
22.一种基于flink的实时数据质量检测系统,该系统包括,
23.规则定制模块,用于数据质量检测的规则定制;
24.任务配置模块,用于配置待检测数据源、flink窗口配置及数据源与检测规则的关联,形成检测任务;
25.任务调度模块,用于管理所有任务以及任务的触发和停止;
26.flink数据处理模块,用于实际执行数据质量检测;
27.调度中心,用于管理与调度质量检测任务。
28.作为优选,所述规则定制模块包括内置通用规则和自定义规则;
29.其中,内置通用规则包括数据的格式校验、数据范围校验、空值校验、数据的唯一性校验、完整性校验和正则表达式校验;
30.自定义规则按照业务需要编写检测方法。
31.作为优选,所述flink窗口配置包括窗口类型和延时或统计时间类型;
32.窗口类型包括滑动窗口或翻滚窗口;
33.延时或统计时间类型包括处理时间或业务时间。
34.作为优选,所述调度中心触发任务后,调用flink数据处理模块,通过任务id获取待检测数据源以及各类配置信息,再按照规则对数据进行实时的数据质量检测。
35.更优地,该系统的工作过程具体如下:
36.(1)、用户通过前端页面(客户端)配置检测规则、flink窗口信息及数据源,同时配置告警信息;
37.(2)、调度中心管理所有已经配置的任务,任务触发后执行flink数据处理模块,通过任务id获取待检测数据源以及各类配置信息,再按照规则对数据进行实时的数据质量检测;
38.(3)、任务执行的过程中,根据业务需要配置任务监听与日志。
39.一种电子设备,包括:存储器和至少一个处理器;
40.其中,所述存储器上存储有计算机程序;
41.所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的基于flink的实时数据质量检测方法。
42.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的基于flink的实时数据质量检测方法。
43.本发明的基于flink的实时数据质量检测方法及系统具有以下优点:
44.(一)本发明解决了大批量有界或无界数据流的实时数据质量检测的问题,通过对检测规则的定制、flink窗口的配置等灵活多变的配置项,可以完成大数据量的实时数据质
量检测;例如对交通相关部门的过车数据进行实时的数据质量检测,可以实时高效的对过车数据进行分流与清洗,错误数据入库帮助相关部门分析错误数据的成因,正确数据入库帮助相关部门做出合理正确决策等;
45.(二)目前大多数框架的时间窗口计算,都采用当前时间系统,以时间为单位进行的聚合计算只能反映数据到达计算引擎的时间,并不是实际业务时间,而本发明的流框架选择flink,flink提供了丰富的时间语义支持,保证了数据处理的实时性;
46.(三)本发明真正实时的对流数据进行质量检测,同时提供了较为灵活的规则配置与调度配置,时效性与灵活性兼备。
附图说明
47.下面结合附图对本发明进一步说明。
48.附图1为基于flink的实时数据质量检测方法的流程框图;
49.附图2为基于flink的实时数据质量检测系统的整体架构示意图;
50.附图3为基于flink的实时数据质量检测系统的工作过程的流程框图。
具体实施方式
51.参照说明书附图和具体实施例对本发明的基于flink的实时数据质量检测方法及系统作以下详细地说明。
52.实施例1:
53.如附图1所示,本发明的基于flink的实时数据质量检测方法,该方法具体如下:
54.s1、配置质量检测规则;
55.s2、配置flink窗口配置;
56.s3、选择待检测的数据源、数据表及待检测字段,并为待检测字段配置相应的检测规则;
57.s4、将待检测数据源与检测规则以及flink窗口配置完成后,形成一条任务,并将该任务发送到任务调度中心进行统一调度;
58.s5、调度中心管理并调度质量检测任务,任务被触发后调用flink数据处理模块执行实际的数据质量检测。
59.本实施例中步骤s1的质量检测规则包括内置通用规则和自定义规则;
60.其中,内置通用规则包括数据的格式校验、数据范围校验、空值校验、数据的唯一性校验、完整性校验和正则表达式校验;
61.自定义规则按照业务需要编写检测方法。
62.本实施例中步骤s2的flink窗口配置包括窗口类型和延时或统计时间类型;
63.窗口类型包括滑动窗口或翻滚窗口;
64.延时或统计时间类型包括处理时间或业务时间。
65.实施例2:
66.本发明的基于flink的实时数据质量检测系统,该系统包括,
67.规则定制模块,用于数据质量检测的规则定制;
68.任务配置模块,用于配置待检测数据源、flink窗口配置及数据源与检测规则的关
联,形成检测任务;
69.任务调度模块,用于管理所有任务以及任务的触发和停止;
70.flink数据处理模块,用于实际执行数据质量检测;
71.调度中心,用于管理与调度质量检测任务。
72.如附图2所示,本实施例中的规则定制模块包括内置通用规则和自定义规则;
73.其中,内置通用规则包括数据的格式校验、数据范围校验、空值校验、数据的唯一性校验、完整性校验和正则表达式校验;
74.自定义规则按照业务需要编写检测方法。
75.本实施例中的flink窗口配置包括窗口类型和延时或统计时间类型;
76.窗口类型包括滑动窗口或翻滚窗口;
77.延时或统计时间类型包括处理时间或业务时间。
78.作为优选,所述调度中心触发任务后,调用flink数据处理模块,通过任务id获取待检测数据源以及各类配置信息,再按照规则对数据进行实时的数据质量检测。
79.如附图3所示,该系统的工作过程具体如下:
80.(1)、用户通过前端页面(客户端)配置检测规则、flink窗口信息及数据源,同时配置告警信息;
81.(2)、调度中心管理所有已经配置的任务,任务触发后执行flink数据处理模块,通过任务id获取待检测数据源以及各类配置信息,再按照规则对数据进行实时的数据质量检测;
82.(3)、任务执行的过程中,根据业务需要配置任务监听与日志。
83.实施例3:
84.本发明实施例还提供了一种电子设备,包括:存储器和至少一个处理器;
85.其中,所述存储器存储计算机执行指令;
86.所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行本发明任一实施例中的基于flink的实时数据质量检测方法。
87.实施例4:
88.本发明实施例还提供了一种计算机可读存储介质,其中存储有多条指令,指令由处理器加载,使处理器执行本发明任一实施例中的基于flink的实时数据质量检测方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
89.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
90.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-rym、dvd-rw、dvd rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
91.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
92.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
93.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献