![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
flink
lvwenyuan_1
这个作者很懒,什么都没留下…
展开
-
Flink SQL 以catalog方式写入HIVE
Flink 可以通过连接hive catalog的形式向hive写入数据。重点!!hive 必须有以下属性:'transactional' = 'false' 'sink.partition-commit.policy.kind'='metastore,success-file'下面是案例package com.kkb.flink.stream;import com.kkb.flink.stream.util.FlinkUtils;import com.kkb.flink.s原创 2021-03-12 15:53:38 · 2685 阅读 · 2 评论 -
Flink AsyncFunction time out 导致消费卡主
使用Flink 异步IO去关联维表的时候,当QPS和TPS上去以后,就有可能会出现以后情况,超时,然后程序就会僵住。java.lang.Exception: An async function call terminated with an exception. Failing the AsyncWaitOperator. at org.apache.flink.streaming.api...原创 2020-03-17 14:51:21 · 4405 阅读 · 7 评论 -
Flink Task之间数据流动之写数据
Flink的task operator之间肯定会涉及到数据的流传,基本就是requestPartition --> netty --> InputGetway。今天主要分析的就时前一部分operator将数据处理完之后的步骤。1.数据在operator中处理数据在operator中进行处理后,我们经常会调用out.collect(...),这类方法将数据发送到下游,而这个方法,...原创 2020-01-16 09:27:32 · 776 阅读 · 0 评论 -
Flink分区选择器
对于Flink流处理来说,算子之间的数据的流动要依靠分区器,也就是StreamPartitioner。它是一个抽象类,有以下几个实现类其中第一个是blink中的,其余都是基本的依赖接下来,一个一个说:GlobalPartitioner @Override public int selectChannel(SerializationDelegate<StreamR...原创 2019-12-27 14:00:08 · 1440 阅读 · 0 评论 -
Flink 内存管理机制
序:Flink的内存管理机制也是Flink的一大亮点。Flink在JVM内部实现了自己的内存管理。一、MemorySegmentMemorySegment是Flink内存管理的核心,是Flink的内存抽象。默认情况下,一个MemorySegment可以被看做是一个32KB大小的内存块抽象。这个内存即可以是JVM里的一个byte[],也可以是堆外内存,这个可以从MemorySegm...原创 2019-12-16 09:36:14 · 724 阅读 · 0 评论 -
监控Flink(二)
上文说了下监控使用prometheus监控Flink的准备。现在主要看需要监控什么指标,以及对应的意思。推篇我看到的,比较好的文章,以及官网,如果后续有看到比较好的,也会持续更新。监控、指标和处理背压:https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&mid=2247485057&idx=1&sn=ce85b91ec...原创 2019-11-25 11:43:17 · 265 阅读 · 0 评论 -
prometheus监控Flink(一)
目前Flink监控常用的手段有基于prometheus或者influxDB,还有就是基于rest api的。这里主要说的是基于prometheus的。附上官网的地址https://ci.apache.org/projects/flink/flink-docs-release-1.9/monitoring/metrics.html#prometheuspushgateway-orgapachef...原创 2019-11-06 18:13:01 · 5599 阅读 · 11 评论 -
Flink StreamingFileSink源码解析
序目前来说Flink流式写入文件系统,有两个方式BucketingSink以及StreamingFileSink。StreamingFileSink是在BucketingSink之后推出的。主要区别在StreamingFileSink可以用于故障恢复,保证exactly-once,但是要求hadoop版本必须在2.7以上,因为用到了hdfs的truncate方法。BucketingSink相对...原创 2019-10-17 12:32:19 · 1692 阅读 · 0 评论 -
hbase shell assign
hbaseshell中,有个assign,这个命令。可以重分配region,对于rit的这种情况,就是神器。背景有两台regionserver重启了。但是region没有起来,一直处于faile_close状态。导致hbase服务不可用。这个是就算重启整个hbase,也没什么用。过一段时间,hmaster还是会挂,并且hbase服务也是不可以用。查询对应表,会出现region is no...原创 2019-09-23 19:56:03 · 2748 阅读 · 0 评论 -
Flink 1.9编译
Flink1.9出来了,这两天编译了一下,这里把坑记录一下。下载的是release-1.9.0-rc3版本。下载完之后,使用IDEA打开,方便之后阅读代码,同时也可以加载一些依赖。之后开始编译准备maven命令:mvn clean install -DskipTests -Dfast建议对应的setting: <mirror> ...原创 2019-08-29 10:08:37 · 2958 阅读 · 0 评论 -
Flink 从checkpoint恢复,并行度改变后,状态重分配
前提:当Flink左右从checkpoint恢复,或者从savepoint中重启的时候,就回涉及到状态的重新分配,尤其是当并行度发生改变的时候。Operator State Redistribute当operator改变并行度的时候(Rescale),会触发状态的Redistribute,即Operator State里的数据会重新分配到Operator的Task实例。这里有三种...原创 2019-08-05 20:19:03 · 6428 阅读 · 1 评论 -
Flink on yarn ClassNotFoundException
背景最近,我司决定将flink 从1.7.2升级到1.8.1。但是,flink 1.8.1运行jar,基于on yarn的模式就会报错。问题以及解决运行日志,一开始Setting HADOOP_CONF_DIR=/etc/hadoop/conf because no HADOOP_CONF_DIR was set.然后就出现Could not build the program...原创 2019-07-30 11:09:12 · 1843 阅读 · 0 评论 -
Flink In many cases lambda methods don't provide enough information
记个错误:The generic type parameters of 'Tuple4' are missing. In many cases lambda methods don't provide enough information for automatic type extraction when Java generics are involved.原由:这个是因为我在fl...原创 2019-06-13 21:32:05 · 1871 阅读 · 0 评论 -
Flink WaterMark的生成以及获取
1.什么是WaterMarkWaterMark是Flink用来处理时间乱序的一种机制。用来过滤掉由于网络或者其他原因,而迟来的脏数据。2.基本使用 WaterMark绝大部分时候是和eventTime配合使用,可能有的同学非要用Processing Time,那也是可以的,只要加上env.getConfig().setAutoWatermarkInterval(200);...原创 2019-06-10 19:13:06 · 6401 阅读 · 6 评论 -
Flink CEP demo 实战
简介 flink cep 是flink的复杂处理库。主要用来筛选,流式数据中,符合条件的某个系列动作。譬如筛选出连续的告警,或者是用户生成订单后,规定时间内没有完成支付等。 一般cep都用于KeyedStream。一般开发流程生成一个datastream或者KeyedStream 定义一组规则 将这组规则应用于流,生成PatternStream 将生成...原创 2019-06-21 10:42:59 · 2860 阅读 · 0 评论 -
Flink Run time解析
整体架构以上是flink的整体架构,今天我们一起来学习一下Flink的Runtime这一层。Runtime架构这个是runtime的架构,基本上一目了然。图中可以看到,1.client向cluster Management(standalone、yarn、messos、K8S)提交app请求。同时,client也会完成作业的编译以及优化的过程,譬如哪些task可以连在一...原创 2019-06-23 17:48:37 · 584 阅读 · 0 评论 -
Flink SavePoint的使用
checkPoint and savePoint说到savePoint,一定会想到checkPoint,先来说下两者的区别:checkpoint:应用定时触发,用户保存状态,会过期,内部应用失败重启的时候使用,默认情况下cancel时,会删除之前的checkpoint。savepoint:用户手动执行,不会过期,相当于备份,可以在cancel的时候使用。一般可以用于修改并行度,程序升级...原创 2019-07-02 11:33:11 · 16297 阅读 · 5 评论 -
Flink反压机制
在说flink的反压之前,先来说下strom和spark streaming的反压。Strom 反压如图是strom的反压,是通过zookeeper来决定的,当strom感受到处理不过来的时候,就会像zookeeper增加一个znode,然后strom发现了这个znode,对应的上游数据就会阻塞,不会发送数据。Spark Streaming 反压Spark Streaming的...原创 2019-06-24 18:37:59 · 11410 阅读 · 3 评论 -
Flink State
State概念state 就是流式计算中持久化了的状态。与Spark Stream中的State类似,但是功能更加强大,能存储的内容更多。Spark Stream的State是一种轻量级的。而Flink中的State则是可以和checkpoint和statebackend配合,可以存储很大一部分数据。State两种形式state有两种形式,分别为:OperatorState 以及 Ke...原创 2019-07-12 20:08:37 · 887 阅读 · 0 评论 -
Flink SQL实战
最近在研究Flink SQL流,这里写一个简单的实战。背景每1分钟统计过去1个小时,各个商品的购买量。数据格式为{"behavior":"cart","itemId":19,"nowTime":1562314387553}behavior:为用户行为,有cart,pv,buy。我们这里要的就是buy代码import com.alibaba.fastjson.JSON;i...原创 2019-07-05 16:42:33 · 1132 阅读 · 0 评论 -
Flink消费kafka写入HDFS初步探究
主要maven依赖 <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-filesystem_2.11</artifactId> <version>${flink.version}</ver...原创 2019-05-27 19:42:34 · 3746 阅读 · 0 评论