Flink
文章平均质量分 70
吃鱼的羊
这个作者很懒,什么都没留下…
展开
-
flink实战--双流join之原理解析
flink实战--双流join之原理解析JOIN简介谈flink双流JOIN之前,我们先谈一下大家最熟悉的mysql表join,我们知道表join有如下几种,具体区别就不在介绍了。那么流的join和表的join有什么区别呢?本文我们介绍一下。CROSS JOIN - 交叉连接,计算笛卡儿积;INNER JOIN - 内连接,返回满足条件的记录;OUTER JOINLEFT - 返回左表所有行,右表不存在补NULL;RIGHT - 返回右表所有行,左边不存在补NULL;FULL -转载 2021-10-27 22:41:50 · 2380 阅读 · 0 评论 -
Flink的是如何实现exactly_once的?(CheckPoint详解)
https://blog.csdn.net/u010271601/article/details/104933021文章目录 一、什么是CheckPoint? 二、为什么要开启CheckPoint? 三、Flink 任务状态是什么? Flink 整体框架图 四、Flink Checkpoint 语义 五、Exactly_Once 六、以FlinkKafkaProducer为例解析 1、CheckPoint 源码详解转载 2021-02-04 21:34:10 · 444 阅读 · 0 评论 -
flink的背压问题产生原因和解决方法
https://www.jianshu.com/p/74c031b1ec29最近flink job出现了背压的问题, 后果是导致了checkpoint的生成超时, 影响了flink job的运行.定位问题:如下图:1) flink的checkpoint生成超时, 失败:checkpoint超时2) 查看jobmanager日志,定位问题:jobmanager日志3) 找大神帮忙定位问题, 原来是出现了背压的问题, 缓冲区的数据处理不过来,bar...转载 2021-01-12 21:08:53 · 2137 阅读 · 0 评论 -
来看看Spark和Flink各自的优劣和主要区别
http://m.elecfans.com/article/885471.html2018和2019年是大数据领域蓬勃发展的两年,自2019年伊始,实时流计算技术开始步入普通开发者视线,各大公司都在不遗余力地试用新的流计算框架,实时流计算引擎Spark Streaming、Kafka Streaming、Beam和Flink持续火爆。最近Spark社区,来自Databricks、NVIDIA、Google以及阿里巴巴的工程师们正在为Apache Spark 3.0添加原生的GPU调度支持,参考(SP转载 2021-01-10 13:50:50 · 12323 阅读 · 2 评论 -
Spark和Flink的区别?
https://www.jianshu.com/p/a70033a78fdb1,技术理念不同Spark的技术理念是使用微批来模拟流的计算,基于Micro-batch,数据流以时间为单位被切分为一个个批次,通过分布式数据集RDD进行批量处理,是一种伪实时。而Flink是基于事件驱动的,它是一个面向流的处理框架, Flink基于每个事件一行一行地流式处理,是真正的流式计算. 另外他也可以基于流来模拟批进行计算实现批处理,所以他在技术上具有更好的扩展性,未来可能会成为一个统一的大数据处理引擎2,吞吐转载 2021-01-10 12:18:57 · 869 阅读 · 0 评论 -
干货 | Spark Streaming 和 Flink 详细对比
https://mp.weixin.qq.com/s/Fb1cW0oN7xYeb1oI2ixtgQ以下文章来源于美图数据技术团队,作者浪尖美图数据技术团队美图拥有海量的用户数据,如何将美图的数据最大化的利用在各个场景,更大范围的发挥美图在数据上的优势,并挖掘数据无限的价值是我们的使命。我们会在这里推送技术干货文章、技术活动的通知、团队的介绍以及招聘信息。欢迎关注~~本文由美图数据技术团队授权转载,原文 https://mp.weixin.qq.com/s/jllAegJMY...转载 2021-01-10 12:12:01 · 633 阅读 · 0 评论 -
开发第一个Flink应用
https://blog.csdn.net/boling_cavalry/article/details/85059168在《Flink1.7从安装到体验》一文中,我们安装和体验了Flink,今天就用java来一起开发一个简单的Flink应用;步骤列表本次实战经历以下步骤:创建应用; 编码; 构建; 提交任务到Flink,验证功能;环境信息Flink:1.7; Flink所在机器的操作系统:CentOS Linux release 7.5.1804; 开发环境JDK:1...转载 2021-01-10 11:39:53 · 143 阅读 · 0 评论 -
深入理解Apache Flink核心技术
https://www.jianshu.com/p/c4d6a7230973Apache Flink(下简称Flink)项目是大数据处理领域最近冉冉升起的一颗新星,其不同于其他大数据项目的诸多特性吸引了越来越多人的关注。本文将深入分析Flink的一些关键技术与特性,希望能够帮助读者对Flink有更加深入的了解,对其他大数据系统开发者也能有所裨益。本文假设读者已对MapReduce、Spark及...转载 2019-07-16 18:25:48 · 240 阅读 · 0 评论 -
Flink技术源码解析(一):Flink概述与源码研读准备
https://yq.aliyun.com/articles/600173一、前言Apache Flink作为一款高吞吐量、低延迟的针对流数据和批数据的分布式实时处理引擎,是当前实时处理领域的一颗炙手可热的新星。关于Flink与其它主流实时大数据处理引擎Storm、Spark Streaming的不同与优势,可参考https://blog.csdn.net/cm_chenmin/ar...转载 2019-07-17 15:06:38 · 1877 阅读 · 0 评论 -
Flink 异常处理-State和Checkpoint实践
https://blog.csdn.net/u013560925/article/details/82667085背景Flink相对于Storm和Spark Stream比较大的一个优势就是State,pipline中可以保存状态,这对于解决业务是有巨大的帮助,否则将需要借助三方工具来时间状态的存储和访问。正文State什么是Stat...转载 2019-07-17 18:42:16 · 621 阅读 · 0 评论 -
Flink State状态以及Checkpoint机制(一)
https://blog.csdn.net/qq_37142346/article/details/90667283一、State状态在Flink中,它使用了State状态机制以及Checkpoint策略提供了强大的容错机制,不过我们需要注意区分它们,State状态是指一个Flink Job中的task中的每一个operator的状态,而Checkpoint是指在某个特定的时刻下,对整个jo...转载 2019-07-17 18:53:53 · 586 阅读 · 0 评论 -
Apache Flink 漫谈系列(04) - State
http://zhuanlan.51cto.com/art/201810/585018.htm本篇简单介绍了Apache Flink中State的概念,并重点介绍了OperatorState和KeyedState在扩容时候的处理方式。实际问题在流计算场景中,数据会源源不断的流入Apache Flink系统,每条数据进入Apache Flink系统都会触发计算。如果我们想进行一个C...转载 2019-07-17 19:20:36 · 302 阅读 · 0 评论 -
Flink使用Broadcast State实现流处理配置实时更新
Broadcast State是Flink支持的一种Operator State。使用Broadcast State,可以在Flink程序的一个Stream中输入数据记录,然后将这些数据记录广播(Broadcast)到下游的每个Task中,使得这些数据记录能够为所有的Task所共享,比如一些用于配置的数据记录。这样,每个Task在处理其所对应的Stream中记录的时候,读取这些配置,来满足实际数据...转载 2019-07-17 19:26:14 · 4179 阅读 · 2 评论 -
Flink读取state的状态
1、复制flink opt目录下的flink-queryable-state-runtime_2.11-1.9.0.jar包到lib目录2、修改配conf/flink-conf.yaml配置文件添加如下配置# queryable-statequeryable-state.enable: true3、提交如下代码示例public class WordCount { pub...转载 2019-12-20 13:33:11 · 1031 阅读 · 1 评论 -
Flink Job重启/Task恢复策略简介
前言流式计算对稳定性敏感,所以我们在编写作业时一定会做好防御性编程,如各种判空、边界条件、安全的类型转换、格式判断、异常捕获等。但是墨菲定律说得好:Anything that can go wrong will go wrong.换言之,我们写再多的防御性代码,也无法覆盖所有非法数据的可能性,何况外部环境(网络、磁盘等)也会出现不可预知的波动,所以作业在遇到意外情况时最好能自己“复...转载 2019-12-20 11:21:51 · 8292 阅读 · 0 评论 -
深入理解Flink中的状态实现
本文是整理自几个月前的内部flink state分享,flink状态所包含的东西很多,在下面列举了一些,还有一些在本文没有体现,后续会单独的挑出来再进行讲解state的层次结构 keyedState => windowState OperatorState => kafkaOffset stateBackend snapshot/restore internalTim...转载 2019-12-18 17:35:35 · 348 阅读 · 0 评论 -
flink解析之state
一。 概述在流计算场景中,数据没有边界源源不断的流入的,每条数据流入都可能会触发计算,比如在进行count或sum这些操作,是选择每次触发计算将所有流入的历史数据重新计算一边还是每次计算都基于上次计算结果进行增量计算呢? 从综合考虑角度,很多人都会 选择增量计算,那么问题就产生了:上一次的中间计算结果保存在哪里?内存?这其中会由于本身的网络,硬件或软件等问题造成某个计算节点失败,对应的上次计算...转载 2019-12-18 15:58:28 · 645 阅读 · 0 评论 -
Apache Flink结合Kafka构建端到端的Exactly-Once处理
本文翻译自:https://data-artisans.com/blog/end-to-end-exactly-once-processing-apache-flink-apache-kafkaApache Flink自2017年12月发布的1.4.0版本开始,为流计算引入了一个重要的里程碑特性:TwoPhaseCommitSinkFunction(相关的Jira)。它提取了两阶段提交协议...转载 2019-12-03 11:09:41 · 254 阅读 · 0 评论 -
Flink写入HDFS
maven依赖增加 <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-filesystem_2.11</artifactId> <versio...转载 2019-12-02 17:45:44 · 3699 阅读 · 0 评论 -
Flink事件时间处理和水印
Flink EventTime和Watermarks案例分析https://blog.csdn.net/xu470438000/article/details/83271123最近找到这个对事件时间处理和水印说的比较好的文章,所以转载一下,供大家分享,原文连接:http://vishnuviswanath.com/flink_eventtime.html本文用途纯粹是为了分享,如若有侵权,请...转载 2019-10-18 09:21:19 · 1369 阅读 · 0 评论 -
Flink实现Kafka到Mysql的Exactly-Once
一、背景 最近项目中使用Flink消费kafka消息,并将消费的消息存储到mysql中,看似一个很简单的需求,在网上也有很多flink消费kafka的例子,但看了一圈也没看到能解决重复消费的问题的文章,于是在flink官网中搜索此类场景的处理方式,发现官网也没有实现flink到mysql的Exactly-Once例子,但是官网却有类似的例子来解决端到端的仅一次消费问题。这个现成的例...转载 2019-09-11 10:04:57 · 1654 阅读 · 7 评论 -
Flink是如何实现exactly-once语义的(精确一次读取外部数据)
最少一次:断了之后 重新执行 再去重严格一次:根据检查点,再执行一次-------------------------------------------------------------------------------------------Flink跟其他的流计算引擎相比,最突出或者做的最好的就是状态的管理.什么是状态呢?比如我们在平时的开发中,需要对数据进行count,su...转载 2019-09-10 18:28:18 · 4003 阅读 · 1 评论 -
Flink exactly-once 实战笔记(精确一次写入外部数据)
Flink-Kafka众所周知,Flink在很早的时候就通过Checkpointing提供了exactly-once的semantic,不过仅限于自身或者是从KafkaConsumer中消费数据。而在Flink 1.4版本的时候加入了赫赫有名的TwoPhaseCommitSinkFunction,提供了End-to-End的exatcly-once语言,当然是在需要下游支持回滚的情况下,具体的...转载 2019-09-10 18:24:27 · 1802 阅读 · 1 评论 -
apache flink 保证端到端exactly-once语义的简介(同样适用于kafka!)- 翻译自官网
这篇文章翻译自flink官网博客(An Overview of End-to-End Exactly-Once Processing in Apache Flink (with Apache Kafka, too!)). 翻译加上了点自己的理解,也省略了一些原文的表述,若有错误和并准确的地方请指出,还是推荐看一下原汁原味英文版哈。正文开始:2017年12月,apache flink 1.4...转载 2019-09-10 18:10:32 · 346 阅读 · 0 评论 -
Flink实战: 结合Kafka构建端到端的Exactly-Once处理程序
前言在消息处理过程中,除了Flink程序本身的逻辑(operator),我们还需要和外部系统进行交互,例如本地磁盘文件,HDFS,Kafka,Mysql等。虽然Flink本身支持Exactly-Once语义,但是对于完整的数据处理系统来说,最终呈现出来的语义和外部系统是相关的。我们先总览一下Flink不同connector的消息传递语义。在Guarantees这一列,我们可以发现以下...转载 2019-09-10 17:57:53 · 972 阅读 · 0 评论 -
深入理解Flink ---- 系统内部消息传递的exactly once语义----Asynchronous Barrier Snapshotting(ABS)
At Most once,At Least once和Exactly once在分布式系统中,组成系统的各个计算机是独立的。这些计算机有可能fail。一个sender发送一条message到receiver。根据receiver出现fail时sender如何处理fail,可以将message delivery分为三种语义:At Most once: 对于一条message,rec...转载 2019-09-11 14:15:17 · 400 阅读 · 0 评论 -
Flink WaterMark 详解
背景image实时计算中,数据时间比较敏感。有eventTime和processTime区分,一般来说eventTime是从原始的消息中提取过来的,processTime是Flink自己提供的,Flink中一个亮点就是可以基于eventTime计算,这个功能很有用,因为实时数据可能会经过比较长的链路,多少会有延时,并且有很大的不确定性,对于一些需要精确体现事件变化趋势的场景中,单纯使用...转载 2019-09-17 18:40:40 · 3478 阅读 · 0 评论 -
Flink 从 0 到 1 学习 —— Apache Flink 介绍
http://www.54tianzhisheng.cn/2018/10/13/flink-introduction/前言Flink 是一种流式计算框架,为什么我会接触到 Flink 呢?因为我目前在负责的是监控平台的告警部分,负责采集到的监控数据会直接往 kafka 里塞,然后告警这边需要从 kafka topic 里面实时读取到监控数据,并将读取到的监控数据做一些 聚合/转换/计算...转载 2019-09-26 15:46:35 · 258 阅读 · 0 评论 -
Flink 从 0 到 1 学习 —— Flink parallelism 和 Slot 介绍
前言之所以写这个是因为前段时间自己的项目出现过这样的一个问题: 123 Caused by: akka.pattern.AskTimeoutException: Ask timed out on [Actor[akka://flink/user/taskmanager_0#15608456]] after [10000 ms]. Sender[nu...转载 2019-09-26 16:06:30 · 526 阅读 · 0 评论 -
Flink 原理与实现:理解 Flink 中的计算资源
本文所讨论的计算资源是指用来执行 Task 的资源,是一个逻辑概念。本文会介绍 Flink 计算资源相关的一些核心概念,如:Slot、SlotSharingGroup、CoLocationGroup、Chain等。并会着重讨论 Flink 如何对计算资源进行管理和隔离,如何将计算资源利用率最大化等等。理解 Flink 中的计算资源对于理解 Job 如何在集群中运行的有很大的帮助,也有利于我们更透彻...转载 2019-09-26 17:21:34 · 434 阅读 · 0 评论 -
Flink Slot详解与Job Execution Graph优化
前言近期将Flink Job从Standalone迁移至了OnYarn,随后发现Job性能较之前有所降低:迁移前有8.3W+/S的数据消费速度,迁移到Yarn后分配同样的资源但消费速度降为7.8W+/S,且较之前的消费速度有轻微的抖动。经过原因分析和测试验证,最终采用了在保持分配给Job的资源不变的情况下将总Container数量减半、每个Container持有的资源从1C2G 1Slot变更...转载 2019-09-26 18:18:38 · 1026 阅读 · 0 评论 -
Apache Flink - 作业和调度
Scheduling:Flink中的执行资源通过任务槽(Task Slots)定义。每个TaskManager都有一个或多个任务槽,每个槽都可以运行一个并行任务管道(pipeline)。管道由多个连续的任务组成,例如第n个MapFunction并行实例和第n个ReduceFunction并行实例。Flink经常并发地执行连续的任务:对于流程序,这在任何情况下都会发生,对于批处理程序,它也经常发...转载 2019-09-26 18:28:54 · 479 阅读 · 0 评论 -
浅谈Kafka的分区
单纯地将Kafka理解为消息总线(Message Bus)并不全面,它除了能提供快速、可扩展、高可用(Kafka的高可用不一定需要分布式的多节点来实现)且持续的基于发布/订阅模式的总线服务外,你还可以把它看作可分布式的冗余的日志提交服务。在Kafka消息总线中,消息的生产者和消费者是严格分隔开的,而任何客户端可以在Kafka消息缓存释放前(默认是7天,不管消息有没有被消费过)重播任何总线消息。...转载 2019-09-27 10:03:56 · 821 阅读 · 0 评论 -
flink引出的kafka不同版本的兼容性
https://www.cnblogs.com/Springmoon-venn/p/10690531.html参考:官网协议介绍:http://kafka.apache.org/protocol.html#The_Messages_Fetchkafka协议兼容性http://www.cnblogs.com/huxi2b/p/6784795.html最近在使用flink...转载 2019-09-02 09:31:18 · 5245 阅读 · 1 评论