重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
为了能够对集群中的资源进行统一管理和调度,Hadoop 2.0
引入了数据操作系统YARN
。YARN
的引入,大大提高了集群的资源利用率,并降低了集群管理成本。首先,YARN允许多个应用程序运行在一个集群中,并将资源按需分配给它们,这大大提高了资源利用率,其次,YARN允许各类短作业和长服务混合部署在一个集群中,并提供了容错、资源隔离及负载均衡等方面的支持,这大大简化了作业和服务的部署和管理成本。
目前成都创新互联已为上千的企业提供了网站建设、域名、网络空间、网站托管、企业网站设计、昌图网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
[toc]
分享之前我还是要说下我自己创建的大数据交流群:784557197, 不管是学生还是大神 ,都欢迎加入一起探讨
YARN总体上采用master/slave
架构,如图1所示,其中,master
被称为ResourceManager
,slave
被称为NodeManager
,ResourceManager
负责对各个NodeManager上
的资源进行统一管理和调度。当用户提交一个应用程序时,需要提供一个用以跟踪和管理这个程序的ApplicationMaster
,它负责向ResourceManager
申请资源,并要求NodeManger
启动可以占用一定资源的Container
。由于不同的ApplicationMaster
被分布到不同的节点上,并通过一定的隔离机制进行了资源隔离,因此它们之间不会相互影响。
当在YARN集群中同时运行多种应用程序时,可能造成节点负载不一,进而导致某些节点上的任务运行速度慢于其他节点,这对于OLAP需求的应用是不能接受的。为了解决该问题,通常有两种解决方式:1)通过打标签的方式将这类应用运行到一些独享的节点上 2)在应用程序内部实现类似于MapReduce和Spark的推测执行机制,为慢任务额外启动一个或多个同样的任务,以空间换时间的方式,避免慢任务拖慢整个应用程序的运行效率。
对于 YARN,会朝着通用资源管理和调度方向发展,而不仅仅限于大数据处理领域,包括对 MapReduce、Spark 短作业的支持,以及对 Web Service 等长服务的支持。