内容简介:Apache Airflow 2.0.0 已正式发布,Airflow 是一个灵活、可扩展的工作流自动化和调度系统,可编集和管理数百 PB 的数据流。项目可轻松编排复杂的计算工作流,通过智能调度、数据库和依赖关系管理、错误处理和日志...
Apache Airflow 2.0.0 已正式发布,Airflow 是一个灵活、可扩展的工作流自动化和调度系统,可编集和管理数百 PB 的数据流。项目可轻松编排复杂的计算工作流,通过智能调度、数据库和依赖关系管理、错误处理和日志记录,Airflow 可以对从单个服务器到大规模集群的资源进行自动化管理。Airflow 采用 Python 编写,具有高扩展性,能够运行其他语言编写的任务,并允许与常用的体系结构和项目集成,如 AWS S3、 Docker 、Kubernetes、 MySQL 、PostgresSQL 等。
下面简单介绍 2.0 版本的主要新特性。
更新 UI
Airflow 2.0 对 UI 进行了重大更新,并升级了部分样式。
引入编写 dag(有向无环图)的新方法:TaskFlow API
新的方法对依赖关系的处理更清晰,XCom 也更易于使用。
示例
from airflow.decorators import dag, task
from airflow.utils.dates import days_ago
@dag(default_args={'owner': 'airflow'}, schedule_interval=None, start_date=days_ago(2))
def tutorial_taskflow_api_etl():
@task
def extract():
return {"1001": 301.27, "1002": 433.21, "1003": 502.22}
@task
def transform(order_data_dict: dict) -> dict:
total_order_value = 0
for value in order_data_dict.values():
total_order_value += value
return {"total_order_value": total_order_value}
@task()
def load(total_order_value: float):
print("Total order value is: %.2f" % total_order_value)
order_data = extract()
order_summary = transform(order_data)
load(order_summary["total_order_value"])
tutorial_etl_dag = tutorial_taskflow_api_etl()
详情查看
TaskFlow API Tutorial
TaskFlow API Documentation
提升 Scheduler 性能
2.0 版本提升了 Airflow Scheduler 性能,启动任务的速度明显变快。在 Astronomer.io 上对此 Scheduler 进行基准测试的结果显示,它的速度快到连开发者都怀疑结果出错了。
Scheduler 现已兼容 HA
支持运行多个 scheduler 实例,这对于弹性使用(如果 scheduler 发生故障)和调度性能都非常有意义。若希望完全使用此功能,需要 Postgres 9.6+ 或 MySQL 8+(MySQL 5 和 MariaDB 可能无法使用多个 scheduler)。
运行多个 scheduler 不需要任何配置或其他设置,只需在其他地方启动 scheduler (确保它可以访问 DAG 文件),它将通过数据库与现有的 scheduler 配合使用。
详情查看 Scheduler HA 文档。
简化 KubernetesExecutor
Airflow 2.0 重新建立了 KubernetesExecutor 架构,为 Airflow 用户提供更快、更容易理解和更灵活的使用方式。用户现在可以访问完整的 Kubernetes API 来创建一个 .yaml pod_template_file
,而不是在 airflow.cfg 中指定参数。
此外还用pod_override
参数替换了executor_config
词典,此项变化从 KubernetesExecutor 删除了三千多行代码,使其运行速度更快,并减少潜在错误。
详情查看
Docs on pod_template_file
Docs on pod_override
完整发布公告 https://airflow.apache.org/blog/airflow-two-point-oh-is-here/。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 290家公司都在用的任务调度系统,还在Github上开源了
- Schedulis V1.0.0 发布--开源的金融级工作流调度方案
- 宜信开源|微服务任务调度平台SIA-TASK入手实践
- 开源分布式工作流任务调度系统Easy Scheduler 1.0.1正式发布
- 简单才是王道?刚开源的微服务任务调度平台SIA—TASK初探
- 宜信开源|分布式任务调度平台SIA-TASK的架构设计与运行流程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Algorithms
Robert Sedgewick、Kevin Wayne / Addison-Wesley Professional / 2011-3-19 / USD 89.99
Essential Information about Algorithms and Data Structures A Classic Reference The latest version of Sedgewick,s best-selling series, reflecting an indispensable body of knowledge developed over the ......一起来看看 《Algorithms》 这本书的介绍吧!