Flink 系列
文章平均质量分 93
Flink 深入浅出
Michealkz
这个作者很懒,什么都没留下…
展开
-
Flink Checkpoint 深入理解
如何理解flink中state(状态)state泛指state泛指:flink中有状态函数和运算符在各个元素(element)/事件(event)的处理过程中存储的数据(注意:状态数据可以修改和查询,可以自己维护,根据自己的业务场景,保存历史数据或者中间结果到状态(state)中);使用状态计算的例子:当应用程序搜索某些事件模式时,状态将存储到目前为止遇到的事件序列。在每分钟/小时/天聚合事件时,状态保存待处理的聚合。当在数据点流上训练机器学习模型时,状态保持模型参数的当前版本。当需要管转载 2021-01-03 23:18:21 · 10107 阅读 · 26 评论 -
Flink运行架构
Flink运行架构Flink 的运行架构以及Flink提交任务的流程和任务调度的原理剖析Flink运行时的组件Flink运行时架构主要包括四个不同的组件,它们会在运行流处理应用程序时协同工作:作业管理器(JobManager)、资源管理器(ResourceManager)、任务管理器(TaskManager),以及分发器(Dispatcher)。因为Flink是用Java和Scala实现的,所以所有组件都会运行在Java虚拟机上。每个组件的职责如下:作业管理器(JobManager)原创 2021-01-03 15:04:22 · 291 阅读 · 0 评论 -
Flink 报错 No TaskExecutor registered under container_xx
运行Flink程序报错,具体信息如下:org.apache.flink.runtime.resourcemanager.exceptions.UnknownTaskExecutorException: No TaskExecutor registered under container_1603071676168_0204_01_000002. at org.apache.flink.runtime.resourcemanager.ResourceManager.requestTaskManagerIn原创 2020-10-19 17:30:27 · 5514 阅读 · 1 评论 -
java.lang.OutOfMemoryError: GC overhead limit exceeded
背景描述: 运行Flink任务报错TaskManager报错信息java.lang.OutOfMemoryError: GC overhead limit exceeded at sun.reflect.GeneratedConstructorAccessor10.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorI原创 2020-10-21 16:02:17 · 4180 阅读 · 0 评论 -
Flink流量控制与反压机制总结
笔者最近回顾自己对Flink技术栈细节的理解,发现对Flink的网络栈、流控与反压这一套机制存在比较大的盲区。虽然平时多次处理过作业反压的问题,但是不完全理解背后的实现显然说不过去。于是专门写一篇总结,站在大佬们的肩膀上彻底搞清楚Flink是怎么做流控与处理反压的。Flink网络传输的数据流向Flink网络传输的数据流向如下图所示:Sender在发送数据时,首先写入TaskManager内部的网络缓存,利用Netty进行传输——将待发送的数据存入Netty的ChannelOutboundBuff.转载 2021-01-09 20:37:26 · 495 阅读 · 0 评论 -
Flink 调优总结
在大数据领域我们都知道,开发是最简单,任务的合理调优、问题排查才是最重要的作者结合线上出现的一些问题,总结了一些任务调优需要注意的点。Flink任务延迟高,想解决这个问题,你会如何入手?在Flink的后台任务管理中,我们可以看到Flink的哪个算子和task出现了反压。最主要的手段是资源调优和算子调优。资源调优即是对作业中的Operator的并发数(parallelism)、CPU(core)、堆内存(heap_memory)等参数进行调优。作业参数调优包括:并行度的设置,State的设置,che.转载 2021-01-09 20:23:04 · 1920 阅读 · 0 评论 -
Flink on yarn 提交流程 资源管理
Flink On Yarn 执行任务两种方式Flink on Yarn 有两种执行方式一种是Session-Cluster模式,另一种是Pre-Job-Cluster模式Flink Session (Session-Cluster)内存集中管理模式:在Yarn中初始化一个Flink集群,开辟指定的资源,之后我们提交的Flink Jon都在这个Flink yarn-session中,也就是说不管提交多少个job,这些job都会共用开始时在yarn中申请的资源。这个Flink集群会常驻在Yarn集转载 2021-01-03 21:09:42 · 2275 阅读 · 0 评论 -
org.apache.flink.util.FlinkException: The assigned slot container_16xxx was removed
Flink 消费kafka长时间为消费,lag信息并没有变换,查看TaskManager的日志得到如下信息:org.apache.flink.util.FlinkException: The assigned slot container_1603071676168_0084_01_000009_0 was removed. at org.apache.flink.runtime.resourcemanager.slotmanager.SlotManager.removeSlot(SlotManager原创 2020-10-19 16:36:28 · 1526 阅读 · 0 评论 -
Caused by: org.apache.flink.core.fs.UnsupportedFileSystemSchemeException: Hadoop is not in the class
Flink 提交任务访问HDFS报错UnsupportedFileSystemSchemeException 错误信息如下:Could not find a file system implementation for scheme ‘hdfs’. The scheme is not directly supported by Flink and no Hadoop file system to support this scheme could be loaded.org.apache.fli原创 2020-10-18 22:52:02 · 2004 阅读 · 0 评论 -
Flink 基本架构与组件
Flink 基本组件Flink 的架构体系同样遵循着分层的架构设计理念,在降低耦合度的同时,也为上层用户构建Flink应用程序提供了丰富且友好的接口。Flink 的架构体系分为三层,由上到下一次是API & Libraries & Runtime 核心层和物理部署层。API & Libraries 层Flink提供了支持流式计算和批计算的接口,通过在此基础之上抽象出不同应用类型的组件库,比如:基于流式处理的CEP(复杂事件处理)、SQL & Table 库、基于批处原创 2020-09-13 16:55:49 · 3140 阅读 · 0 评论 -
Error:(17, 34) could not find implicit value for evidence parameter of type org.apache.flink.api.com
IDEA运行Flink程序报错Error:(17, 34) could not find implicit value for evidence parameter of type org.apache.flink.api.common.typeinfo.TypeInformation[Int]原因是没有导入隐式转换,导入隐式转换即可。import org.apache.flink.api...原创 2019-11-09 14:32:46 · 585 阅读 · 3 评论 -
org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.createLocalEnvironment
运行flink scala 程序报错:Exception in thread "main" java.lang.NoSuchFieldError: MODE at org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.createLocalEnvironment(StreamExecutionEnvironm...原创 2019-11-08 17:12:34 · 2847 阅读 · 1 评论 -
Exception in thread "main" java.lang.NoSuchFieldError: MODEat org.apache.flink.streaming.api.environ
运行flink scala 程序报错:Exception in thread "main" java.lang.NoSuchFieldError: MODE at org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.createLocalEnvironment(StreamExecutionEnvironm...原创 2020-02-24 22:49:18 · 1274 阅读 · 0 评论 -
Exception in thread "main" java.lang.AbstractMethodError: org.apache.flink.streaming.api.graph..
Exception in thread “main” java.lang.AbstractMethodError: org.apache.flink.streaming.api.graph.StreamGraph.getJobGraph()Lorg/apache/flink/runtime/jobgraph/JobGraph;at org.apache.flink.streaming.api.e...原创 2019-11-08 17:07:27 · 1394 阅读 · 0 评论