airflow.providers.amazon.aws.sensors.emr¶
類¶
包含 EMR 通用感測器行為。 |
|
輪詢作業執行的狀態,直到其達到終止狀態;如果作業執行失敗則標記為失敗。 |
|
輪詢應用程式的狀態,直到其達到終止狀態;如果應用程式失敗則標記為失敗。 |
|
輪詢作業執行的狀態,直到其達到終止狀態;如果作業執行失敗則標記為失敗。 |
|
輪詢 EMR Notebook,直到其達到任何目標狀態;失敗時引發 AirflowException。 |
|
輪詢 EMR JobFlow 叢集,直到其達到任何目標狀態;失敗時引發 AirflowException。 |
|
輪詢步驟的狀態,直到其達到任何目標狀態;失敗時引發 AirflowException。 |
模組內容¶
- class airflow.providers.amazon.aws.sensors.emr.EmrBaseSensor(*, aws_conn_id='aws_default', **kwargs)[source]¶
基類:
airflow.sensors.base.BaseSensorOperator包含 EMR 通用感測器行為。
- 子類應實現以下方法
get_emr_response()state_from_response()failure_message_from_response()
子類應設定
target_states和failed_states欄位。- 引數::
aws_conn_id (str | None) – 用於 AWS 憑據的 Airflow 連線。如果此引數為 None 或為空,則使用預設的 boto3 行為。如果在分散式模式下執行 Airflow 且 aws_conn_id 為 None 或為空,則將使用預設的 boto3 配置(並且必須在每個工作節點上進行維護)。
- target_states: collections.abc.Iterable[str] = [][source]¶
- failed_states: collections.abc.Iterable[str] = [][source]¶
- property hook: airflow.providers.amazon.aws.hooks.emr.EmrHook[source]¶
- class airflow.providers.amazon.aws.sensors.emr.EmrServerlessJobSensor(*, application_id, job_run_id, target_states=frozenset(EmrServerlessHook.JOB_SUCCESS_STATES), aws_conn_id='aws_default', **kwargs)[source]¶
基類:
airflow.sensors.base.BaseSensorOperator輪詢作業執行的狀態,直到其達到終止狀態;如果作業執行失敗則標記為失敗。
另請參閱
有關如何使用此感測器的更多資訊,請檢視指南: 等待 EMR Serverless 作業狀態
- 引數::
- template_fields: collections.abc.Sequence[str] = ('application_id', 'job_run_id')[source]¶
- property hook: airflow.providers.amazon.aws.hooks.emr.EmrServerlessHook[source]¶
建立並返回一個 EmrServerlessHook。
- class airflow.providers.amazon.aws.sensors.emr.EmrServerlessApplicationSensor(*, application_id, target_states=frozenset(EmrServerlessHook.APPLICATION_SUCCESS_STATES), aws_conn_id='aws_default', **kwargs)[source]¶
基類:
airflow.sensors.base.BaseSensorOperator輪詢應用程式的狀態,直到其達到終止狀態;如果應用程式失敗則標記為失敗。
另請參閱
有關如何使用此感測器的更多資訊,請檢視指南: 等待 EMR Serverless 應用程式狀態
- 引數::
- template_fields: collections.abc.Sequence[str] = ('application_id',)[source]¶
- property hook: airflow.providers.amazon.aws.hooks.emr.EmrServerlessHook[source]¶
建立並返回一個 EmrServerlessHook。
- class airflow.providers.amazon.aws.sensors.emr.EmrContainerSensor(*, virtual_cluster_id, job_id, max_retries=None, aws_conn_id='aws_default', poll_interval=10, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), **kwargs)[source]¶
基類:
airflow.sensors.base.BaseSensorOperator輪詢作業執行的狀態,直到其達到終止狀態;如果作業執行失敗則標記為失敗。
另請參閱
有關如何使用此感測器的更多資訊,請檢視指南: 等待 Amazon EMR 虛擬叢集作業
- 引數::
job_id (str) – 要檢查狀態的 job_id
max_retries (int | None) – 輪詢查詢狀態直到返回當前狀態的次數,預設為 None
aws_conn_id (str | None) – 要使用的 aws 連線,預設為 ‘aws_default’。如果此引數為 None 或為空,則使用預設的 boto3 行為。如果在分散式模式下執行 Airflow 且 aws_conn_id 為 None 或為空,則將使用預設的 boto3 配置(並且必須在每個工作節點上進行維護)。
poll_interval (int) – 兩次連續呼叫之間等待檢查 athena 查詢狀態的秒數,預設為 10
deferrable (bool) – 在可延遲模式下執行感測器。
- template_fields: collections.abc.Sequence[str] = ('virtual_cluster_id', 'job_id')[source]¶
- template_ext: collections.abc.Sequence[str] = ()[source]¶
- class airflow.providers.amazon.aws.sensors.emr.EmrNotebookExecutionSensor(notebook_execution_id, target_states=None, failed_states=None, **kwargs)[source]¶
基礎類:
EmrBaseSensor輪詢 EMR Notebook,直到其達到任何目標狀態;失敗時引發 AirflowException。
另請參閱
有關如何使用此 Sensor 的更多資訊,請參閱指南: 等待 EMR Notebook 執行狀態
- 引數::
notebook_execution_id (str) – 要檢查(poked)的 Notebook 執行的唯一 ID。
- 目標狀態:
Sensor 將等待執行達到的狀態。預設目標狀態為
FINISHED。- 失敗狀態:
如果執行達到任何失敗狀態,則 Sensor 將失敗。預設失敗狀態為
FAILED。
- template_fields: collections.abc.Sequence[str] = ('notebook_execution_id',)[source]¶
- class airflow.providers.amazon.aws.sensors.emr.EmrJobFlowSensor(*, job_flow_id, target_states=None, failed_states=None, max_attempts=60, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), **kwargs)[source]¶
基礎類:
EmrBaseSensor輪詢 EMR JobFlow 叢集,直到其達到任何目標狀態;失敗時引發 AirflowException。
在預設目標狀態下,Sensor 會等待叢集終止。當 target_states 設定為 ['RUNNING', 'WAITING'] 時,Sensor 會等待作業流準備就緒(在 'STARTING' 和 'BOOTSTRAPPING' 狀態之後)。
另請參閱
有關如何使用此 Sensor 的更多資訊,請參閱指南: 等待 Amazon EMR 作業流狀態
- 引數::
job_flow_id (str) – 要檢查其狀態的作業流 ID
target_states (collections.abc.Iterable[str] | None) – 目標狀態,Sensor 會等待作業流達到這些狀態中的任何一個。在可推遲模式下,它將執行直到達到終端狀態。
failed_states (collections.abc.Iterable[str] | None) – 失敗狀態,當作業流達到這些狀態中的任何一個時,Sensor 將失敗。
max_attempts (int) – 失敗前的最大嘗試次數
deferrable (bool) – 在可延遲模式下執行感測器。
- template_fields: collections.abc.Sequence[str] = ('job_flow_id', 'target_states', 'failed_states')[source]¶
- template_ext: collections.abc.Sequence[str] = ()[source]¶
- class airflow.providers.amazon.aws.sensors.emr.EmrStepSensor(*, job_flow_id, step_id, target_states=None, failed_states=None, max_attempts=60, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), **kwargs)[source]¶
基礎類:
EmrBaseSensor輪詢步驟的狀態,直到其達到任何目標狀態;失敗時引發 AirflowException。
在預設目標狀態下,Sensor 會等待步驟完成。
另請參閱
有關如何使用此 Sensor 的更多資訊,請參閱指南: 等待 Amazon EMR 步驟狀態
- 引數::
job_flow_id (str) – 包含要檢查狀態的步驟的作業流 ID
step_id (str) – 要檢查其狀態的步驟 ID
target_states (collections.abc.Iterable[str] | None) – 目標狀態,Sensor 會等待步驟達到這些狀態中的任何一個。在可推遲 Sensor 的情況下,它將等待直到達到終端狀態。
failed_states (collections.abc.Iterable[str] | None) – 失敗狀態,當步驟達到這些狀態中的任何一個時,Sensor 將失敗。
max_attempts (int) – 失敗前的最大嘗試次數
deferrable (bool) – 在可延遲模式下執行感測器。
- template_fields: collections.abc.Sequence[str] = ('job_flow_id', 'step_id', 'target_states', 'failed_states')[source]¶
- template_ext: collections.abc.Sequence[str] = ()[source]¶