202109-22 浅谈Flink容错机制之作业执行和守护进程 目录一、作业执行容错1.1、TaskFailover策略1.2、JobRestart策略二、守护进程容错2.1、TaskManager的容错2.2、ResourceManager的容错2.3、JobMaster的容错2.4、并发故障三、总结一、作业执行容错Flink的错误恢复机制分为多个级别,即Execution级别的Failover策略和ExecutionGraph级别的JobRestart策略。当出现错误时,Flink会先尝试触发范围小的错误恢复机制,如果仍处理不了才会升级为更大范围的错误恢复机制,具... 继续阅读 >
202109-17 浅谈实时计算框架Flink集群搭建与运行机制 目录一、Flink概述1.1、基础简介1.2、应用场景二、环境部署2.1、安装包管理2.2、集群配置2.3、启动与停止2.4、Web界面三、开发入门案例3.1、数据脚本3.2、引入基础依赖3.3、读取文件数据3.4、读取端口数据四、运行机制4.1、FlinkClient4.2、JobManager4.3、TaskManager五、源代码地址一、Flink概述1.1、基础简介主要特性包括:批流一体化、精密的状态管理、事件时间支持以及精确一次的状态一致性保障等。Flink不仅可以运行在包括YA... 继续阅读 >
202108-22 Flink支持哪些数据类型? 目录一、支持的数据类型二、Flink之Tuple类型三、Tuple的使用四、Flink之POJO类型五、Flink之基本类型六、Flink之通用类型七、Flink之值类型Values八、Flink之Hadoop的Writable类九、Flink之特殊类型一、支持的数据类型Flink对可以在DataSet或DataStream中的元素类型进行了一些限制。这样做的原因是系统会分析类型以确定有效的执行策略。1.JavaTuple和ScalaCase类;2.JavaPOJO;3.基本类型;4.通用类;5.值;6.HadoopWr... 继续阅读 >
202107-08 详解大数据处理引擎Flink内存管理 目录内存模型内存管理自定义序列化框架缓存友好的数据结构内存模型Flink可以使用堆内和堆外内存,内存模型如图所示:flink使用内存划分为堆内内存和堆外内存。按照用途可以划分为task所用内存,networkmemory、managedmemory、以及framework所用内存,其中tasknetworkmanaged所用内存计入slot内存。framework为taskmanager公用。堆内内存包含用户代码所用内存、heapstatebackend、框架执行所用内存。堆外内存是未经jvm虚拟化的... 继续阅读 >
202103-02 如何使用Reactor完成类似Flink的操作 一、背景Flink在处理流式任务的时候有很大的优势,其中windows等操作符可以很方便的完成聚合任务,但是Flink是一套独立的服务,业务流程中如果想使用需要将数据发到kafka,用Flink处理完再发到kafka,然后再做业务处理,流程很繁琐。比如在业务代码中想要实现类似Flink的window按时间批量聚合功能,如果纯手动写代码比较繁琐,使用Flink又太重,这种场景下使用响应式编程RxJava、Reactor等的window、buffer操作符可以很方便的实现... 继续阅读 >
202009-25 Flink开发IDEA环境搭建与测试的方法 一.IDEA开发环境1.pom文件设置<properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><encoding>UTF-8</encoding><scala.version>2.11.12</scala.version><scala.binary.version>2.11</scala.binary.version><hadoop.version>2.7.6</hadoop.version><flink.version>1.6.1</flink.version></properties><dependencies><dependenc... 继续阅读 >