![](https://img-blog.csdnimg.cn/20210228204230221.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
大数据之Flink
Flink 学习和理解
weixin_52346735
Wang-Gang
展开
-
Exactly-once 只有一次的两个阶段提交 (Exactly-once two-phase commit)
Data Source 会先从 kafka 里面读取数据JobManger 会向 Data Source 中 发起 Checkpoint 指令并同时向 S ource 发送 barrier (检查点分界线),如果这个Source 有多个并行,那么每个Source 都会有一个 barrier这个 barrier 会把 Data Source 中的状态保存起来持久化到 State Backend 中 ,然后 barrier 会向下个算子Window 中传递,然后我们假如会在 Window ...原创 2021-03-12 20:53:32 · 228 阅读 · 1 评论 -
Flink 的 状态
State状态什么是状态: 程序在计算过程当中的中间结果Flink实时计算程序为了保证计算过程中,出现异常可以容错,就要将中间的计算结果数据存储起来,这些中间数据就叫做State。State可以是多种类型的,默认是保存在JobManager的内存中,也可以保存到TaskManager本地文件系统或HDFS这样的分布式文件系统StateBackEnd用来保存State的存储后端就叫做StateBackEnd,默认是保存在JobManager的内存中,也可以保存的本地文件系统或HDFS这样的分布原创 2021-03-08 22:54:59 · 377 阅读 · 0 评论 -
Flink 的 算子链 和 资源组
Task Slots 和资源**来自同一个 job 的不同 task 的 substask 可以挤到同一个槽里面**共享资源槽的两个优点:1 Flink 集群中有几个 task slot ,就有多少个并行度,无需计算程序中包含多少个 subtask2 容易获得更好的资源利用率,如果没有 slot 共享,非密集 subtask 会将 阻塞 和 密集型 一样多的资源,通过 slot 共享,我们示例 中的基本并行度 从2 增加到6 ,可以充分利用分配的资源,同时确保 繁重的 subt原创 2021-03-08 14:28:08 · 257 阅读 · 0 评论 -
Flink 之 EventTime 划分时间窗口(滑动窗口)
不分组,按照EventTime划分 滑动窗口*Non-keyed Window,底层调用的是windowAllpublic class EventTimeSlidingWindowAllDemo1 { public static void main(String[] args) throws Exception { // 前关后闭 0 -- 4999 5000- 9999 StreamExecutionEnvironment env = StreamE原创 2021-03-07 23:00:55 · 642 阅读 · 0 评论 -
Flink 之 EventTime 划分时间窗口(会话窗口)
不分组,按照 EventTime 划分 会话 窗口*Non-keyed Window,底层调用的是windowAll这个是大于最后会话数据,不是大于等于public class EventTimeSessionWindowAllDemo { public static void main(String[] args) throws Exception { // 前关后闭 0 -- 4999 5000- 9999 StreamExecutionEnvir原创 2021-03-07 22:53:57 · 369 阅读 · 0 评论 -
Flink 之 EventTime 划分时间窗口(滚动窗口)
窗口触发的条件 : 水位线 >= 窗口结束的时间一不分组,按照EventTime划分滚动窗口Non-keyed Window,底层调用的是windowAllpublic class EventTimeTumblingWindowAllDemo { public static void main(String[] args) throws Exception { // 2021-03-06 21:00:00,1 // 2021-03-06 2原创 2021-03-07 22:50:23 · 664 阅读 · 0 评论 -
Flink 的 窗口和时间类型
窗口运算流式计算是一种被设计用于处理无限数据集的数据计算引擎,所谓无限数据集是指一种源源不断的数据流抽象成的集合。而Window就是一种将无限数据集切分成多个有限数据集并对每一个有限数据集分别进行处理的手段。Window本质上是将数据流按照一定的规则,逻辑地切分成很多个有限大小的“bucket”桶,这样就可以对每一个在“桶里面”的有限的数据依次地进行计算了。流式计算引擎的特点是每输入一条数据就立即处理,延迟低。然而在一些场景下偏偏希望将数据先攒成一个个小批次,然后对每一个小批次再进行运算。例如用Fl原创 2021-03-05 21:50:40 · 450 阅读 · 0 评论 -
Flink 安装搭建 Flink 集群
第一步先搭建 Flink 集群① 下载安装 Flink 安装包下载地址:https://flink.apache.org/downloads.html② 上传flink安装包到Linux服务器上③ 解压flink安装包tar -zxf flink-1.9.1-bin-scala_2.11.tgz -C /opt/apps/④ 修改 conf 目录下的 flink-conf.yaml 配置文件#指定jobmanager的地址jobmanager.rpc.address: linu原创 2021-02-28 21:10:43 · 143 阅读 · 0 评论 -
Flink 简介和理解
**什么是 Flink**Apache Flink 是一个分布式大数据处理的引擎,可对有限的数据流和无线数据流进行有状态的计算,可部署在各种集群环境,对各种大小的数据规模进行快速计算有限数据流:数据分批次执行完的无限数据流: 一直接收计算,不停歇的Flink的历史早在 2008 年,Flink 的前身已经是柏林理工大学一个研究性项目, 在 2014 被 Apache 孵化器所接受,然后迅速地成为了 ASF(Apache Software Foundation)的顶级项目之一Flink的商原创 2021-02-28 20:41:11 · 155 阅读 · 0 评论