我是靠谱客的博主 激情朋友,最近开发中收集的这篇文章主要介绍(第六弹)Flink——Flink 触发器 Trigger 详解(附案例实战源码),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

       在Flink中,有两种窗口类型,一种是基于时间的窗口timeWindow,一种是基于计数的窗口countWindow。但是是否存在一种情况,如果使用timeWindow,在窗口时间内,出现大量的数据过来,对该窗口的计算产生很大的压力,那该怎么办呢?是否能够结合两种窗口进行触发呢?答案是可以的,trigger正可以达到你的要求。

 

Trigger的作用:

      就是通过自定义一些规则,例如窗口元素上限、时间上限等等,来触发窗口计算。 

 

对于trigger抽象类有如下几个方法:

      1、onElement()  :    进入窗口的每个元素都会调用该方法。

      2、onEventTime() : 事件时间timer触发的时候被调用。

      3、onProcessingTime() : 处理时间timer触发的时候会被调用。

      4、onMerge()  : 有状态的触发器相关,并在它们相应的窗口合并时合并两个触发器的状态,例如使用会话窗口。

      5、clear()  : 该方法主要是执行窗口的删除操作。

 

Flink也内置了一些触发器:

  • EventTimeTrigger:基于事件时间和watermark机制来对窗口进行触发计算。

  • ProcessingTimeTrigger:基于处理时间触发。

最后

以上就是激情朋友为你收集整理的(第六弹)Flink——Flink 触发器 Trigger 详解(附案例实战源码)的全部内容,希望文章能够帮你解决(第六弹)Flink——Flink 触发器 Trigger 详解(附案例实战源码)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部