![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
flink
文章平均质量分 69
闻风-堡
这个作者很懒,什么都没留下…
展开
-
flink源码分析-StreamGraph的生成
前提之一:DAG理解StreamGraph的前提之一就是要对DAG有向无环图有所了解。需要知道什么是DAG的顶点和边,以及怎么通过顶点和边构建DAG。前提之二:TransformationFlink流处理中的各个算子操作会转化成一系列的Transformation对象进行存储,StreamGraph就是通过一系列的Transformation对象进行构建。Transformation类型OneInputTransformation只有一个输入的一类转化操作,如map、filter、proces原创 2021-12-28 10:39:22 · 1464 阅读 · 0 评论 -
Flink RestClusterClient提交任务源码分析
RestClusterClient提交任务源码分析RestClusterClient和MiniClusterClientsubmitJob提交任务sendRetriableRequest方法sendRequest方法submitRequest方法RestClusterClient和MiniClusterClientMiniClusterClient负责本地提交flink任务RestClusterClient通过 HTTP REST 请求进行提交任务submitJob提交任务submitJob分为几原创 2021-09-10 16:30:03 · 1503 阅读 · 1 评论 -
flink1.13.2的FlameGraph配置及简介
火焰图是什么:火焰图是跟踪堆栈线程然后重复多次采样而生成的。每个方法的调用都会有一个长方型表示,长方型的长度和它在采样中出现的次数成正比。火焰图是基于stack信息生成的SVG 图片, 用来展示 CPU 的调用栈。y 轴表示调用栈, 每一层都是一个函数. 调用栈越深, 火焰就越高, 顶部就是正在执行的函数, 下方都是它的父函数.x 轴表示抽样数, 如果一个函数在 x 轴占据的宽度越宽, 就表示它被抽到的次数多, 即执行的时间长. 注意, x 轴不代表时间, 而是所有的调用栈合并后, 按字母顺序排列原创 2021-09-01 19:27:32 · 1646 阅读 · 0 评论 -
Flink写数据到kafka exactly-once模式下找不到序列化类的问题
flink写数据到kafka找不到序列化类的问题问题描述:使用FlinkKafkaProducer011写数据到kafka集群时,在idea测试没问题,数据可以正常写入kafka,但是打成jar包到flink集群执行就报了如下错误。Caused by: org.apache.kafka.common.config.ConfigException: Invalid value org.apache.kafka.common.serialization.ByteArraySerializer for co原创 2021-05-28 15:05:26 · 343 阅读 · 0 评论 -
flink sql kafka写数据到hive
step1:flink连接hive配置首先确保启动hive metastore远程服务flink安装目录下新建文件夹hive-conf,然后vi hive-site.xml,配置hive仓库地址和metastore远程服务连接地址。(此配置为了在flink集群中启动hive客户端来远程访问hive metastore服务)具体如下:新建hive-conf文件夹:hive-site.xml配置<configuration> <property> <nam原创 2021-05-27 18:30:08 · 2458 阅读 · 0 评论 -
Flink动态表和时态表总结
动态表动态表 是 Flink 的支持流数据的 Table API 和 SQL 的核心概念。与表示批处理数据的静态表不同,动态表是随时间变化的。可以像查询静态批处理表一样查询它们。查询动态表将生成一个 连续查询 。一个连续查询永远不会终止,结果会生成一个动态表。查询不断更新其(动态)结果表,以反映其(动态)输入表上的更改。本质上,动态表上的连续查询非常类似于定义物化视图的查询注意事项动态表首先是一个逻辑概念。在查询执行期间不一定(完全)物化动态表在流上定义的表在内部没有物化连续查询一个不会原创 2021-05-19 17:20:50 · 1824 阅读 · 0 评论 -
flink spilt和side output分流原理分析
split和side-output分流源码分析在日常开发中,我们常常需要对数据流进行拆分处理,flink提供了split/side output方式进行分流(filter分流方式使用场景有限,不作讨论)。首先,同一个流上不能同时使用split和side-output进行分流。否则,会抛出如下异常:throw new UnsupportedOperationException("getSideOutput() and split() may not be called on the same DataSt原创 2021-02-24 15:48:11 · 703 阅读 · 0 评论 -
flink JdbcCatalog使用中的一个注意事项
flink sql通过JdbcCatalog连接postgresql踩坑记录flink sql可以通过JdbcCatalog连接postgresql数据库,从而实现直接对postgresql表的相关操作,相关代码如下: StreamExecutionEnvironment bsEnv = StreamExecutionEnvironment.getExecutionEnvironment(); EnvironmentSettings bsSettings = Environ原创 2021-01-29 17:30:49 · 1506 阅读 · 1 评论 -
flink中Class冲突异常
flink sql任务提交时遇到的Class冲突异常在使用打包后的flink sql提交到flink集群中时,产生了如下异常:org.apache.flink.client.program.ProgramInvocationException: The main method caused an error: Unable to instantiate java compiler at org.apache.flink.client.program.PackagedProgram.callMainMe原创 2021-01-21 17:40:41 · 2060 阅读 · 2 评论 -
记一个flink 1.11.0的bug
记录一个flink 1.11.0的bugflink sql upsert操作在1.11.0版本blink planner下的bugflink sql upsert操作在1.11.0版本blink planner下的bugflink1.11.0版本下的blink planner计划中,在使用upsert模式往数据库中sink时,报如下异常:Exception in thread “main” org.apache.flink.table.api.TableException: Provided trai原创 2021-01-20 15:39:15 · 223 阅读 · 0 评论 -
flink cdc捕获postgresql数据
flink cdc捕获postgresql变化数据环境准备flink cdc功能测试环境准备flink 1.11postgresql数据库,版本要大于9.4,postgresql 9.5以下版本不支持upsert。flink jar包1.flink-connector-postgres-cdc.jar2.flink-connector-jdbc_2.11-1.11.2.jar点击下载 提取码:3p16flink cdc功能测试修改postgresql配置文件vi postgres原创 2021-01-15 16:45:28 · 5507 阅读 · 8 评论 -
Flink消費kafka数据的反序列化方式
Flink中kafka数据的反序列化Flink反序列化接口二级目录三级目录Flink DataStream Api在接收kafka数据时,需要进行反序列化,以便进行后续的逻辑处理。本文根据作者的开发经验,简单介绍几种常用的kafka反序列化方式。Flink反序列化接口public interface DeserializationSchema<T> extends Serializable, ResultTypeQueryable<T二级目录三级目录...原创 2021-01-09 17:04:21 · 3644 阅读 · 0 评论 -
flink程序常用环境设置
public class FlinkUtils { public static StreamExecutionEnvironment getEnv(){ StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); //设置全局并行度,如果不设置,则默认为配置文件中配置的平行度。优先级:代码>配置文件 // env.setParall.原创 2020-07-21 09:47:38 · 1042 阅读 · 0 评论