问题
流式计算时需要中断程序,可能会造成当前正在处理的数据丢失,或者重复处理
解决
对于spark-streaming
- 在spark-default.conf中配置:
spark.streaming.stopGracefullyOnShutdown true
- 使用
kill -15 <pid>
关闭spark 应用进程 - 实际使用中发现需要特别长时间才能完全关闭,对于我,看到日志中executor进程已经关闭,再使用
kill -9 <pid>
强制关闭即可。
注
kill 后面的数字是通知进程的信号,不同的数字对应不同的行为,15只是通知程序要关闭,9是强制关闭,需要了解更详细的搜素kill命令即可。
网友评论