flink
文章平均质量分 90
落鱼...
乘风破浪会有时,你只欠一个坚持
展开
-
Flink之状态管理--容错--检查点
有状态的分布式流式处理流式处理流式处理简单地说就是一个无穷尽的数据源在持续的收数据,以代码作为数据处理的基础逻辑,然后输出,这就是流式处理的基本原理。分布式流式处理Stream需要做分区,设置相同的Key,并让同样的Key流到一个computition instance做相同的运算。有状态分布式流式处理代码中定义了变量X,X在数据处理过程会进行读写操作,变量X会影响最后的结果输出。比如计算每个使用者出现的次数,次数即所谓的状态。Checkpointing作..转载 2021-08-17 11:09:24 · 402 阅读 · 0 评论 -
flink on yarn Per-job模式High Availability 配置
背景:flink on yarn Per-job 模式下flink 程序会经常挂掉,直接原因是是对应节点上的 flink的 job manager 挂掉了,导致程序失败,flink的重启策略,只对于task manager生效 。 因此为保证稳定性,需要配置job manager 高可用。实现方案官方:当运行一个高可用的 YARN 集群时,我们不会运行多个 JobManager(ApplicationMaster) 实例,而是只运行一个,在失败时由 YARN 重新启动。确切的行为取决于您使用...原创 2021-07-22 14:58:41 · 2249 阅读 · 0 评论 -
flink java flatMap 使用java8 lambda写法
背景:利用java 8的lambda新特性,写flink可以简化一部分代码, 写一些类似于map,fliter,keyby 操作非常方便方便,只需要定义一个匿名函数,得到一个返回值, flatMap 操作时没有返回值的,通过Collector将数据进行输出到下一个算子。flatMap算子需要自己去实现方法FlatMapFunction<in,out> 定义输入输出参数类型,重写flatMap方法,将数据通过Collector进行输出 StreamExecutionEnvi..原创 2020-11-23 09:49:19 · 3188 阅读 · 0 评论 -
flink 自定义trigger
背景:一般情况下, 窗口操作都有默认的窗口触发器,有时候默认的trigger不满足条件,就需要我们自己去定义相应的trigger 去决定处理窗口数据的时间。Trigger抽象类触发器接口有五种方法,允许触发器对不同的事件作出反应onElement()添加到每个窗口的元素都会调用此方法。onEventTime()当注册的事件时间计时器触发时,将调用此方法。onProcessingTime()当注册的处理时间计时器触发时,将调用此方法。onMerge()与有状态触发器相关,并在两个触.原创 2020-11-23 16:50:03 · 1428 阅读 · 0 评论
分享