如何使用Boto3从AWS Glue中删除Glue Job?
问题陈述 − 使用Python中的boto3库删除在您的帐户中创建的Glue Job。
示例 − 删除在您的帐户中创建的Glue Job“transfer_from_s3”。
更多Python相关文章,请阅读:Python 教程
解决此问题的方法/算法
第一步 − 导入boto3和botocore异常库来处理异常。
第二步 − 传递要从AWS Glue目录中删除的作业名称参数。
第三步 − 使用boto3库创建AWS会话。 确保在默认配置文件中提供region_name。 如果未提供,请在创建会话时明确传递region_name。
第四步 − 为glue创建AWS客户端。
第五步 − 现在使用delete_job函数并将作业名称作为JobName参数传递给它。
第六步 − 它将删除作业并返回响应元数据。
第七步 − 如果检查作业时出现问题,请处理通用异常。
注意 − 完成此操作后,它将删除指定的作业定义。 如果在AWS Glue中未找到作业,则不会抛出任何异常,并且输出与删除任何作业相似。
示例
使用以下代码从AWS Glue删除Glue Job:
import boto3
from botocore.exceptions import ClientError
def delete_a_glue_job(job_name):
session = boto3.session.Session()
glue_client = session.client('glue')
try:
response = glue_client.delelte_job(JobName=job_name)
return response
except ClientError as e:
raise Exception( "在delete_a_glue_job中发生boto3客户端错误: " + e.__str__())
except Exception as e:
raise Exception( "delete_a_glue_job中出现意外错误: " + e.__str__())
print(delete_a_glue_job("transfer_from_s3"))
输出
{'JobName': 'transfer_from_s3','ResponseMetadata':{'RequestId':'126adb54-f0a0-4558-b345-d6a4e62674f3','HTTPStatusCode':200,
'HTTPHeaders':{'date':'Sat,27 Feb 2021 15:53:27 GMT','content-type':
'application/x-amz-json-1.1','content-length':'22','connection:
'keep-alive','x-amzn-requestid':'126adb54-……….-d6a4e62674f3'},
'RetryAttempts':0}}
极客教程