MapReduce运行流程

2023-10-31

在这里插入图片描述
MapRecude运行流程
1.客户端提交代码 job.watiforcompletion()开始运行
2.请求到ResourceManager(经理)请求运行,ResourceManager返回jobId,和让客户端提交资源的路径
3.客户端读取Hdfs文件,进行切片,序列化得到FileSplit分片信息对象,然后把FileSplit(maptask读取文件),jar包(程序运行需要),xml(job对象序列化,包含设置的一些参数)提交到Hdfs上
4.客户端再次提交请求,让ResourceManager创建运行任务的容器(1.5G+1Core),ResourceManager将创建容器的任务放在任务队列中,排到任务时,在NodeManager上创建容器(2G+1core),并下载hdfs上的资源到工作目录等待,
5.客户端在监听容器创建完成后,发送shell…命令到对应NodeManager节点,容器内启动Appmaster(小组长)
6.Appmaster根据切片信息和xml中的参数分配maptask和reducetask个数,向ResourceManager请求容器,ResourceManager再次京任务放到队列中,等待有资源的NodeManage领取任务创建好容器,然后下载hdfs资源到工作目录,然后Appmaster控制NodeManage运行maptask和reducetask任务的完成
7.任务结束 容器和进程释放

在这里插入图片描述
在这里插入图片描述

上图中mapreduce中的shuffle过程类比于spark groupby的算子产生的shuffle操作,都是key的hashcode值%(下游reducetask的个数/spark的task个数)
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MapReduce运行流程 的相关文章

  • 更改 Hadoop 中的数据节点数量

    如何改变数据节点的数量 即禁用和启用某些数据节点来测试可扩展性 说得更清楚一点 我有4个数据节点 我想一一实验1 2 3 4个数据节点的性能 是否可以只更新名称节点中的从属文件 临时停用节点的正确方法 创建一个 排除文件 这列出了您想要删除
  • Apache Spark 何时发生混洗?

    我正在优化 Spark 中的参数 并且想确切地了解 Spark 是如何对数据进行洗牌的 准确地说 我有一个简单的字数统计程序 并且想知道spark shuffle file buffer kb如何影响运行时间 现在 当我将此参数设置得非常高
  • 覆盖hadoop中的log4j.properties

    如何覆盖hadoop中的默认log4j properties 如果我设置 hadoop root logger WARN console 它不会在控制台上打印日志 而我想要的是它不应该在日志文件中打印 INFO 我在 jar 中添加了一个
  • 为什么我们需要将外部表移动到托管 Hive 表?

    我是 Hadoop 新手 正在学习 Hive 在 Hadoop 权威指南第 3 版中 第 12 页 第428章 最后一段 我不明白下面关于 HIVE 中外部表的段落 一种常见的模式是使用外部表访问存储在 HDFS 中的初始数据集 由另一个进
  • 如何强制 Spark 执行代码?

    我如何强制 Spark 执行对 map 的调用 即使它认为由于其惰性求值而不需要执行它 我试过把cache 与地图调用 但这仍然没有解决问题 我的地图方法实际上将结果上传到 HDFS 所以 它并非无用 但 Spark 认为它是无用的 简短回
  • MongoDB/PyMongo:如何在 Map 函数中使用点表示法?

    我正在尝试计算每个邮政编码中找到的记录数 在我的 MongoDB 中 嵌入了邮政编码 使用点表示法 它位于 a res z a 代表地址 res 代表住宅 z 代表邮政编码 例如 这工作得很好 db NY count a res z 141
  • 错误 hive.HiveConfig:无法加载 org.apache.hadoop.hive.conf.HiveConf。确保 HIVE_CONF _DIR 设置正确

    我正在尝试将数据从 sqoop 导入到 hive MySQL use sample create table forhive id int auto increment firstname varchar 36 lastname varch
  • sqoop 通过 oozie 导出失败

    我正在尝试将数据导出到mysql from hdfs通过sqoop 我可以通过 shell 运行 sqoop 并且它工作正常 但是当我通过调用oozie 它出现以下错误并失败 我还包括了罐子 没有描述性日志 sqoop脚本 export c
  • Spark/Yarn:HDFS 上不存在文件

    我在 AWS 上设置了 Hadoop Yarn 集群 有 1 个主服务器和 3 个从服务器 我已经验证我有 3 个活动节点在端口 50070 和 8088 上运行 我在客户端部署模式下测试了 Spark 作业 一切正常 当我尝试使用 Spa
  • 为什么在我的例子中 For 循环比 Map、Reduce 和 List 理解更快

    我编写了一个简单的脚本来测试速度 这就是我发现的结果 实际上 for 循环在我的例子中是最快的 这真的让我感到惊讶 请查看下面 正在计算平方和 这是因为它在内存中保存列表还是有意为之 谁能解释一下这一点 from functools imp
  • MapReduce 中的分区到底是如何工作的?

    我认为我总体上对 MapReduce 编程模型有一定的了解 但即使在阅读了原始论文和其他一些来源之后 我仍然不清楚许多细节 特别是关于中间结果的分区 我将快速总结到目前为止我对 MapReduce 的理解 我们有一个可能非常大的输入数据集
  • Hadoop 超立方体

    嘿 我正在启动一个基于 hadoop 的超立方体 具有灵活的维度数 有人知道这方面现有的方法吗 我刚刚发现PigOLAP草图 http wiki apache org pig PigOLAPSketch 但没有代码可以使用它 另一种方法是Z
  • 为什么 Spark 比 Hadoop MapReduce 更快

    有人可以使用字数统计示例解释一下为什么 Spark 比 MapReduce 更快吗 bafna的答案提供了故事的记忆方面 但我想补充另外两个重要事实 DAG和生态系统 Spark 使用 惰性求值 来形成连续计算阶段的有向无环图 DAG 通过
  • 如何修复“任务尝试_201104251139_0295_r_000006_0 未能报告状态 600 秒”。

    我编写了一个 MapReduce 作业来从数据集中提取一些信息 该数据集是用户对电影的评分 用户数量约25万 电影数量约30万 地图的输出是
  • 匿名类上的 NotSerializedException

    我有一个用于过滤项目的界面 public interface KeyValFilter extends Serializable public static final long serialVersionUID 7069537470113
  • “错误:无法找到或加载主类 org.apache.hadoop.util.RunJar”是什么意思?

    我正在尝试运行一个示例 因为它指出 Hadoop 实践 一书 http www manning com lam 第 15 页 这是需要运行的命令 bin hadoop jar hadoop examples jar 但我收到这个错误 Err
  • Hive:为现有文件夹结构添加分区

    我在 HDFS 中有一个文件夹结构 如下所示 但是 实际上没有使用以下命令在表上创建分区ALTER TABLE ADD PARTITION命令 即使文件夹结构的设置就像表有分区一样 如何自动将所有分区添加到Hive表中 Hive 1 0 外
  • Spark-submit,客户端无法通过以下方式进行身份验证:[TOKEN,KERBEROS];

    我使用 kerberos 设置了 hadoop 集群 但是当我运行 Spark Submit 时 它抛出异常 17 10 19 08 46 53 WARN scheduler TaskSetManager Lost task 0 0 in
  • 关于 Hadoop 和压缩输入文件的非常基本的问题

    我已经开始研究 Hadoop 如果我的理解是正确的 我可以处理一个非常大的文件 它会被分割到不同的节点上 但是如果文件被压缩 那么文件就无法分割 并且需要由单个节点处理 有效地破坏了运行一个mapreduce 一个并行机器集群 我的问题是
  • 如何配置Hive仓库路径?

    我修改了这部分

随机推荐

  • js += 含义(小知识)

    是连接复值 s 5 表示把s的值 5后复值给s若s是字符串 则是连接后赋值 s 5 就是将s字符串的值连接上字符串5后赋值给s s 5 若s为字符串 则同s 5 因为JS是弱变量 会自动转5为 5 与s s 5 语句同意 转载于 https
  • 《数据库系统内 幕》分布式系统

    分布式部分 章8 分布式系统抽象 章9 故障 无超时的故障检测器 phi增量故障检测器 章10 领导者选举 选举过程 选举规则 章11 以数据为中心的一致性模型 单操作一致性模型 客户为中心的一致性 会话模型 复制协议 基于主备份协议的复制
  • Linux国内环境下安装kubeadm、kubelet、kubectl

    因为项目需要用Kubernetes来改版底层的Docker 所以一边写完成现在的任务一边继续学习Kubernetes 现有的一些文档和Kubernetes中文社区的中文文档都没有很详细的初期安装部署环境的教程 所以建议直接去官网看文档 当然
  • 优秀网站源码、编程源码下载网站大集中

    1 51源码 http www 51aspx com 2 源码之家 http www codejia com 3 源码网 http www codepub com 4 虾客源码 http www xkxz com 5 多多源码 http w
  • 牛客SQL练习三

    21查找所有员工自入职以来的薪水涨幅情况 题目描述 查找所有员工自入职以来的薪水涨幅情况 给出员工编号emp no以及其对应的薪水涨幅growth 并按照growth进行升序 CREATE TABLE employees emp no in
  • Unity Vuforia(高通)AR全流程

    Unity Vuforia播放视频全过程 从Unity的安装到打包 一 安装Unity 1 点击安装地址下载Unity Hub 下载好之后点击安装 2 从Unity Hub进去安装Unity 要先注册登陆账号 安装完后是这样的 二 新建项目
  • Vue+Element-UI Table表头排序

    Vue Element UI Table表头排序 Vue代码 定义后台需要接受的排序属性 排序sortChange Vue代码
  • js控制输入框

    转自 http www pinlue com article 2019 11 2221 409812495947 html
  • 【C++11】——右值引用、移动语义

    目录 1 基本概念 1 1 左值与左值引用 1 2 右值和右值引用 1 3 左值引用与右值引用 2 右值引用实用场景和意义 2 1 左值引用的使用场景 2 2 左值引用的短板 2 3 右值引用和移动语义 2 3 1 移动构造 2 3 2 移
  • 推荐算法(一):协同过滤系列

    一 协同过滤 collaborative filtering 一种ItemCF推荐baseline 1 输入 user item相关矩阵 2 中间结果 item间相似度计算 item i与item j间相似度 分子 与二者均有关联的user
  • 【Hadoop生态圈】3.Zookeeper入门教程及集群环境搭建

    文章目录 1 简介 2 环境准备 3 修改Zookeeper配置文件 4 复制安装包到从节点并设置myid 5 启动集群 6 zkCli常用命令 1 简介 ZooKeeper是一个分布式的 开放源码的分布式应用程序协调服务 是Google的
  • ChatGPT是否会终结申请海外留学的文书时代?

    ChatGPT的爆火 也让不少准留学生们不禁会问 这一技术的产生是否会影响申请文书的写作 美国Insidehighered的专栏作家Jim Jump给出了自己的观点 ChatGPT对热爱文字和从事教育工作的人提出了特别的挑战 如果老师不能确
  • Unity中UGUI中各类UI元素跟随画面适应问题

    案例背景 这是一个即将发布陈web 版并且在手机上观看的 小交互 我要保证左上角按钮 保持相对位置不变 最终设置如下 简单版教程 很简单 Unity为每个UI元素提供了一个Rect Transform 里面有个Anchors 锚点 Unit
  • 如何搭建虚拟专有网络访问公司内网

    前言 因为公司开发都是内网环境 以往居家办公或非公司环境 都需要进行远程到公司电脑进行办公 为了方便部门同事出差驻场开发 搭建了虚拟专有网络 在实际搭建过程中使用了OpenVPN和SoftEtherVPN两种方式 做个总结记录 个人还是更推
  • python 解析大疆禅思L1 激光数据LDR格式

    个人微信 394467238 最近想把大疆禅思L1 录制的激光 LDR 数据 也就是把里面的数据一帧一帧的抽取出来 然后和图像数据做一个匹配 奈何问了一圈大疆的技术支持 就是不对外开放这个数据保存的协议 木有办法 只好自己动手尝试硬破解了
  • beanUtils封装表单数据到javaBean

    当表单数据多的时候避免太多的request getParament 方式获取数据 关键方法 BeanUtils populate p req getParameterMap 本例 获取前端表单数据 封装到javabean 练习中写了一些反射
  • OpenWRT安装docker内核kernel版本不够

    记录下 在openwrt中安装docker docker compose dockerd遇到如下错误 Collected errors pkg hash check unresolved cannot find dependency ker
  • 编程新手表示很想知道JAVA中Bean是什么?

    原文 编程新手表示很想知道JAVA中Bean是什么 NanSan 小编发现很多人都在问JAVA中Bean是什么 简单笼统的说就是一个类 一个可复用的类 这样的解释可能看着都还是云里雾里 跟没说一样 下面详细介绍吧 javaBean在MVC设
  • 拷贝构造函数的一个对象访问私有成员的问题

    最近遇到这样一个面试题 面试题 CString函数拷贝控制成员的编写 过程中遇到一个问题 真是当时让我疑惑不解 查查资料 原来是一时糊涂 看看人家的解答 不错 遂转一下 很简单 就是当时没转过弯来 原文如下 http blog csdn n
  • MapReduce运行流程

    MapRecude运行流程 1 客户端提交代码 job watiforcompletion 开始运行 2 请求到ResourceManager 经理 请求运行 ResourceManager返回jobId 和让客户端提交资源的路径 3 客户