后台运行spark-submit命令的方法

在使用spark-submit运行工程jar包时常常会出现一下两个问题: 
1.在程序中手打的log(如System.out.println(“***testRdd.count=”+testRdd.count()))常常会因被下一个Job的执行日志覆盖掉而无法查看日志; 
2.一旦命令窗口被关闭或者电脑因断电等原因异常关闭,程序便终止运行。 
其中,第一个问题可以通过将运行日志重定位到文件中来解决,命令如下:

spark-submit testSpark.jar > ~/testLog.out

运行上条命令则可将手打的log保存到~/testLog.out中,且日志中仅保存手打Log内容。

第二个问题,则可以通过后台运行Spark-submit命令nohip来解决,命令如下:

nohip spark-submit testSpark.jar &

运行上条命令则实现在后台运行spark命令,不用担心电脑异常关机以及命令行不小心关闭等问题,且输出日志保存在当前目录的nohip.out目录中。 
如果希望既可以后台运行命令又可以将日志保存到目的文件中,则可将上述两个命令结合起来,命令如下:

nohip spark-submit testSpark.jar > ~/testLog.out &

如此,便可实现后台运行的问题,nohip不仅可以用于后台执行Spark命令,也可用于后台执行其他jar包,可具体查找nohip的使用方法。

 nohip spark-submit testSpark.jar > ~/testLog.out &

猜你喜欢

转载自www.cnblogs.com/Bread-Wang/p/9951903.html
今日推荐