1. 程式人生 > >Airflow 中文文件:API 參考

Airflow 中文文件:API 參考

運營商

運算子允許生成某些型別的任務,這些任務在例項化時成為DAG中的節點。 所有運算子都派生自BaseOperator ,並以這種方式繼承許多屬性和方法。 有關更多詳細資訊,請參閱BaseOperator文件。

有三種主要型別的運營商:

  • 執行操作的操作員,或告訴其他系統執行操作的操作員
  • 傳輸操作員將資料從一個系統移動到另一個系
  • 感測器是某種型別的運算子,它將一直執行直到滿足某個標準。 示例包括在HDFS或S3中登陸的特定檔案,在Hive中顯示的分割槽或當天的特定時間。 感測器派生自BaseSensorOperator並在指定的poke_interval
    執行poke方法,直到它返回True

BaseOperator

所有運算子都派生自BaseOperator並通過繼承獲得許多功能。 由於這是引擎的核心,因此值得花時間瞭解BaseOperator的引數,以瞭解可在DAG中使用的原始功能。

class airflow.models.BaseOperator(task_id, owner='Airflow', email=None, email_on_retry=True, email_on_failure=True, retries=0, retry_delay=datetime.timedelta(0, 300), retry_exponential_backoff=False, max_retry_delay=None, start_date=None, end_date=None, schedule_interval=None, depends_on_past=False, wait_for_downstream=False, dag=None, params=None, default_args=None, adhoc=False, priority_weight=1, weight_rule=u'downstream', queue='default', pool=None, sla=None, execution_timeout=None, on_failure_callback=None, on_success_callback=None, on_retry_callback=None, trigger_rule=u'all_success', resources=None, run_as_user=None, task_concurrency=None, executor_config=None, inlets=None, outlets=None, *args, **kwargs) 

基礎: airflow.utils.log.logging_mixin.LoggingMixin

所有運營商的抽象基類。 由於運算子建立的物件成為dag中的節點,因此BaseOperator包含許多用於dag爬行行為的遞迴方法。 要派生此類,您需要覆蓋建構函式以及“execute”方法。

閱讀全文/改進本文