You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Airflow触发已有AWS Glue Job失败,请求排查

Airflow触发AWS Glue Job失败问题分析与解决

问题原因

报错信息明确指出JobUpdate.Command.ScriptLocation的值为None,不符合AWS Glue API的参数要求。原因是你使用的GlueJobOperator默认行为是:当检测到指定的Glue Job已存在时,会尝试更新该Job的配置,但你没有提供脚本位置参数,导致更新操作失败。而你的实际需求是触发已存在的Glue Job,而非创建或更新它。

解决方法

方案1:禁用自动更新Job(推荐)

在GlueJobOperator中添加update_job=False参数,让Operator跳过更新步骤,直接触发已存在的Job运行:

GlueJobOperator(
    job_name=glue_job_name,
    region_name=region_name,
    iam_role_name=glue_iam_role,
    task_id='glue_job_step',
    dag=dag,
    s3_bucket=bucket_name,
    update_job=False  # 禁用Job更新逻辑
)

添加该参数后,Operator会直接调用AWS Glue的StartJobRun接口,无需修改原有Job的配置,完全匹配你的需求。

方案2:指定脚本位置(若需更新Job)

如果你确实需要更新Glue Job的配置,需补充script_location参数,指定Glue脚本在S3的完整路径:

GlueJobOperator(
    job_name=glue_job_name,
    region_name=region_name,
    iam_role_name=glue_iam_role,
    task_id='glue_job_step',
    dag=dag,
    s3_bucket=bucket_name,
    script_location=f's3://{bucket_name}/path/to/your/glue/script.py'  # 填写实际脚本路径
)

内容的提问来源于stack exchange,提问作者Yiannis Constantinou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 13:32:30