airflow.providers.amazon.aws.hooks.glue¶
屬性¶
類¶
與 AWS Glue 互動。 |
|
與 AWS Glue Data Quality 互動。 |
模組內容¶
- class airflow.providers.amazon.aws.hooks.glue.GlueJobHook(s3_bucket=None, job_name=None, desc=None, concurrent_run_limit=1, script_location=None, retry_limit=0, num_of_dpus=None, iam_role_name=None, iam_role_arn=None, create_job_kwargs=None, update_config=False, job_poll_interval=6, *args, **kwargs)[source]¶
基類:
airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook與 AWS Glue 互動。
提供圍繞
boto3.client("glue")的厚封裝。- 引數:
s3_bucket (str | None) – 用於上傳日誌和本地 ETL 指令碼的 S3 儲存桶
job_name (str | None) – 每個 AWS 賬戶唯一的作業名稱
desc (str | None) – 作業描述
concurrent_run_limit (int) – 作業允許的最大併發執行數
script_location (str | None) – S3 上 ETL 指令碼的路徑
retry_limit (int) – 作業失敗時最大重試次數
region_name – AWS 區域名稱(示例:us-east-1)
iam_role_name (str | None) – 用於 Glue 作業執行的 AWS IAM 角色。如果設定,iam_role_arn 必須為 None。
iam_role_arn (str | None) – 用於 Glue 作業執行的 AWS IAM Role ARN,如果設定,iam_role_name 必須為 None。
create_job_kwargs (dict | None) – 建立 Glue 作業的額外引數
update_config (bool) – 更新 Glue 上的作業配置(預設值:False)
可以指定其他引數(例如
aws_conn_id)並傳遞給底層的 AwsBaseHook。- list_jobs()[source]¶
獲取作業列表。
自版本 - 起已棄用:請改用
describe_jobs()。
- async async_get_job_state(job_name, run_id)[source]¶
獲取 Glue 作業的狀態;作業狀態可以是執行中、已完成、失敗、已停止或超時。
get_job_state 的非同步版本。
- print_job_logs(job_name, run_id, continuation_tokens)[source]¶
將最新的作業日誌列印到 Airflow 任務日誌中,並更新續傳令牌。
- 引數:
continuation_tokens (LogContinuationTokens) – 讀取日誌時恢復的令牌。該物件會透過此方法使用新的令牌進行更新。
- job_completion(job_name, run_id, verbose=False, sleep_before_return=0)[source]¶
等待作業名稱為
job_name的 Glue 作業完成;如果已完成則返回最終狀態,否則引發 AirflowException。
- async async_job_completion(job_name, run_id, verbose=False)[source]¶
等待作業名稱為
job_name的 Glue 作業完成;如果已完成則返回最終狀態,否則引發 AirflowException。
- has_job(job_name)[source]¶
檢查作業是否已存在。
- 引數:
job_name – 每個 AWS 賬戶唯一的作業名稱
- 返回:
如果作業已存在則返回 True,否則返回 False。
- 返回型別:
- class airflow.providers.amazon.aws.hooks.glue.GlueDataQualityHook(*args, **kwargs)[source]¶
基類:
airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook與 AWS Glue Data Quality 互動。
提供圍繞
boto3.client("glue")的厚封裝。可以指定其他引數(例如
aws_conn_id)並傳遞給底層的 AwsBaseHook。