
Flink
文章平均质量分 61
flink
王一1995
不想介绍
展开
-
flink篇——Time和watermark机制
优化方案:Flink允许跳过对齐这一步,或者说一个算子子任务不需要等待所有上游通道的Checkpoint Barrier,直接将Checkpoint Barrier广播,执行快照并继续处理后续流入的数据。为了保证数据一致性,Flink必须将那些较慢的数据流中的元素也一起快照,一旦重启,这些元素会被重新处理一遍。周期性地生成 Watermark 的生成,默认是 200ms。(1)每次进行Checkpoint前,都需要暂停处理新流入数据,然后开始执行快照,假如状态比较大,一次快照可能长达几秒甚至几分钟。原创 2022-08-22 10:33:19 · 790 阅读 · 0 评论 -
Flink的job提交全流程及web ui提交任务方式
Flink 根据用户提交的代码生成 StreamGraph,经过优化生成 JobGraph,然后提交给 JobManager 进行处理,JobManager 会根据 JobGraph 生成 ExecutionGraph,ExecutionGraph 是 Flink 调度最核心的数据结构,JobManager 根据 ExecutionGraph 对 Job 进行调度。其实本来觉得这篇文章不需要写的,但是在网上搜了一下,有的提交的时候参数写的不全,还有的居然是收费文章!随后左边的就可以看见tm和jm的状态了。原创 2022-08-19 11:32:09 · 3765 阅读 · 0 评论 -
Flink CDC介绍和简单实用
CDC是Change Data Capture(变更数据获取)的简称。核心思想是,监测并捕获数据库的变动(包括数据或数据表的插入、更新以及删除等),将这些变更按发生的顺序完整记录下来,写入到消息中间件中以供其他服务进行订阅及消费。...............原创 2022-08-09 18:01:16 · 3998 阅读 · 1 评论 -
[flink]flink on yarn和standalone模式简单配置
注:jobmanager.memory.heap.size和jobmanager.memory.process.size二选一,且后者比前者大。classloader.check-leaked-classloader: false和taskmanager.memory.process.size: 5120m是程序启动时候遇到的问题,所以配置上env.hadoop.conf.dir: /opt/hadoop/etc/hadoop,env.java.home: /usr/lib/jvm/java-1.8原创 2022-05-11 18:15:29 · 2952 阅读 · 0 评论 -
基于cdh的flink程序7天认证失效
集群开着kerberos认证的,如果开启着checkpoint,我们的State backend用的是hdfs,七天以后token会失效,到时候报错token失效,checkpoint是提交不到hdfs上的提交参数的时候设置一下:nohup flink run -yD security.kerberos.login.principal=<****> -yD security.kerberos.login.keytab=<keytab路径> -d -m yarn-cluster -原创 2021-11-17 10:34:43 · 1637 阅读 · 1 评论 -
[Flink1.12版本]通过源码分析min和minBy算子的区别
主要区别:keyby可以传入两个参数 ①比较的值的位置 ②布尔值;min只能传入一个参数而二者真正的区别就是第二个参数,keyby的第二个参数为false且两次输入的数据值相等的时候,可以更新为最新字段,如a,a,1 a,b,1得到的结果是a,b,1,第二个参数默认值为true,是true就会返回原先的值。下图是通过debug的结果(值1是原先的值,值2是输入的新值):注:o1是已经存在的值,o2是输入值,源码中是将o1与o2进行比较public class MinByDemo { p原创 2021-04-22 19:50:10 · 417 阅读 · 0 评论 -
[flink1.9学习]新功能与改进——细粒度批作业恢复
注:flink1.9的新功能与改进均是参考官方文档,以此来补充自己的知识面,顺便以博客的形式为今后复习细粒度批作业恢复 (FLIP-1)批作业(DataSet、Table API 和 SQL)从 task 失败中恢复的时间被显著缩短了。在 Flink 1.9 之前,批处理作业中的 task 失败是通过取消所有 task 并重新启动整个作业来恢复的,即作业从头开始,所有进度都会废弃。在 1.9 版本中,Flink 将中间结果保留在网络 shuffle 的边缘,并使用这些数据恢复仅受故障影响的 tasks原创 2020-10-14 14:07:50 · 266 阅读 · 0 评论 -
Flink程序:recursive.file.enumeration超时问题
背景:使用flink批作业 读取存在hdfs上的日志 需要迭代读取目录下所有文件的内容源代码: Configuration conf = new Configuration(); conf.setBoolean("recursive.file.enumeration", true); DataSet<String> in = env.readTextFile(urlWithDate).withParameters(conf);但是由于日志数量原创 2020-08-21 10:08:28 · 449 阅读 · 0 评论 -
实践+总结:Apache avro根据*.avsc文件提取对象的四种方式
这几天在弄一件事情,用flink在kafka中读取数据,kafka中的数据是avro序列化的。按照正常的思维就是需要数据解析,得到文件里面数据结构的bean的对象,但对于复杂结构的数据通过手动去编写bean对象是很麻烦的。刚好Apache avro提供了一种工具,如下图把上图中的两个jar包放到java目录下,就可以写脚本了 java -jar avro-tools-1.7.7.jar compile schema user.avsc java.参考文章:大致过程参考另一种方式参考文章:通过原创 2020-06-22 22:17:12 · 1429 阅读 · 0 评论 -
追源索骥:透过源码看懂Flink核心框架的执行流程--来自GitHub
追源索骥:透过源码看懂Flink核心框架的执行流程标签(空格分隔): flink文章目录追源索骥:透过源码看懂Flink核心框架的执行流程前言1.从 ~~Hello,World~~ WordCount开始1.1 flink执行环境1.2 算子(Operator)的注册(声明)1.3 程序的执行1.3.1 本地模式下的execute方法1.3.2 远程模式(RemoteEnvironment)...原创 2020-04-22 22:00:12 · 801 阅读 · 1 评论