01 2022 档案

摘要:算子转换图 flink的分级api 阅读全文
posted @ 2022-01-15 18:00 习惯了蓝 阅读(37) 评论(0) 推荐(0) 编辑
摘要:把flink当成一个服务器,中间计算状态开放rest服务供业务系统调用,不用在走数据库这种地方。 具体案例看这篇博客 https://caizhengjie.blog.csdn.net/article/details/115442928?spm=1001.2101.3001.6661.1&utm_m 阅读全文
posted @ 2022-01-15 17:50 习惯了蓝 阅读(27) 评论(0) 推荐(0) 编辑
摘要:广播状态是为了支持一些用例,其中来自一个流的一些数据需要被广播到所有下游任务,在那里它被存储在本地并用于处理另一个流上的所有传入数据元。合并俩条流,一条控制流,一条消息流。 https://blog.csdn.net/m0_49834705/article/details/119414130 htt 阅读全文
posted @ 2022-01-15 17:13 习惯了蓝 阅读(30) 评论(0) 推荐(0) 编辑
摘要:flink中的计算分为有状态计算和无状态计算, 无状态计算每次只转换一条输入记录,并且只根据最新的输入记录输出结果。 有状态计算维护所有已处理的记录的状态值,并根据每条新输入的记录更新状态,因此输出记录反应的是综合考虑多个事件之后的结果。 无状态在这里不在赘述,这里来记录一下有状态计算。 flink 阅读全文
posted @ 2022-01-12 17:08 习惯了蓝 阅读(1043) 评论(0) 推荐(0) 编辑
摘要:划分窗口就两种方式: 根据时间进行截取(time-driven-window),比如每1分钟统计一次或每10分钟统计一次。(time window) 根据数据进行截取(data-driven-window),比如每5个数据统计一次或每50个数据统计一次。(count window) 对于TimeWi 阅读全文
posted @ 2022-01-09 15:14 习惯了蓝 阅读(245) 评论(0) 推荐(0) 编辑
摘要:namenode datanode yarn spark flink 阅读全文
posted @ 2022-01-09 00:22 习惯了蓝 阅读(36) 评论(0) 推荐(0) 编辑
摘要:union,connect,Iterate,project union算子是把多个task的算子合并成一个算子,(注意这多个算子的类型是要一致的) DataStream* → DataStream ,下图是语法格式 dataStream.union(otherStream1, otherStream 阅读全文
posted @ 2022-01-08 23:26 习惯了蓝 阅读(65) 评论(0) 推荐(0) 编辑
摘要:flink在transformatin之后为了控制更小细粒度的分区,引入了物理分区功能的算子 分别是rebalance,shuffle,broadcast,rescaling,partitonCustom这五个 下面来一个个记录一下。 rebalance ,下游task分区会轮询的把每个上游task 阅读全文
posted @ 2022-01-08 22:16 习惯了蓝 阅读(182) 评论(0) 推荐(0) 编辑
摘要:reduce,sum,min,max,minby,maxby这几个算子都是对keyedStream算子进行滚动聚合使用,把keyedStream算子转换成DataStream类算子。换句话说,想要使用这几个算子,那么势必要先去用keyby算子进行分区,把数据塞进各自对应的管道里去。 reduce算子 阅读全文
posted @ 2022-01-08 17:31 习惯了蓝 阅读(165) 评论(0) 推荐(0) 编辑
摘要:Keyby点进去看源码,KeySelector是你new 的匿名内部类,重写getkey函数。 它主要是new 一个KeyedStream类(this就是上游的父dataStream,clean检测是不是序列化的) 进到keyStream里面,new了一个 PartitionTransformati 阅读全文
posted @ 2022-01-07 20:50 习惯了蓝 阅读(131) 评论(0) 推荐(0) 编辑
摘要:debug一下找到reduce算子的调用链,进到下图这个类里面 主要去看下图这个函数 1. 先拿到 这次进入的value 2.判断是不是在历史状态values里面,拿到历史聚合过的状态值。(这里就已经初步可以看出flink的基于状态是怎么回事了) 2.如果在的话,就调用你new 的reduceFun 阅读全文
posted @ 2022-01-07 18:42 习惯了蓝 阅读(137) 评论(0) 推荐(0) 编辑
摘要:flink的keyby算子作用是把相同key的数据发送到一个分区(即一个subtask里面去),采用的是哈希分区方法。 用法多样,主要整理了下图中的四种用法。 第一种是 key(Interger) 用法,传入一个整数,这个整数对应的是元组中的元素顺序是第几个,(注:可以是多个key,不一定只有一个, 阅读全文
posted @ 2022-01-07 17:46 习惯了蓝 阅读(3415) 评论(0) 推荐(0) 编辑
摘要:Flink创建执行环境有四种方式,下图从上到下是 1 获取执行环境 2.创建本地带webui的环境(实验用) 3.创建本地环境 4.创建远程环境 Flink在流处理上的source和在批处理上的source基本一致。大致有五大类: 基于本地集合的source(Collection-based-sou 阅读全文
posted @ 2022-01-05 21:54 习惯了蓝 阅读(206) 评论(0) 推荐(0) 编辑
摘要:先处理消费端的丢失数据和重复消费 这俩种情况都是 消息偏移offset的问题导致的,只是场景不同。 offset位移提交一般有俩种方式,自动位移提交和手动位移提交。用enable.auto.commit这个配置属性去控制 丢失消息一般是自动提交的问题,所以切换成手动位移提交就可以。手动位移提交分成同 阅读全文
posted @ 2022-01-05 12:52 习惯了蓝 阅读(1058) 评论(0) 推荐(0) 编辑
摘要:kafka消费者 1. 消费者有订阅topic有俩种方式,一种是assign,一种是subscribe 2.kafka消费模式 消息中间件一般都是拉取模式 可以看下图一个典型的实例代码 只调用poll,拉取数据太过粗糙,可以用 seek定位到具体位置在进行拉取。 阅读全文
posted @ 2022-01-05 10:39 习惯了蓝 阅读(665) 评论(0) 推荐(0) 编辑
摘要:Zookeeper在Kafka中的作用 https://blog.csdn.net/qq_38262266/article/details/108621326 阅读全文
posted @ 2022-01-04 19:22 习惯了蓝 阅读(30) 评论(0) 推荐(0) 编辑
摘要:客户端在配置bootstrap-server的时候就已经拿到了kafka集群的元数据(broker数,分区数等等),kafka集群是每台broker都保持有整个集群的元数据的,所以访问任何一台节点都可以,不像hdfs要去namenode拿。 阅读全文
posted @ 2022-01-03 21:37 习惯了蓝 阅读(182) 评论(0) 推荐(0) 编辑
摘要:kafka介绍 kafka作为一个消息存储系统,具有异步,削峰,解耦的作用。与一般的消息队列的先进先出特性不同,kafka只是一个消息缓冲池,全局是无序的(也可以强行变成有序,不过这种情况不在这里讨论) kafka的一些概念 消息:Record。Kafka 是消息引擎嘛,这里的消息就是指 Kafka 阅读全文
posted @ 2022-01-03 20:03 习惯了蓝 阅读(156) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示