![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Flink
文章平均质量分 94
半岛铁子_
那就叫小胡吧
展开
-
Flink-CDC实践(含实操步骤与截图)
文章目录前言Flink CDC1. CDC简介1.1 什么是 CDC1.2 CDC 的种类1.3 Flink-CDC2. Flink CDC 案例实操2.1 DataStream 方式的应用2.1.1 导入依赖2.1.2 编写代码2.2.3 提交到集群运行2.1.4 断点续传savepoint2.2 FlinkSQL 方式的应用2.2.1 代码实现2.2.2 测试2.3 自定义反序列化器2.4 DataStream 和 FlinkSQL 方式的对比总结参考资料前言本文主要对B站的Flink视频进行学习并原创 2022-05-30 21:39:51 · 7559 阅读 · 2 评论 -
Flink学习笔记(十一)Table API 和 SQL
文章目录11. Table API 和 SQL11.1 快速上手11.1.1 需要依赖11.1.2 示例11.2 基本 API11.2.1 程序架构11.2.2 创建表环境11.2.3 创建表11.2.4 表的查询11.2.5 输出表11.2.6 表和流的转换11.3 流处理中的表11.3.1 动态表和持续查询11.3.2 将流转换成动态表11.3.2 用 SQL 持续查询11.3.3 将动态表转换为流11.4 时间属性和窗口11.4.1 事件时间11.4.2 处理时间11.4.3 窗口(Window)11原创 2022-05-29 21:09:41 · 834 阅读 · 0 评论 -
Flink学习笔记(十)Flink容错机制
文章目录10. Flink容错机制10.1 检查点(Checkpoint)10.1.1 检查点的保存10.1.2 从检查点恢复状态10.1.3 检查点算法10.1.4 检查点配置10.1.5 保存点(Savepoint)10.2 状态一致性10. Flink容错机制在分布式架构中,当某个节点出现故障,其他节点基本不受影响。这时只需要重启应用, 恢复之前某个时间点的状态继续处理就可以了。这一切看似简单,可是在实时流处理中,我们 不仅需要保证故障后能够重启继续运行,还要保证结果的正确性、故障恢复的速度、对处原创 2022-05-29 10:45:40 · 428 阅读 · 0 评论 -
Flink学习笔记(九)状态编程
文章目录9. 状态编程9.1 Flink 中的状态9.1.1 有状态算子9.1.2 状态的管理9.1.3 状态的分类9.2 按键分区状态(Keyed State)9.2.1 基本概念和特点9.2.2 支持的结构类型9.2.3 整体介绍9.2.4 状态生存时间(TTL)9.3 算子状态(Operator State)9.3.1 基本概念和特点9.3.2 状态类型9.4 状态持久化和状态后端9.4.1 检查点(Checkpoint)9.4.2 状态后端(State Backends)总结9. 状态编程9.1原创 2022-05-27 17:06:09 · 449 阅读 · 0 评论 -
Flink学习笔记(八)多流转换
文章目录8. 多流转换8.1 分流8.2 合流8.2.1 联合(Union)8.2.2 连接(Connect)8.3 基于时间的合流8.3.1 窗口联结(Window Join)8.3.2 间隔联结(Interval Join)8.3.3 窗口同组联结(Window CoGroup)总结8. 多流转换无论是基本的简单转换和聚合,还是基于窗口的计算,我们都是针对一条流上的数据进行处理的。而在实际应用中,可能需要将不同来源的数据连接合并在一起处理,也有可能需要将 一条流拆分开,所以经常会有对多条流进行处理的原创 2022-05-27 14:44:54 · 323 阅读 · 0 评论 -
Flink学习笔记(七)处理函数
7. 处理函数Flink的多层API:在更底层,我们可以不定义任何具体的算子(比如 map,filter,或者 window),而只是提 炼出一个统一的“处理”(process)操作——它是所有转换算子的一个概括性的表达,可以自 定义处理逻辑,所以这一层接口就被叫作“处理函数”(process function)。因为它不限定 具体做什么,所以理论上我们可以做任何事情,实现所有需求。7.1 基本处理函数(ProcessFunction)处理函数主要是定义数据流的转换操作,所以也可以把它归到转换原创 2022-05-27 09:40:18 · 435 阅读 · 0 评论 -
Flink学习笔记(六)Flink的时间和窗口
文章目录6. Flink的时间和窗口6.1 时间语义6.2 水位线(Watermark)6.2.1 事件时间和窗口6.2.2 什么是水位线6.2.3 如何生成水位线6.2.4 水位线的传递6.3 窗口(Window)6.3.1 窗口的概念6.3.2窗口的分类6.3.3 窗口 API 概览6.3.4 窗口分配器(Window Assigners)6.3.5 窗口函数(Window Functions)6.3.6 其他PAI6.4 迟到数据的处理6.4.1 设置水位线延迟时间6.4.2 允许窗口处理迟到数据6原创 2022-05-26 17:25:09 · 1764 阅读 · 0 评论 -
Flink学习笔记(五)DataStream API
文章目录前言5. DataStream API5.1 执行环境5.1.1 创建执行环境5.1.2 执行模式5.1.3 触发程序执行5.2 源算子(Source)5.2.1 准备工作5.2.2 从集合中读取数据5.2.3 从文件读取数据5.2.4 从Socket读取数据5.2.5 从Kafka读取数据5.2.6 自定义Source5.2.7 Flink支持的数据类型5.3 转换算子(Transformation)5.3.1 基本转换算子5.3.2 聚合算子(Aggregation)5.3.3 用户自定义函数(原创 2022-05-25 21:10:31 · 598 阅读 · 0 评论 -
Flink学习笔记(四)Flink运行时架构
4.Flink运行时架构4.1系统架构 Flink 的运行时架构中,最重要的就是两大组件:作业管理器(JobManger)和任务管理器(TaskManager)。对于一个提交执行的作业,JobManager 是真正意义上的“管理者”(Master),负责管理调度,所以在不考虑高可用的情况下只能有一个;而 TaskManager 是“工作者”(Worker、Slave),负责执行任务处理数据,所以可以有一个或多个。1.整体构成Flink 的作业提交和任务处理时的系统如下图所示:2.作业管理器原创 2022-05-25 17:12:27 · 646 阅读 · 0 评论 -
Flink学习笔记(三)Flink安装部署
文章目录集群部署启动提交作业部署模式Yarn模式集群部署启动Flink 是典型的 Master-Slave 架构的分布式数据处理框架,其中 Master 角色对应着JobManager,Slave 角色则对应 TaskManager。下载安装包并解压进入 Flink 官网,下载 1.13.0 版本安装包 flink-1.13.0-bin-scala_2.12.tgz,注意对应 scala 版本为 scala 2.12 的安装包。解压至/opt/moudle下tar -zxvf flink-1原创 2022-05-25 16:15:20 · 1535 阅读 · 0 评论 -
Flink学习笔记(二) Flink初体验
2. Flink初体验2.1 创建maven项目添加依赖<properties> <flink.version>1.13.0</flink.version> <java.version>1.8</java.version> <scala.binary.version>2.12</scala.binary.version> <slf4j.versi原创 2022-05-21 09:43:38 · 663 阅读 · 0 评论 -
Flink学习笔记(一)Flink简介
1. Flink简介Flink 是 Apache 基金会旗下的一个开源大数据处理框架。Flink 的官网主页地址:https://flink.apache.org/在 Flink 官网主页的顶部可以看到,Flink的核心目标,是“数据流上的有状态计算”(Stateful Computations over Data Streams)。1.1 Flink框架处理流程1.2 OLTP和OLAP联机事务处理OLTP(on-line transaction processing)OLTP是传统的关原创 2022-05-19 10:31:00 · 966 阅读 · 0 评论