
Flink
文章平均质量分 87
闫哥大数据
终有一天,我会爬上一座高坡,看到不一样的风景,转身,告诉身边的人,我发现了什么。
B站账号:闫哥大数据 资料QQ3 群 :523554921
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2025最新版flink2.0.0安装教程(保姆级)
Flink支持多种安装模式。原创 2025-04-15 17:27:06 · 1525 阅读 · 0 评论 -
Flink教程-keyby 窗口数据倾斜的优化(转发)
对于这种简单的数据倾斜,我们可以通过对分组的key加上随机数,再次打散,分别计算打散后不同的分组的pv数,然后在最外层再包一层,把打散的数据再次聚合,这样就解决了数据倾斜的问题。在这个sql的最内层,将分组的key,也就是plat加上一个随机数打散,然后求打散后的各个分组(也就是sql中的plat1)的pv值,然后最外层,将各个打散的pv求和。在这个sql里,我们统计一个网站各个端的每分钟的pv,从kafka消费过来的数据首先会按照端进行分组,然后执行。如果某一个端产生的数据特别大,比如我们的。原创 2025-01-01 20:33:54 · 421 阅读 · 0 评论 -
基于最新的Apache StreamPark搭建指南
官方文档Github地址Apache StreamPark™ 是一个流处理应用程序开发管理框架,旨在轻松构建和管理流处理应用程序,提供使用 Apache Flink® 和 Apache Spark™ 编写流处理应用的开发框架和一站式实时计算平台,核心能力包括不限于应用开发、部署、管理、运维、实时数仓等。为什么要使用 StreamPark 呢?它降低了学习成本和开发障碍,开发人员可以专注于业务逻辑。原创 2024-12-09 18:24:20 · 1604 阅读 · 0 评论 -
Flink学习连载文章13--FlinkSQL高级部分
说明创建窗口的时候,使用的字段不是时间字段,需要写成时间字段TIMESTAMP(3),使用了eventtime需要添加水印,否则报错。2、kafka 对接的 server,写全 bigdata01:9092,bigdata02:9092,bigdata03:9092。需求:按照滚动窗口和EventTime进行统计,每隔1分钟统计每个人的消费总额是多少。窗口分为滚动和滑动,时间分为事件时间和处理时间,两两组合,4个案例。需求:每隔1分钟统计这1分钟的每个用户的总消费金额和消费次数。原创 2024-12-07 22:14:19 · 932 阅读 · 0 评论 -
Flink学习连载文章12--FlinkSQL
因为DataStream中是Row 类型,所以打印的格式是Row 这个类中的toString方法决定的。这个地方的 +I 的意思是新增的数据。toAppendStream: 适用于生成新的计算结果,并不会对老的计算结果进行修改。从Kafka的topic1中消费数据并过滤出状态为success的数据再写入到Kafka的topic2。从Kafka的topic1中消费数据并过滤出状态为success的数据再写入到MySQL。以下内容是FlinkSQL的全新的方式,更加简单高效。Table风格/DSL风格。原创 2024-12-07 22:08:43 · 792 阅读 · 0 评论 -
Flink学习连载文章11--双流Join
一个流中有相同 Key 并且位于同一窗口的元素都会保存在同一个迭代器(Iterable),本示例中绿色流为 greenIterable,橘色流为 orangeIterable,如果要实现 RightJoin,实现原理跟 LeftJoin 一样,需要保证 greenIterable 中没有元素,orangeIterable 中的元素也能输出。需要注意的是,一个元素可能会落在不同的窗口中,因此会在不同窗口中发生关联,例如,绿色流中的0元素。其中a和b分别是上图中绿色流和橘色流中的元素,并且有相同的 key。原创 2024-12-06 17:21:07 · 1419 阅读 · 0 评论 -
阿里云中Flink提交作业流程
有些程序,是需要环境的,假如数据需要依赖我们虚拟机的环境,是没办法在flink上运行的,因为flink访问不到虚拟机的服务,可以写死一些数据,比如自定义数据源,或者写死一些数据,进行测试。访问阿里云首页面:https://www.aliyun.com/查看创建的工作空间,当工作空间状态为运行中时,点击控制台。可以选择SQL开发或者作业运维运行自己的Flink程序。作业运维在本地IDEA开发,将jar包上传。通过选择区域,看哪个区域有虚拟交换机。原创 2024-12-02 18:12:14 · 650 阅读 · 0 评论 -
Flink学习连载文章10--CheckPoint和维表Join
所谓的维表Join: 进入Flink的数据,需要关联另外一些存储设备的数据,才能计算出来结果,那么存储在外部设备上的表称之为维表,可能存储在mysql也可能存储在hbase 等。维表一般的特点是变化比较慢。重启策略的意义:流式数据是不可能停止的,假如有一条错误数据导致程序直接退出,后面的大量数据是会丢失的,对公司来讲,意义是重大的,损失是惨重的。运行,刷新查看checkpoint保存的数据,它会先生成一个新的文件夹,然后再删除老的文件夹,在某一时刻,会出现两个文件夹同时存在的情况。原创 2024-11-28 15:41:20 · 1402 阅读 · 0 评论 -
Flink学习连载文章9--状态(State)
注意: Flink默认已经支持了无状态和有状态计算!例如WordCount代码:已经做好了状态维护, 输入hello,输出(hello,1),再输入hello,输出(hello,2)以wordcout为例,说明上图的流程对Managed State继续细分,它又有两种类型:Keyed State和Operator State。Flink 为每个键值维护一个状态实例,并将具有相同键的所有数据,都分区到同一个算子任务中,这个任务会维护和处理这个key对应的状态。原创 2024-11-28 15:37:00 · 1349 阅读 · 0 评论 -
Flink学习连载文档6--Window的分类
按照指定的数据条数生成一个Window,与时间无关。滚动计数窗口,每隔N条数据,统计前N条数据滑动计数窗口,每隔N条数据,统计前M条数据按照时间生成Window。(重点)滚动时间窗口,每隔N时间,统计前N时间范围内的数据,窗口长度N,滑动距离N滑动时间窗口,每隔N时间,统计前M时间范围内的数据,窗口长度M,滑动距离N,按照会话划定的窗口流是连续的,无界的(对于这个问题,肯定是无法回答的,为何?因为,统计是一种对固定数据进行计算的动作。原创 2024-11-25 22:04:54 · 878 阅读 · 0 评论 -
Flink学习连载文章5--Flink的各种Sink操作
jdbcSink官方已经提供过了,此处仅仅是模拟它的实现,从而学习如何自定义sink/*** @基本功能:* @author: 闫哥**/@Data@Override// 这个里面编写连接数据库的代码)");@Override// 关闭数据库的代码ps.close();@Override// 将数据插入到数据库中。原创 2024-11-24 22:17:59 · 890 阅读 · 0 评论 -
Flink学习连载文章4-flink中的各种转换操作
关于分区,很多技术都有分区:1、hadoop 有分区2、kafka 有分区3、spark 有分区4、hive 有分区使用用户定义的Partitioner 为每个元素选择目标任务/*** @基本功能:* @author: 闫哥**/@Overridereturn 0;return 1;public class _11_自定义分区规则 {//1. env-准备环境@Override});// 每一个分区的数据量有多少@Override。原创 2024-11-22 17:55:52 · 939 阅读 · 1 评论 -
Flink学习连载文章3-Flink中各种Source源
基于本地集合的source(Collection-based-source)基于文件的source(File-based-source)基于网络套接字(socketTextStream)在flink最常见的创建DataStream方式有四种:l 使用env.fromElements(),这种方式也支持Tuple,自定义对象等复合形式。注意:类型要一致,不一致可以用Object接收,但是使用会报错,比如:env.fromElements("haha", 1);原创 2024-11-22 08:42:55 · 1346 阅读 · 0 评论