如何使用azure databricks api提交作业?

ztyzrc3y  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(509)

我是azure databricks的初学者,我想使用API在python中创建集群和提交作业。我被卡住了,因为我做不到。另外,如果我有一个现有的集群,代码会是什么样子?运行此代码后,我获得了作业id,但无法看到任何输出。

  1. import requests
  2. DOMAIN = ''
  3. TOKEN = ''
  4. response = requests.post(
  5. 'https://%s/api/2.0/jobs/create' % (DOMAIN),
  6. headers={'Authorization': 'Bearer %s' % TOKEN},
  7. json={
  8. "name": "SparkPi spark-submit job",
  9. "new_cluster": {
  10. "spark_version": "7.3.x-scala2.12",
  11. "node_type_id": "Standard_DS3_v2",
  12. "num_workers": 2
  13. },
  14. "spark_submit_task": {
  15. "parameters": [
  16. "--class",
  17. "org.apache.spark.examples.SparkPi",
  18. "dbfs:/FileStore/sparkpi_assembly_0_1.jar",
  19. "10"
  20. ]
  21. }
  22. }
  23. )
  24. if response.status_code == 200:
  25. print(response.json())
  26. else:
  27. print("Error launching cluster: %s: %s" % (response.json()["error_code"], response.json()["message"]))
esbemjvw

esbemjvw1#

databricks上的作业可以通过两种方式执行(参见文档):
在一个新的集群上—这就是您现在所做的
在现有群集上-删除 new_cluster 块,并添加 existing_cluster_id 具有现有群集id的字段。如果您还没有集群,那么可以通过集群api创建它
创建作业时,将返回可用于编辑或删除作业的作业id。您还可以使用RunNow api启动作业。但是如果您只想执行作业而不在ui中创建作业,那么您需要查看RunSubmitAPI。任何一个api都将返回特定作业运行的id,然后您可以使用run get api获取作业的状态,或者运行get output api获取执行结果。

相关问题