博客
关于我
MapReduce的编程思想(1)
阅读量:795 次
发布时间:2023-02-07

本文共 693 字,大约阅读时间需要 2 分钟。

1. MapReduce采用分而治之的思想,将数据处理拆分为主要的Map(映射)与Reduce(化简)两步,MapReduce操作数据的最小单位是一个键值对。

2. MapReduce计算框架为主从架构,分别是JobTracker与TaskTracker。

  • JobTracker在集群中为主的角色,它主要负责任务调度和集群资源监控,并不参与具体的计算。
  • TaskTracker在集群中为从的角色,它主要负责汇报心跳和执行JobTracker的命令(启动任务、提交任务、杀死人物、杀死作业和重新初始化)。
  • 客户端,用户编写MapReduce程序通过客户端提交到JobTracker。

3. MapReduce作业(job)是指用户提交的最小单位,而Maop/Reduce任务(task)是MapReduce计算的最小单位。

  • MapReduce作业由JobTracker的作业分解模块分拆为任务交给各个TaskTracker执行,在MapReduce计算框架中,任务分为两种,Map任务和Reduce任务。

4. MapReduce的计算资源划分

  • Hadoop的资源管理采用了静态资源设置方案,即每个节点配置好Map槽和Reduce槽的数据量,一旦Hadoop启动后将无法动态更改。
  • TaskTracker能启动的任务数量是由TaskTracker配置的任务槽(slot)决定。
  • Map任务只能使用Map槽,Reduce任务只能使用Reduce槽。

5. MapReduce的局限性

  • MapReduce的执行速度慢。
  • MapReduce过于底层。
  • 不是所有算法都能用MapReduce实现。

转载地址:http://zgufk.baihongyu.com/

你可能感兴趣的文章
MacType Decency 项目常见问题解决方案
查看>>
Mac下IDEA更换Maven仓库
查看>>
Mac下MySQL 报错:Error1045(28000)解决办法
查看>>
Mac下redis安装和启动
查看>>
Mac下各种网络命令的使用
查看>>
Mac下如何配置环境变量
查看>>
Mac下安装jdk
查看>>
Mac下安装PEAR
查看>>
mac下安装配置nginx
查看>>
Mac下忘记MySQL密码可以这样做!
查看>>
Mac下配置多个SSH-Key (gitLab)
查看>>
mac地址随机变化的解决方法(安卓手机通用)不用ROOT
查看>>
Mac备忘录内容突然全部消失恢复
查看>>
Mac安装FastDFS
查看>>
Mac安装Maven
查看>>
Mac实现远程服务器登录管理
查看>>
mac常用命令
查看>>
Mac打包dmg文件(更换背景图)
查看>>
mac更新后 homestead 无法使用
查看>>
mac环境安装docker
查看>>