Hadoop的Slots概念
来源:互联网 发布:思迅天店软件 编辑:程序博客网 时间:2024/06/05 20:48
近期看论文,看到文章中提到slots概念,查找了网上的资料,整理如下。
Slots是Hadoop的一个重要概念。然而在Hadoop相关论文,slots的阐述难以理解。网上关于slots的概念介绍也很少,而对于一个有经验的Hadoop开发者来说,他们可能脑子里已经理解了slots的真正含义,但却难以清楚地表达出来,Hadoop初学者听了还是云里雾里。我来尝试讲解一下,以期抛砖引玉。
首先,slot不是CPU的Core,也不是memory chip,它是一个逻辑概念,一个节点的slot的数量用来表示某个节点的资源的容量或者说是能力的大小,因而slot是 Hadoop的资源单位。
Hadoop利用slots来管理分配节点的资源。每个Job申请资源以slots为单位,每个节点会确定自己的计算能力以及memory确定自己包含的slots总量。当某个Job要开始执行时,先向JobTracker申请slots,JobTracker分配空闲的slots,Job再占用slots,Job结束后,归还slots。每个TaskTracker定期(例如淘宝Hadoop心跳周期是5s)通过心跳(hearbeat)与Jobtracker通信,一方面汇报自己当前工作状态,JobTracker得够某个TaskTracker是否Alive;同时汇报自身空闲slots数量。JobTracker利用某个调度规则,如Hadoop默认调度器FIFO或者Capacity Scheduler、FairScheduler等。(注:淘宝Hadoop使用云梯调度器YuntiScheuler,它是基于Fair Scheduler进行修改的)。
Hadoop里有 两种slots, map slots和reduce slots,map task使用map slots,一一对应,reduce task使用reduce slots。注: 现在越来越多的观点认为应该打破map slots与 reduce slots的界限,应该被视为统一的资源池,they are all resource,从而提高资源的利用率。区分map slots和reduce slots,容易导致某一种资源紧张,而另一个资源却有空闲。在Hadoop的下一代框架MapR中,已经取消了map slots与reduce slots的概念,并将Jobtracker的功能一分为二,用ResourceManager来管理节点资源,用ApplicationMaster来监控与调度作业。ApplicationMaster是每个Application都有一个单独的实例,application是用户提交的一组任务,它可以是一个或多个job的任务组成。
Hadoop中通常每个tasktracker会包含多个slots,Job的一个task均对应于tasktracker中的一个slot。系统中map slots总数与reducer slots总数的计算公式如下:
Map slots总数=集群节点数×mapred.tasktracker.map.tasks.maximum
Reducer slots总数=集群节点数×mapred.tasktracker.reduce.tasks.maximum
原文:http://tianxingzhe.blog.51cto.com/3390077/1697269
- Hadoop的Slots概念
- Hadoop的Slots概念
- hadoop中什么是slots
- hadoop块的概念
- Hadoop的概念、版本、发展史
- Hadoop概念
- hadoop概念
- qt 的 signals宏和slots宏
- private public protected slots的区别
- vue slots 组件的组合/分发
- vue Render中slots的使用
- Hadoop相关的概念的粗浅认识
- hadoop及hdfs一些初步的概念
- Hadoop原理---HDFS中块的概念
- Qt public slots;protected slots;private slots
- QT的核心-----signals & slots
- QT的核心-----signals & slots .
- QT的核心-----signals & slots
- 【微信小程序开发•系列文章七】websocket
- unbuntu mysql安装后文件位置
- arm汇编:mrs与msr
- 极验验证码的破解2-图片还原和滑块位置求解
- 好用的php代码片段收集
- Hadoop的Slots概念
- 疑问二
- handler机制
- yarn状态机库
- Java 并发 教程 - 序
- Android 第一次运行程序提示框操作
- hhh,图床
- Android Studio 打包出现not in translated in "zh"错误
- Redis 常用命令学习笔记