python - 使用 boto3 创建粘合作业时指定作业类型
问题描述
我正在尝试创建一个胶水等工作。我正在使用boto3。我正在使用下面的脚本。我想将它创建为 type=Spark,但下面的脚本创建了一个 type=Python Shell。它也不会禁用书签。有谁知道我需要添加什么才能使其成为 Spark 类型并禁用书签?
脚本:
response = glue_assumed_client.create_job(
Name='mlxxxx',
Role='Awsxxxx',
Command={
'Name': 'mlxxxx',
'ScriptLocation': 's3://aws-glue-scripts-xxxxx-us-west-2/xxxx',
'PythonVersion': '3'
},
Connections={
'Connections': [
'sxxxx',
'spxxxxxx',
]
},
Timeout=2880,
MaxCapacity=10
)
解决方案
要创建 Spark 作业,您必须将命令名称提及为“glueetl”,如下所述,如果您没有运行 python shell 作业,则无需在命令参数中指定 python 版本
response = client.create_job(
Name='mlxxxyu',
Role='Awsxxxx',
Command={
'Name': 'glueetl', # <—— mention the name as glueetl to create spark job
'ScriptLocation': 's3://aws-glue-scripts-xxxxx-us-west-2/xxxx'
},
Connections={
'Connections': [
'sxxxx',
'spxxxxxx',
]
},
Timeout=2880,
MaxCapacity=10
)
关于作业书签,作业书签在默认情况下是禁用的,因此如果您没有为作业书签指定参数,那么创建的作业将禁用书签。
如果要显式禁用书签,则可以在 Default Arguments[1] 中指定相同的内容,如下所示。
response = client.create_job(
Name='mlxxxyu',
Role='Awsxxxx',
Command={
'Name': 'glueetl',
'ScriptLocation': ‘s3://aws-glue-scripts-xxxxx-us-west-2/xxxx'
},
DefaultArguments={
'--job-bookmark-option': 'job-bookmark-disable'
},
Timeout=2880,
MaxCapacity=10
)
推荐阅读
- objective-c - 如果使用 NSMutableArray 而不是 NSArray,应用程序崩溃
- android - 您需要使用不同的包名称,因为“com.caspianz.hayatkhan.flashlight”已被您的其他应用程序之一使用
- sql - SQL->Informix DB 链接服务器
- keras - Keras 回调:Learnig Rate Schedular 并降低高原学习率
- c# - Microsoft Graph,向电子邮件添加多个附件
- wordpress - 以编程方式获取需要更新的插件列表
- vue.js - 嵌套对象突变中的Vuex重复值
- python - 发牌时,它们不会显示为不同的牌。为什么?
- c++ - 为什么我可以通过引用 .get() 来修改 unique_ptr?
- wpf - 更改富文本框项目符号缩进