几天前雅虎发布了Storm-on-YARN项目http://developer.yahoo.com/blogs/ydn/storm-yarn-released-open-source-143745133.html,该项目使Storm在YARN上运行成为可能。这是一个很大的改进,但是我有两个关于运行像Storm这样的任务的问题。像Storm这样的任务在执行时间上没有限制……我的意思是,当你运行Storm时,你期望它能工作几天或几个月——听队列或其他什么。我的意思是有一组任务在执行时间上没有限制(我想报告0%的进度)
1)什么是超时?常规M/R挂起时被杀,如何预防?我遍历了代码,但没有发现任何特殊的代码2)此外,MR1有等待执行的作业队列:当集群完成一个作业时,它从队列中拾取下一个作业。纱线呢?如果我将无休止地推送类似storm的作业A和作业B,作业B会被执行吗?
对不起,如果我的问题看起来很荒谬,也许我错过了/没有理解什么
Hadoop的JobTracker过去(现在)负责集群资源和应用程序生命周期。YARN只负责管理集群资源,而应用程序的生命周期是应用程序的责任。
这个改变意味着YARN可以用来管理任何分布式范例。MR2当然是最初的实现(map/reduce over YARN),但你可以看到其他一些实现,比如你提到的Storm-on-YARN,或者HortonWorks打算在hadoop中集成SQL等。
你可以看看一个叫做Weave的库,它提供了一个简单的API,可以在YARN上构建分布式应用