rest - 使用 databricks Resr API 运行 spark 作业
问题描述
我正在使用 databricks rest API 来运行 spark 作业。我正在使用愚蠢的命令:
curl -X POST -H "Authorization: XXXX" 'url/api/2.0/jobs/create' -d ' {"name":"jobname","existing_cluster_id":"0725-095337-jello70","libraries": [{"jar": "dbfs:/mnt/pathjar/name-9edeec0f.jar"}],"email_notifications":{},"timeout_seconds":0,"spark_jar_task": {"main_class_name": "com.company.DngApp"}}'
curl -X POST -H "Authorization: XXXX" 'url/api/2.0/jobs/run-now' -d '{"job_id":25854,"jar_params":["--param","value"]}'
这里的参数是一个输入参数,但我想找到一种方法来覆盖火花驱动程序属性,通常我会这样做:
--driver-java-options='-Dparam=value'
但我正在寻找数据块休息 API 端的等价物
解决方案
您不能在 Jar 参数中使用“--driver-java-options”。
原因:
注意: Jar_params 是带有 JAR 任务的作业的参数列表,例如 "jar_params": ["john doe", "35"]。
这些参数将用于调用 Spark JAR 任务中指定的主类的主函数。如果在运行时未指定,则默认为空列表。jar_params 不能与 notebook_params 一起指定。此字段的 JSON 表示(即 {"jar_params":["john doe","35"]})不能超过 10,000 字节。
有关更多详细信息,请参阅Azure Databricks - 作业 API - 立即运行。
您可以spark_conf
用来传入一串用户指定的 spark 配置键值对。
包含一组可选的、用户指定的 Spark 配置键值对的对象。您还可以分别通过 spark.driver.extraJavaOptions 和 spark.executor.extraJavaOptions 将一串额外的 JVM 选项传递给驱动程序和执行程序。
例子 Spark confs: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} or {"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"}
更多详细信息,请参阅“ NewCluster 配置”。
希望这可以帮助。
推荐阅读
- php - 如何检查 URL SSL 是否有效?有开放的 API 吗?
- google-app-engine - GAE 无法为自动缩放设置 min_instances
- amazon-web-services - 如何在 AWS Lambda 函数中获取经过 Cognito 身份验证的用户信息?
- bash - bash 使用带有文本的变量名称更新变量
- python - Python Flask 错误 - 在服务器上找不到请求的 URL。如果您手动输入了 URL,请检查您的拼写并重试
- swift - 快速绘制自定义圆
- sql - COALESCE (DATEPART) 未验证
- r - as.numeric 在这里如何使用?
- javascript - 登录对话框未正确显示 - alertifyjs
- html - 引导列大小等于特定列