如何解决如何使用 Azure DataBricks Api 提交作业?
我是 Azure Databricks 的初学者,我想使用 API 在 python 中创建集群和提交作业。我被卡住了,因为我无法这样做。另外,如果我有一个现有的集群,代码会是什么样子?运行此代码后,我获得了作业 ID,但看不到任何输出。
import requests
DOMAIN = ''
TOKEN = ''
response = requests.post(
'https://%s/api/2.0/jobs/create' % (DOMAIN),headers={'Authorization': 'Bearer %s' % TOKEN},json={
"name": "SparkPi spark-submit job","new_cluster": {
"spark_version": "7.3.x-scala2.12","node_type_id": "Standard_DS3_v2","num_workers": 2
},"spark_submit_task": {
"parameters": [
"--class","org.apache.spark.examples.SparkPi","dbfs:/FileStore/sparkpi_assembly_0_1.jar","10"
]
}
}
)
if response.status_code == 200:
print(response.json())
else:
print("Error launching cluster: %s: %s" % (response.json()["error_code"],response.json()["message"]))
解决方法
Databricks 的作业可以通过两种方式执行(参见 docs):
- 在新集群上 - 这就是您现在的做法
- 在现有集群上 - 删除
new_cluster
块,并使用现有集群的 ID 添加existing_cluster_id
字段。如果您还没有集群,那么您可以通过 Cluster API 创建它
创建作业时,您会取回可用于编辑或删除作业的作业 ID。您还可以使用 Run Now API 启动作业。但是,如果您只想执行作业而不在 UI 中创建作业,那么您需要查看 Run Submit API。任何一个 API 都会返回特定作业运行的 ID,然后您可以使用 Run Get API 获取作业的状态,或使用 Run Get Output API 获取执行结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。