栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hadoop – Schedulers and Types of Schedulers

Hadoop – Schedulers and Types of Schedulers

Hadoop – Schedulers and Types of Schedulers
学习笔记
原文链接:https://www.geeksforgeeks.org/hadoop-schedulers-and-types-of-schedulers/

在Hadoop中,我们可以从不同的客户端接收多个作业来执行。MapReduce框架用于在典型的Hadoop集群中并行执行多个任务,以快速处理大型数据集。此MapReduce框架负责调度和监视Hadoop集群中不同客户端提供的任务。但是这种调度作业的方法在Hadoop 2之前就已经使用了。

现在在Hadoop 2中,我们有了YARN(Yet Another Resource Negotiator)。在YARN中,我们有单独的守护进程,分别作为应用程序主机、节点管理器和资源管理器执行作业调度、监视和资源管理。

这里,资源管理器是主守护进程,负责跟踪或提供集群内任何应用程序所需的资源,而节点管理器是从属守护进程,它监视并跟踪应用程序使用的资源,并将反馈发送给资源管理器。

调度器和应用程序管理器是资源管理器的两个主要组件。YARN中的调度器完全用于调度作业,它无法跟踪应用程序的状态。根据所需的资源,调度器执行或我们可以说调度作业。

  1. FIFO (First In First Out) Scheduler.
  2. Capacity Scheduler.
  3. Fair Scheduler.

这些调度器实际上是一种算法,当我们收到来自不同客户端的请求时,我们使用它来调度Hadoop集群中的任务。

作业队列只是我们从各种客户机接收到的各种任务的集合。任务在队列中可用,我们需要根据需求安排此任务。

  1. FIFO Scheduler
    顾名思义,先进先出(FIFO)即先进先出(First In First Out),因此首先出现的任务或应用程序将首先得到服务。这是我们在Hadoop中使用的默认调度程序。将任务放置在队列中,并按提交顺序执行任务。在这种方法中,一旦安排了作业,就不允许进行任何干预。因此,有时高优先级进程必须等待很长时间,因为在这种方法中任务的优先级并不重要。


2. Capacity Scheduler
在Capacity Scheduler中,我们有多个作业队列用于调度任务。容量调度器允许多个用户共享一个大型Hadoop集群。在每个作业队列对应的容量调度中,我们提供一些插槽或集群资源来执行作业操作。每个作业队列都有自己的插槽来执行其任务。如果我们只在一个队列中执行任务,那么该队列的任务也可以访问其他队列的插槽,因为它们可以自由使用,并且当新任务进入其他队列时,在集群中其自己的插槽中运行的作业将替换为其自己的作业。

优点:
最适合在Hadoop集群中处理多个客户端或优先级作业
最大化Hadoop集群中的吞吐量

  1. Fair Scheduler
    公平调度程序与容量调度程序非常相似。这项工作的优先次序一直在考虑之中。在Fair Scheduler的帮助下,YARN应用程序可以共享大型Hadoop集群中的资源,并且这些资源是动态维护的,因此不需要预先的容量。资源以这样的方式分布,集群中的所有应用程序都可以获得相等的时间。公平调度器根据内存做出调度决策,我们也可以将其配置为与CPU一起工作。

正如我们告诉您的,它类似于容量调度器,但需要注意的是,在Fair Scheduler中,每当同一队列中出现任何高优先级作业时,任务都会通过替换已专用插槽中的某些部分来并行处理。

优势:
分配给每个应用程序的资源取决于其优先级。
它可以限制特定池或队列中并发运行的任务。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/633005.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号