我有一个流式作业,它每分钟运行一次,在处理完数据后,将其放到hdfs上,并将结果的简化形式放入数据库中。
在某些情况下(很少见),我注意到我的datanode变坏了,或者数据库由于某种原因停止响应。在这种情况下,工作人员抛出许多错误,但作业仍在运行。我想设置一个系统,一旦出现IO或网络错误,我的作业就应该停止。(然后可能会触发一个邮件,这样我就可以查看哪里出了问题并重新启动它。)
可以从worker内部停止spark作业吗?(sys.exit显然不起作用)
发布于 2015-12-10 22:00:16
这方面似乎没有反馈渠道。我认为你最好的办法是使用基于消息的方法(例如使用消息框架),并在应用程序中监听它,它会启动你的Spark应用程序并相应地停止Spark作业。
https://stackoverflow.com/questions/34195453
复制相似问题