Apache Airflow 2.3.0 釋出

banq發表於2022-05-02

Apache Airflow 2.3.0釋出了! 它是一個工作流編排器,用於構建資料管道並按計劃執行它們。
  •  這是自2.0.0以來最大的Apache Airflow版本。
  • 自2.2以來有700多個提交,包括50個新功能,99個改進,85個錯誤修復


以下是最大的和值得注意的變化:
  • Dynamic Task Mapping:允許工作流在執行時根據當前資料建立一些任務,而不是讓DAG作者事先知道需要多少任務。
  • 網格檢視取代了樹形檢視:顯示執行和任務,但將依賴關係線留給圖形檢視,並更好地處理任務組!
    為DAG版本管理鋪平了道路--可以輕鬆顯示版本,這在樹狀檢視中是無法處理的!
  • 新的 "airflow db clean "CLI命令用於清除舊記錄:這將有助於減少執行DB遷移的時間(當更新Airflow版本時);
    不需要再使用維護DAG了!
  • 對資料庫降級的一流支援 - `airflow db downgrade`命令:你可以降級到一個特定的Airflow版本或一個特定的Alembic版本ID。
    包括一個"--show-sql-only "來輸出所有的SQL,這樣你就可以自己執行它了。
  • 新的執行器:LocalKubernetesExecutor:它提供了使用LocalExecutor或KubernetesExecutor執行任務的能力,前者在排程器服務中執行任務,後者則在kubernetes上執行每個任務,在Kubernetes叢集上根據任務的佇列在自己的pod中執行。
  • DagProcessorManager現在可以作為獨立的程式執行。
    由於它執行的是使用者程式碼,因此將其與排程器程式分開,作為獨立程式在不同的主機上執行是一個好主意。
    用 "airflow dag-processor "CLI命令執行它
  • 以本地JSON格式建立連線--不需要弄清楚URI格式
  • 還有一個新的 "SmoothOperator" -- 這是一個驚喜! 這是一個非常強大的功能。- "from airflow.operators.smooth import SmoothOperator"
  • 決了所有的已知安全問題


Airflow 最常見的是是傳統資料領域的ETL/ELT,您可以從 API、FTP 伺服器或雲端儲存桶(GCS 或 S3)中提取資料;將資料載入到 Bigquery 或 Redshift 之類的資料倉儲並在那裡轉換資料。
要按固定時間表完成所有這些工作,可以使用 Airflow 等工作流編排工具來告訴這些服務執行。
在這些失敗的情況下,Airflow 可以傳送電子郵件來通知使用者。

相關文章