我有一个用Java编写的火花流媒体应用程序。
如果驱动程序在预定义的时间间隔内没有完成流批处理,我想重新启动它。
当在未实现计时器的情况下从驱动程序代码中抛出异常时,yarn会按预期重新启动应用程序。 当试图添加计时器(需要在与驱动程序不同的线程中)并在分配的时间过后抛出异常时,纱线不会重新启动驱动程序。 我的猜测是需要从驱动程序线程中抛出异常。
有没有办法实现这个目标?
答案 0 :(得分:-1)
- 监督用于确保驱动程序在失败且退出代码为非零时自动重启。
https://spark.apache.org/docs/latest/submitting-applications.html