当前位置:首页>开发>正文

hadoop中资源的单位是

2023-07-18 11:34:31 互联网 未知 开发

hadoop中资源的单位是?

hadoop中资源的单位是

slot就是槽的意思,是一个资源单位,只有给task分配了一个slot之后,这个task才可以运行。slot分两种,map slot沪蓉reduce slot。另外,slot是一个逻辑概念,一个数据节点的slots数量既不是CPU的核数,也不是memory chip,一个节点的slot数量用来表示此节点的资源容量或是计算计算能力的大小,也就是说slot是hadoop的资源单位。


2)


系统中map slots总数与reduce slots总数的计算方式如下:


map slots 总数=集群节点数*mapred.tasktracker.map.tasks.maximum(默认是2)


reduce slots 总数=集群节点数*mapred.tasktracker.reduce.tasks.maximum(默认是2)


当初以为slots就是节点上cpu的核数,一直搞不懂三个数据节点,总共5个cpu核,为什么会有6个map slots 、6个reduce slots:


默认一个节点上有2个map slots,2个reduce slots。而一个slot对应一个task,所以,map task capacity、reduce task capacity的值是6。Avg.Tasks/Node就是一个节点的平均任务数量,2个map 2个reduce就是4个。


运行的job包含42个map,由于集群总的map slots是6,所以会有22等待的map任务。

Hadoop资源管理由两部分组成:资源表示模型和资源分配模型。其中,资源表示模型用于描述资源的组织方式,Hadoop采用“槽位”(slot)组织各节点上的资源;而资源分配模型则决定如何将资源分配给各个作业/任务,在Hadoop中,这一部分由一个插拔式的调度器完成。

Hadoop引入了“slot”概念表示各个节点上的计算资源。为了简化资源管理,hadoop将各个节点上的资源(CPU、内存和磁盘等)等量切分成若干份,每一份用一个slot表示,同时规定一个Task可根据实际需要占用多个slot。通过引入“slot”这一概念,Hadoop将多维度资源抽象简化成一种资源(slot),从而大大简化了资源管理问题。

最新文章