我有多个Hadoop作业正在进行不同的处理。当其中一些(自定义业务异常)发生异常时,它会传播到map()方法,工作会立即被终止。
但是有些作业在mapper类的setup()方法中抛出异常。当发生这种情况时,作业挂起40分钟(我的Hadoop计时器必须设置为此),并且随着任务重新运行策略,我必须等待4 * 40 = 160分钟。在这种特殊情况下,业务类之一抛出了IllegalArgumentException。
我怎么能处理这个漫长的“挂在云上的工作”时期,但保持我的计时器不变?
答案 0 :(得分:2)
您可以使用hadoop job -kill <jobid>