Flink1.18新特性生产环境应用的重点解读!

大家好,我是你们的群主王知无呀。

Flink 1.18已经于近期发布了。在这个新版本中新增了很多新的功能和特性。在这些特性中,有一些是生产环境非常重要的能力,大家在使用过程中可以重点参考和了解其中的原理

算子级别状态保留时间TTL设置

首先,在流处理的提升上,从 Flink 1.18 版本开始,Table API 和 SQL 用户可以为有状态的算子单独设置状态保留时间 (TTL)。

94f5f1ee7082a385b7d1e3f9230ff92e.png

这个功能是一个非常实用和重要的功能,在以前的版本中,状态保留时间只能在 pipeline 级别使用配置项通过table.exec.state.ttl进行控制。引入算子级别的状态保留后,用户现在可以根据其具体需求优化资源使用。

现在可以为左侧和右侧流设置不同的 TTL,这有助于大数据量的状态大小控制,可以有效减少状态大小,在失败恢复,重启上线等场景中,任务可以更快恢复。

但是在公开的Flink1.18版本给出的官方用法中,采用了修改JSON File这种不太易用的方式:

-- left source table
CREATE TABLE Orders (`order_id` INT,`line_order_id` INT
) WITH ('connector'='...'
);-- right source table
CREATE TABLE LineOrders (`line_order_id` INT,`ship_mode` STRING
) WITH ('connector'='...'
);-- sink table
CREATE TABLE OrdersShipInfo (`order_id` INT,`line_order_id` INT,`ship_mode` STRING
) WITH ('connector' = '...'
);COMPILE PLAN '/path/to/plan.json' FOR
INSERT INTO OrdersShipInfo
SELECT a.order_id, a.line_order_id, b.ship_mode 
FROM Orders a JOIN LineOrders b ON a.line_order_id = b.line_order_id;

然后通过修改这个PLAN中的json数据达到分别设置TTL的目的:

5956b9fc8d5e8bbe407ba17b66522d0e.png

上图中的PLAN中有针对算子的state状态设置,可以根据需要修改左右流的状态:

75c78817328fd1f1f7f2b910caf6a44f.png

在FLIP-292中,社区也给出了这么做的理由:

f96c8a85d2e3daf8b7ca3e9cbea77670.png 47b9db36af3c9c2e5b605d057be77588.png

水印对齐和空闲检测

在此之前,这两个功能只能在DatStream API中使用:

-- configure in table options
CREATE TABLE user_actions (...user_action_time TIMESTAMP(3),WATERMARK FOR user_action_time AS user_action_time - INTERVAL '5' SECOND
) WITH ('scan.watermark.idle-timeout'='1min',...
);-- use 'OPTIONS' hint
select ... from source_table 
/**OPTIONS('scan.watermark.idle-timeout'='1min') 
*/
-- configure in table options
CREATE TABLE user_actions (
...
user_action_time TIMESTAMP(3),WATERMARK FOR user_action_time AS user_action_time - INTERVAL '5' SECOND
) WITH (
'scan.watermark.alignment.group'='alignment-group-1',
'scan.watermark.alignment.max-drift'='1min',
'scan.watermark.alignment.update-interval'='1s',
...
);-- use 'OPTIONS' hint
select ... from source_table 
/** OPTIONS(
'scan.watermark.alignment.group'='alignment-group-1', 
'scan.watermark.alignment.max-drift'='1min', 
'scan.watermark.alignment.update-interval'='1s') 
*/

其中水印对齐在在多并行度下,Watermark 会在每个并行度的 source 处或者其他算子内部添加,并且需要在进行对齐。

空闲检测就更有用了,我们在很多业务场景中经常会有Source端数据迟迟不来,导致下游某些酸子不能触发计算,在之前我们可以通过设置table.exec.source.idle-timeout全局生效,现在我们可以在不同的源上设置不同的超时时间了。

动态细粒度扩缩容

Flink 1.18 起,在作业运行时,我们可以通过 Flink Web UI 和 REST API 更改作业的任何 task 的并行度。

之前可能受限于平台能力,这个情况困扰过很多同学,不能修改作业的并行度。现在这个能力有了,可以方便我们轻松的进行任务的扩缩容,并且这个能力和反压监控相结合,更容易调整任务的资源,确保集群任务的健康稳定运行,另外可以方便的进行线上任务治理。

Flink的能力还在不断更新中,例如对Paimon的支持上也有了不小的提升。还有一些其他的改动,大家可以根据实际情况查看官方的文档。

152922e0fc1e20598a71559da463ac43.png300万字!全网最全大数据学习面试社区等你来!

如果这个文章对你有帮助,不要忘记 「在看」 「点赞」 「收藏」 三连啊喂!

2bafef8aa6bbb649cde3a4e7f7d5c347.png

456a874196a94bce67f388eb6d133c9f.jpeg

2022年全网首发|大数据专家级技能模型与学习指南(胜天半子篇)

互联网最坏的时代可能真的来了

我在B站读大学,大数据专业

我们在学习Flink的时候,到底在学习什么?

193篇文章暴揍Flink,这个合集你需要关注一下

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

Flink CDC我吃定了耶稣也留不住他!| Flink CDC线上问题小盘点

我们在学习Spark的时候,到底在学习什么?

在所有Spark模块中,我愿称SparkSQL为最强!

硬刚Hive | 4万字基础调优面试小总结

数据治理方法论和实践小百科全书

标签体系下的用户画像建设小指南

4万字长文 | ClickHouse基础&实践&调优全视角解析

【面试&个人成长】2021年过半,社招和校招的经验之谈

大数据方向另一个十年开启 |《硬刚系列》第一版完结

我写过的关于成长/面试/职场进阶的文章

当我们在学习Hive的时候在学习什么?「硬刚Hive续集」

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/178297.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业邮箱:哪个品牌最实用?

企业邮箱用哪个品牌的好用?从无广告、新手上手难度、功能来看Zoho Mail企业邮箱,优势很大。Zoho Mail企业邮箱界面简洁无广告,让用户可以更专注的去处理邮件,为了便于用户处理邮件,Zoho 还提供了多种整理和分类邮件的选…

学习c++的第二天

目录 数据类型 基本数据类型 typedef 声明 枚举类型 类型转换 变量类型 变量定义 变量声明 左值(Lvalues)和右值(Rvalues) 变量作用域 数据类型 基本数据类型 C 为程序员提供了种类丰富的内置数据类型和用户自定义的数…

pytorch学习第五篇:NN与CNN代码实例

这篇文章详细介绍了全链接神经网络实现方法,以及卷积的实现方法。最后我们发现,卷积的实现方法与全链接大同小异,因为 torch 为我们做了很多工作,我们来看看这两个有什么区别。 我们使用 torch 框架来实现两种神经网络,来对图形进行分类。 NN 首先我们引入依赖包 impor…

利用关键字批量整理文件:用关键字轻松移动多个文件到指定文件夹

在日常生活和工作中,我们经常需要处理大量的文件,随着时间的推移,电脑中的文件越来越多,而文件的命名可能并不规范,导致查找和整理变得非常困难。因此,我们需要一种高效的文件管理方法,以方便我…

微信小程序自定义弹窗阻止滑动冒泡catchtouchmove之后弹窗内部内容无法滑动

自定义弹窗 如图所示: 自定义弹窗内部有带滚动条的盒子区域 问题: 在盒子上滑动,页面如果超出一屏的话,也会跟着一起上下滚动 解决方案:给自定义弹窗 添加 catchtouchmove 事件,阻止冒泡即可 网上不少…

查询和下载“省市县乡村“五级行政区划

背景信息 在更新完CTAmap1.12版本之后,我想继续完善这个系列的数据,把时间范围往前更新是基础,但如何展现多年的数据是个值得解决的问题。 如何展现多个年份的行政区划?我的思考是用思维导图的形式,简单明了。既然要…

分享66个工作总结PPT,总有一款适合您

分享66个工作总结PPT,总有一款适合您 66个工作总结PPT下载链接:https://pan.baidu.com/s/1g8AWl42-tLdFYXEHZUYyGQ?pwd8888 提取码:8888 Python采集代码下载链接:采集代码.zip - 蓝奏云 立冬PPTPPT模板 西藏信仰PPT模板 古镇丽…

C++构造函数和析构函数详解

一、构造函数 1、概念 构造函数是特殊的成员函数,需要注意的是,构造函数虽然名叫做构造,但是构造函数的主要任务并不是开空间创建对象,而是初始化对象。 2、特征 函数名与类名相同。无返回值对象实例化时编译器自动调用对应的…

SMTP邮件发送图片-如何在github中存储图片并访问

之前写了一篇文章 Go:实现SMTP邮件发送订阅功能(包含163邮箱、163企业邮箱、谷歌gmail邮箱),实现了通过邮箱服务来发送邮件,但都是文字内容,要是想实现邮件发送图片,就需要将图片放到公网可访问…

关注云栖大会的感受:从工业大脑到全面AI时代的进化

前言 自2009年的地方网站峰会到如今的云栖大会,这个盛大的科技盛事已经走过了一个多十年的漫长历程。这个会议见证了中国科技行业的崛起,也记录了技术的不断演化。而对我来说,首次接触云栖大会是在2020年,当年大会迁移到线上&…

LV.12 D15 WDT实验 学习笔记

一、WDT简介 WDT Watch Dog Timer即看门狗定时器,其主要作用是当发生软件故障时可产生复位信号使SOC复位,其本质是一个计数器 工作原理 CPU正常工作时,需要定时往看门狗计数器里刷新一个比较大的值,来保证看门狗计数器中的值不会…

模型应用系实习生-模型训练笔记(更新至线性回归、Ridge回归、Lasso回归、Elastic Net回归、决策树回归、梯度提升树回归和随机森林回归)

sklearn机械学习模型步骤以及模型 一、训练准备(x_train, x_test, y_train, y_test)1.1 导包1.2 数据要求1.21 导入数据1.22 数据类型查看检测以及转换1.22 划分数据 二、回归2.1 线性回归2.2 随机森林回归2.3 GradientBoostingRegressor梯度提升树回归2…

利用C++实现RANSAC拟合多条直线并提出符合要求的直线,标准库和手写(不使用任何库、链表方式)两种方法

**背景:**2D/3D激光雷达扫描的点云数据,拟合直线做分析,实现总共有三种方法: (1)PCL点云库实现 (2)利用标准库手写 (3)不使用任何库,链表方式实现…

最新ssl证书申请与安装配置2024版

最新ssl证书申请与安装配置2024版 目录 最新ssl证书申请与安装配置2024版 1、申请腾讯云ssl证书 2、ssl证书所属域名的验证 2.1、确保你的web服务正常访问“域名”及其子域“www.域名” 2.2、国内或国外均能访问 2.3、.txt文件访问验证 2.4、验证域名 3、下载签发的ss…

视频编码转换技巧:视频批量转码H264转H265,高效且顺畅

随着数字媒体的广泛应用,视频编码转换已成为一种普遍的需求。不同的视频格式和编码标准使得在不同设备上播放视频成为可能,同时也带来了兼容性和传输效率的问题。本文讲解引用云炫AI智剪使视频编码转换技巧,即批量将H264编码转换为H265编码&a…

算法通过村第十八关-回溯|青铜笔记|什么叫回溯(后篇)

文章目录 前言回溯热身问题输出二叉树的所有路径:路径总和问题: 总结 前言 提示:今夜思量千条路,明朝依旧卖豆腐。 --谚语 回溯是非常重要的算法思想之一,主要解决一些暴力枚举也搞不定的问题(这里埋个坑&a…

使用 Python 进行自然语言处理第 5 部分:文本分类

一、说明 关于文本分类,文章已经很多,本文这里有实操代码,明确而清晰地表述这种过程,是实战工程师所可以参照和依赖的案例版本。 本文是 2023 年 1 月的 WomenWhoCode 数据科学跟踪活动提供的会议系列文章中的一篇。 之前的文章在…

使用虚拟合成数据训练对象检测模型

监督式机器学习 (ML) 彻底改变了人工智能,并催生了众多创新产品。然而,对于监督式机器学习,总是需要更大、更复杂的数据集,而收集这些数据集的成本很高。如何确定标签质量?如何确保数据代表生产…

100量子比特启动实用化算力标准!玻色量子重磅发布相干光量子计算机

2023年5月16日,北京玻色量子科技有限公司(以下简称“玻色量子”)在北京正大中心成功召开了2023年首场新品发布会,重磅发布了自研100量子比特相干光量子计算机——“天工量子大脑”。 就在3个月前,因“天工量子大脑”在…

关于idea使用的一些操作设置

关于idea使用的一些操作设置 1. 常用的一下设置1.1 快捷键相关1.2 配置自动生成注释(类、方法等)1.3 maven项目相关1.4 常见其他的一些操作设置 2. IntelliJ IDEA 取消param注释中参数报错提示3. idea同时打开多个文件,导航栏不隐藏、自动换行…