针对规则改变,要想实时生效,有两种建议:
1. 利用维表join的功能来join数据库中的规则,flink内部可以配置一定的缓存策略。可以查看下Lookup的实现。
2. 也可以把规则打到kafka的表里,然后通过broadcast来广播最新的规则。
李军 <
[hidden email]> 于2020年9月4日周五 下午5:46写道:
> 您好!
>
>
> 可以使用Flink+drools 做。drools可以实时更新规则
> 2020-9-4
> | |
> 李军
> |
> |
>
[hidden email]
> |
> 签名由网易邮箱大师定制
> 在2020年8月6日 10:26,
[hidden email]<
[hidden email]> 写道:
> 由于需要实时告警功能,经调研,用flink 来实现是比较合适,但有几个问题没搞清楚,请大神们指教,感谢!
>
> 告警有分两部分:
> 一是告警规则的设置,数据存放在mysql,存储的格式是json
> {"times":5} ---就是事件发生大于5次就发出告警;
> {"temperature": 80} ---就是温度大于80就告警;
> 二是告警实现
> 1)上报的数据写入到kafka
> 2)flink读取kafka的数据,然后通过翻滚窗口进行计算,如果满足规则就生产告警。
>
>
> 现在遇到的问题是:
> 1. 当规则变更时,如何及时生效?
> 2.如果用flink CEP来是实现,对于同一数据源,能否在一个作业里让多个规则同时生效?
> 3.这一功能有最佳实践吗?
>
> 希望哪位解答一下,谢谢!
>
>
>
>