【发布时间】:2017-05-25 16:13:27
【问题描述】:
我正在尝试使用集群中隐藏的 REST Api 触发 Spark 作业。我能够触发火花作业,但除非我明确杀死它,否则它会一次又一次地执行。
我的请求如下所示
curl -X POST http://sparkmaster:6066/v1/submissions/create --header "Content-Type:application/json;charset=UTF-8" --data '{
"action" : "CreateSubmissionRequest",
"appArgs" : ["10"],
"appResource" : "file:/path/to/myapp.jar",
"clientSparkVersion" : "1.6.1",
"environmentVariables" : {
"SPARK_ENV_LOADED" : "1"
},
"mainClass" : "com.brevitaz.app.Main",
"sparkProperties" : {
"spark.jars" : "file:/path/to/myapp.jar",
"spark.driver.supervise" : "true",
"spark.app.name" : "MySparkJob",
"spark.eventLog.enabled": "true",
"spark.submit.deployMode" : "client",
"spark.master" : "spark://sparkmaster:6066"
}
}'
回应
{
"action" : "CreateSubmissionResponse",
"message" : "Driver successfully submitted as driver-20170524105859-0022",
"serverSparkVersion" : "1.6.1",
"submissionId" : "driver-20170524105859-0022",
"success" : true
}
我希望提交作业并执行一次。有没有办法在火花中实现同样的效果?
我也愿意通过其他方式触发 spark 作业。我只需要从基于 scala 的 Web 应用程序触发一次 spark 作业的执行。
【问题讨论】:
标签: apache-spark