大数据调度平台Airflow版本升级方案文档(1.X升级到2.X)

本文档详细介绍了Airflow从1.X到2.0版本的升级方案,包括新特性如TaskFlow API、Scheduler性能提升、Task Groups、REST API等。升级步骤涉及Python版本升级、安装升级检查脚本、导入后端Providers、DAGs升级等。建议先升级到1.10.14作为桥梁版本,并在升级前使用升级检查脚本确保顺利过渡。回退方案推荐使用快照升级法。
摘要由CSDN通过智能技术生成

1. 背景

目前生产使用的版本v1.7官方已不再维护,且过于落后,官方维护的最低版本是1.10.1
airflow老版本的问题比较多,随着业务发展已不能很好支持当前使用场景,故需升级到2.X

1.1 airflow 版本情况

airflow 2014年开始开发,2016年发布第一个版本1.7.X,2019年成为Apache 项目
目前最新版本2.3.3 (20220705)

在这里插入图片描述

2. 2.X新特性

airflow 2.0是一个主要的版本(超级大的版本更新),不仅仅 UI 更新了,最核心的组件 Scheduler 性能也有了极大的提升,分布式环境下的高可用模型也做了改变,同时还有 Airflow 上的 Operator 和 Hook 也做了新的分门别类
官方介绍如下: https://airflow.apache.org/blog/airflow-two-point-oh-is-here/

2.1 TaskFlow API

引入了编写DAG的新方法: TaskFlow API 一种新的编写dags的方式
DAGs现在更容易进行编写,特别是在使用到PythonOperator的时候.任务之间的依赖更清楚,XCom更加的好用.

2.2 UI

崭新的用户界面(Refreshed UI)
我们已经给 Airflow UI a visual refresh 并更新了一些样式.

2.3 Scheduler性能提升

在这里插入图片描述

之前 Scheduler 的分布式执行是使用主从模型,但是在 Airflow 2.0 改成了主主模型,我的理解是就是基于元数据库,所有的 Scheduler 都是对等的。带来的优势就是:

● 之前崩溃的调度程序的恢复时间主要依赖于外部健康检查第一时间发现识别故障,但是现在停机时间为零且没有恢复时间,因为其他主动调度程序会不断运行并接管操作。
● 支持读单个调度程序进行更改,而不会影响其他调度程序。

对于某个单 Scheduler 来说,1.7 就引入了 DAG 序列化,通过使 Web 服务器无需解析 DAG 文件而允许它读取序列化的DAG,大大提高了 DAG 文件的读取性能。Airflow 2.0 Scheduler 通过使用来自数据库的序列化后 DAG 进行任务调度和调用,扩展了 DAG 序列化的使用。这减少了重复解析 DAG 文件以进行调度所需的时间。

官方压测结果

官方提供的一份性能对比图,如下:
benchmarking configuration was: 4 Celery Workers, PostgreSQL DB, 1 Web Server, 1 Scheduler.
Results for 1,000 tasks run, measured as total task latency (referenced below as task lag).

在这里插入图片描述
吞吐量是随着schedulers线性增长的

在这里插入图片描述

2.4 Task Groups

SubDAGs were commonly used for grouping tasks in the UI, but they had many drawbacks in their execu

在Apple TV和Chromecast上观看本地内容。 无需等待,无需索引,只需拖放即可观看。 确实没有任何简单的事情。 下载气流 复杂而独特的视频处理管道... 气流的心脏。它以最低的CPU负载确保了最佳的视频质量。 怎么样?气流透明地重新混合了可以重新混合的视频,并对需要转码的视频进行了转码。如果您的计算机支持,则代码转换可以硬件加速。听起来太技术性了吗?这就是我们构建Airflow的原因。它隐藏了所有讨厌的细节,并且可以正常使用TM。 大字幕支持 字幕很重要。与大多数类似软件不同,Airflow无需对视频进行转码即可显示文本字幕。这样可以提高视频质量并降低CPU负载。支持DVD和Bluray字幕。 擦洗预览 寻求不一定是个谜。借助即时清理预览,您可以知道在内容加载之前将要降落的位置。使用触摸遥控器进行擦洗时,在Apple TV 4上也可用。 播放清单和最后位置 通过Airflow,您可以将文件整理到播放列表中,从而观看多个剧集变得尽可能无缝。 Airflow会记住每个文件的播放位置。它还监视当前文件夹,并为新文件自动选择下一个文件以进行不间断的播放。 环绕声 Chromecast和Apple TV全面支持5.1音频。 Airflow与Airplay镜像或Chrome Tab镜像相比如何 镜像不适用于视频播放,通常会使视频质量出现问题。帧速率不正确,存在伪影和口吃。有了Airflow,您将一无所获。它是专为视频播放而设计的,可提供最佳的视频质量。包括Chromecast Ultra和Apple TV 4K上的4K HDR HEVC流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pushkin.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值