![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
#+ Flink学习
Flink是构建在数据流之上的有状态计算的流计算框架,通常被⼈们理解为是 第三代 ⼤数据分析⽅案。
不会秃头的小白菜
这个作者很懒,什么都没留下…
展开
-
Flink EventTime Window
Flink流计算传输中⽀持多种时间概念:ProcessingTime/EventTime/IngestionTime如果Flink算⼦使⽤的时候不做特殊设定,默认使⽤的是ProcessingTime。其中和ProcessingTime类似IngestionTime都是由系统⾃动产⽣,不同的是IngestionTime是由DataSource源产⽣⽽ProcessingTime由计算算⼦产⽣。因...原创 2020-03-15 23:03:10 · 126 阅读 · 0 评论 -
有关Flink窗口计算中的剔除器(Evictors)
Flink的窗⼝模型允许除了WindowAssigner和Trigger之外还指定⼀个可选的Evictor。可以使⽤evictor(…)⽅法来完成此操作。Evictors可以在触发器触发后,应⽤Window Function之前或之后从窗⼝中删除元素。public interface Evictor<T, W extends Window> extends Serializable ...原创 2020-03-15 21:09:44 · 794 阅读 · 0 评论 -
关于Flink窗口计算的触发器(Trigger)
Trigger决定了什么时候窗⼝准备就绪了,⼀旦窗⼝准备就绪就可以使⽤WindowFunction进⾏计算。每⼀个 WindowAssigner 都会有⼀个默认的Trigger。如果默认的Trigger不满⾜⽤户的需求⽤户可以⾃定义Trigger。触发器接⼝具有五种⽅法,这些⽅法允许触发器对不同事件做出反应:public abstract class Trigger<T, W exte...原创 2020-03-15 16:41:06 · 939 阅读 · 0 评论 -
Flink Managed Operator State
Managed Operator StateFlink提供了基于keyed stream操作符状态称为keyedstate,对于⼀些⾮keyed stream的操作中使⽤的状态统称为Operator State,如果⽤户希望使Operator State需要实现通⽤的CheckpointedFunction接⼝或者ListCheckpointed。CheckpointedFunctionCh...原创 2020-03-10 20:03:34 · 255 阅读 · 1 评论 -
Flink Checkpoint & Savepoint 机制
由于Flink是⼀个有状态计算的流服务,因此状态的管理和容错是⾮常重要的。为了保证程序的健壮性,Flink提出Checkpoint机制,该机制⽤于持久化计算节点的状态数据,继⽽实现Flink故障恢复。所谓的Checkpoint机制指的是Flink会定期的持久化的状态数据。将状态数据持久化到远程⽂件系统(取决于State backend),例如HDFS,该检查点协调或者发起是由JobManager负...原创 2020-03-10 21:10:52 · 345 阅读 · 0 评论 -
Flink State Backend
Flink指定多种State Backend实现,State Backend指定了状态数据(检查点数据)存储的位置信息。配置Flink的状态后端的⽅式有两种:每个计算独⽴状态后端val env = StreamExecutionEnvironment.getExecutionEnvironment()env.setStateBackend(...)全局默认状态后端,需要在flink...原创 2020-03-10 22:06:21 · 196 阅读 · 0 评论 -
Flink Queryable State 配置、激活及相关查询代码
ArchitectureClient连接其中的⼀个代理服务区然后发送查询请求给Proxy服务器,查询指定key所对应的状态数据,底层Flink按照KeyGroup的⽅式管理Keyed State,这些KeyGroup被分配给了所有的TaskMnager的服务。每个TaskManage服务多个KeyGroup状态的存储。为了找到查询key所在的KeyGroup所TaskManager服务,Prox...原创 2020-03-11 19:46:25 · 629 阅读 · 1 评论 -
Flink Broadcast State Pattern (广播状态)分析
⼴播状态是Flink提供的第三种状态共享的场景。通常需要将⼀个吞吐量⽐较⼩的流中状态数据进⾏⼴播给下游的任务,另外⼀个流可以以只读的形式读取⼴播状态。案例剖析1. DataStream链接 BroadcastStream//第⼀个流类型 第⼆个流类型 输出类型classUserDefineBroadcastProcessFunction(tag:OutputTag[String],msd...原创 2020-03-11 20:18:04 · 358 阅读 · 1 评论 -
浅谈Flink 窗口计算(Windows)
窗⼝计算是流计算的核⼼,窗⼝将流数据切分成有限⼤⼩的“buckets”,我们可以对这个“buckets”中的有限数据做运算。在Flink中整体将窗⼝计算按分为两⼤类:keyedstream窗⼝、datastream窗⼝,以下是代码结构:Keyed Windows:Non-Keyed Windows:Window Lifecycle (窗口生命周期)当有第⼀个元素落⼊到窗⼝中的时候窗...原创 2020-03-15 11:42:57 · 503 阅读 · 0 评论