Flink 知识笔记整理

目录

前文:

一、概念

1.1 架构及调度

1.2 执行图

         1.3 基本流程

二、状态与容错

2.1 状态一致性

2.2 Checkpoint与Savepoint

2.3 State Backends

2.4 State

三、API

3.1 参数及变量

3.2 DataStream API

3.3 DataSet API 

3.4 Table API

四、Watermark与window

4.1 Watermark

4.2 window

五、其他特性

5.1 CEP


前文:

                  流式处理的王者,适应各种复杂场景。

                  相关代码案例:https://github.com/CesarChoy/flinkdemo

一、概念

1.1 架构及调度

1.2 执行图

1.3 基本流程

 

二、状态与容错

2.1 状态一致性

备注:业务的保证,数据一致性的基石。

2.2 Checkpoint与Savepoint

备注:Checkpoint设置检查点(保存参数),savepoint用于手动中断恢复作业。

2.3 State Backends

备注:算子状态保存的位置。

2.4 State

备注:算子状态

 

 

三、API

3.1 参数及变量

备注:程序获取公共参数到传递参数

3.2 DataStream API

备注:底层自定义代码

3.3 DataSet API 

备注:不同的启动环境,调用的API不同

互转:

3.4 Table API

两种Planner的区别:1.10版本完成迭代

 

 

四、Watermark与window

4.1 Watermark

备注:如果是事件时间需要设置watermark

4.2 window

备注:在时间语义下,可以划分窗口。

五、其他特性

5.1 CEP

备注:优秀的机制可以应用于各种复杂的事件监控场景。

 

 

 

 

 

 

 

Flink的安装目录下,主要有以下几个配置文件: 1. flink-conf.yaml:该文件是Flink的主要配置文件,用于设置Flink的全局配置。 2. 日志的配置文件:用于配置Flink的日志打印格式、级别等相关参数。 3. zk配置:用于配置Flink与ZooKeeper的连接信息,以便Flink可以使用ZooKeeper来实现高可用和容错机制。 4. Flink SQL Client配置:用于配置Flink SQL客户端的相关参数,如连接信息、默认目录等。 除了以上配置文件,根据table程序的需要,还可以通过配置一些必要的参数来优化表操作。举个例子,对于无界流程序,可能需要确定必要的状态大小上限。 在Java代码中,可以使用TableEnvironment的getConfig()方法获取Flink的配置对象,然后通过配置对象的setString()方法来设置底层的键值对配置。例如,可以通过以下方式设置mini-batch优化相关的配置参数: ```java // 实例化table environment TableEnvironment tEnv = ...; // 访问flink配置 Configuration configuration = tEnv.getConfig().getConfiguration(); // 设置底层key-value配置 configuration.setString("table.exec.mini-batch.enabled", "true"); // 开启mini-batch优化 configuration.setString("table.exec.mini-batch.allow-latency", "5 s"); // 缓存输入数据5秒 configuration.setString("table.exec.mini-batch.size", "5000"); // 每个聚合操作任务可以缓存的最大数据条数为5000条 ``` 通过以上配置,可以启用mini-batch优化,并设置相应的缓存参数,以提高表操作的性能和效率。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Flink 从 0 到 1 学习 —— Flink 配置文件详解](https://blog.csdn.net/tzs_1041218129/article/details/101104375)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [flink-sql查询配置与性能优化参数详解-1.14](https://blog.csdn.net/u012443641/article/details/127900815)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值