分享

Flink 1.9CEP例子代码诠释【续】

本帖最后由 阿飞 于 2019-11-19 17:46 编辑

问题导读

1.元组最大支持多少参数?
2.Flink CEP规则定义参数 begin、where、or、until、within等都在哪个包定义?
3.侧输出流该使用哪个类?



接上篇
Flink 1.9CEP例子代码诠释
https://www.aboutyun.com/forum.php?mod=viewthread&tid=28007


5. org.apache.flink.api.java.tuple.Tuple3

TupleTypeInfo任意的Flink tuple类型(支持Tuple1 to Tuple25)。 Flink tuples是固定长度固定类型的Java Tuple实现。
Tuple3的含义:
(1)三个参数的元组
(2)参数自定义
代码中Tuple3<String, String, String>,带表三个字符串类型的参数的元组。


6. org.apache.flink.cep.CEP工厂类

返回PatternStream对象
图片1.png

7. org.apache.flink.cep.PatternSelectFunction

定义select函数
图片2.png

图片3.png


8. org.apache.flink.cep.PatternStream(匹配流)
图片4.png


9. org.apache.flink.cep.PatternTimeoutFunction
超时处理接口
图片5.png

图片6.png


10. org.apache.flink.cep.pattern.Pattern
定义各种api包括: begin、where、or、until、within、next、followedBy、notFollowedBy、followedByAny、optional、oneOrMore、greedy、times、timesOrMore、allowCombinations、consecutive等函数


11.org.apache.flink.cep.pattern.conditions.IterativeCondition
定义filter、 TimeContext

图片7.png

12. org.apache.flink.streaming.api.environment.StreamExecutionEnvironment
StreamExecutionEnvironment是一个任务的启动的入口
图片8.png

13. org.apache.flink.streaming.api.windowing.time.Time
定义了milliseconds、seconds、minutes、hours、days

图片9.png


14. org.apache.flink.util.OutputTag
使用侧输出流时,首先定义一个OutputTag,这个OutputTag将用来标识一个侧输出流
图片10.png

15. java.util.List/java.util.Map;

java的集合框架为程序提供了一种处理对象组的标准方式。设计了一系列标准泛型接口:;

(1)List()接口,扩展了Collection接口,存储一个序列的元素(列表基于0的索引),可以包含重复的元素,但不能有null值

(2)Map(映射)接口:映射是将键映射到值的对象,一个映射不能包含重复的键;每个键最多只能映射一个值。



###############end分割线

后续将录制为视频,加入星球可获取,已经录制视频。




扫码可了解详情:




没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条