我通过spark启动器提交spark应用程序。我不会等到应用程序完成,但需要让位杀死应用程序。
SparkAppHandle spark = new SparkLauncher()
.setAppResource("/usr/local/myapp.jar")
.setMainClass("com.myapp.app")
.setMaster("yarn")
.setDeployMode( "cluster")
.startApplication( this);
并获取应用ID。
String id = spark.getAppId(); // how to wait untill not UNKONWN?
SparkAppHandle curApp = ???.getHandleByID( id); // how to get?
如何通过App ID获取SparkAppHnadle,因此我可以调用destory()方法。
答案 0 :(得分:1)
没有方法可以通过其他信息获取SparkAppHandle。我通过制作具有appID或唯一字符串作为键的hashmap以及SparkAppHandle作为值来解决它。这不是根本的解决方案,但到目前为止它只是解决方案。