3个回答
展开全部
1、如果仅靠开源版的hadoop的安装布署的话,是无法不结束hadoop就中止的。
2、必须要进行hadoop之上的二次开发才行,有相应的API可以达到相应的需求。只是需要深入了解hadoop的源码和api才可以了。
3、你可以看下hadoop的源码,如果java se过关的话,其实很容易能看懂,至于中止进程还是有很多入口可以达到的。
思考下吧。
2、必须要进行hadoop之上的二次开发才行,有相应的API可以达到相应的需求。只是需要深入了解hadoop的源码和api才可以了。
3、你可以看下hadoop的源码,如果java se过关的话,其实很容易能看懂,至于中止进程还是有很多入口可以达到的。
思考下吧。
追问
回答的很好,谢谢。我也发现hadoop好像没有命令或者办法单纯的结束一个正在执行的job。但相信办法总是有的。你所说的“要进行hadoop之上的二次开发才行,有相应的API可以达到相应的需求。”,不知道相应的api从哪里可以搞得到,请指明一下,谢谢。我是做java开发的,java se还可以。目前正在看hadoop的源码,请高人指明看的重心放到哪里,再次谢过
追答
1、hadoop比较强大,api包也比较多,有面向hdfs也有面向m/r的。
2、在hadoop的发布包中,有个叫doc的文件夹中都是对接口api的说明。
其实你布署完成后能在50030或是50070等端口中看到相应的hadoop的动态信息,都是这样得到的。
3、下一步,就是边读源码,边读api,也可以按api为导向去读其源码,需要些时间。
再继续努力吧。
来自:求助得到的回答
展开全部
把Job的进程号查出来 ps -ef | grep 进程名 kill -9 掉进程
追问
感谢热心的回答,但我试过,这个貌似不能用的
追答
哦,我只是试过停所有服务时,Hbase停的服务停不下了,直接查进程号,kill掉了。
Job因为执行时间都不算时间太长,没停过。
用Mapreduce的话可以再Java代码中进行二次开发吧。插入标记,输出比如执行时间,看程序执行到哪了,进行Job的监控吧。
另附上API吧,分享一下,这可对研究源码有很大帮助。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
hadoop job -kill <job-id>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询