"uber mode" 在 hadoop 中的用途是什么?
What is the purpose of "uber mode" in hadoop?
大家好,我是大数据新手。我在整个互联网上进行了搜索,以找到超级模式到底是什么。我搜索得越多,我就越困惑。任何人都可以帮助我回答我的问题吗?
- 超级模式有什么作用?
- 它在 mapred 1.x 和 2.x 中的工作方式不同吗?
- 我在哪里可以找到它的设置?
当多个 mapper 和 reducer 组合使用一个容器时,就会出现 Uber Job。在 mapred-site.xml
中围绕 Uber Jobs 的配置有四个核心设置。优步工作的配置选项:
mapreduce.job.ubertask.enable
mapreduce.job.ubertask.maxmaps
mapreduce.job.ubertask.maxreduces
mapreduce.job.ubertask.maxbytes
您可以在此处找到更多详细信息:http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.1.15/bk_using-apache-hadoop/content/uber_jobs.html
就 hadoop2.x 而言,Uber 作业是在 mapreduce ApplicationMaster 本身中启动的作业,即没有为 map 和 reduce 作业创建单独的容器,因此 创建容器的开销和与他们的交流得以保存。
就工作(使用 hadoop 1.x 和 2.x)而言,我认为差异只有在涉及 1.x 和 2.x 的术语时才能观察到,没有差异正在工作。
配置参数与 Navneet Kumar 在其回答中提到的参数相同。
PS: 仅对小数据集使用它。
Hadoop2 中的 UBER 模式是什么?
通常映射器和缩减器将由 ResourceManager (RM) 运行,RM 将为映射器和缩减器创建单独的容器。
Uber 配置,将允许 运行 映射器和缩减器与 ApplicationMaster (AM) 在同一进程中。
优步职位:
Uber 作业是在 MapReduce ApplicationMaster 中执行的作业。而不是与 RM 通信以创建 mapper 和 reducer 容器。
AM 运行在自己的进程中执行映射和缩减任务,避免了启动和与远程容器通信的开销。
为什么
如果您有一个小数据集或者您想要 运行 对少量数据进行 MapReduce,Uber 配置将通过减少 MapReduce 通常花费在 mapper 和 reducer 阶段的额外时间来帮助您。
我可以为所有 MapReduce 作业配置 Uber 吗?
截至目前,
仅限地图的工作和
支持具有一个减速器的作业。
"What is Uber Mode?" 的答案非常好
只是为 "Why?"
添加更多信息
应用程序主管决定如何 运行 制作的任务
启动 MapReduce 作业。如果作业很小,application master 可能会选择 运行 tasks 在与自己相同的 JVM 中。当它判断在新容器中分配和 运行ning 任务的开销超过并行 运行ning 任务的收益时,与在一个节点上按顺序 运行ning 它们相比,就会发生这种情况。 =10=]
现在,问题可以是“什么才算是一份小工作?
默认情况下,小型作业是指具有少于 10 个映射器、只有一个减速器且输入大小小于一个 HDFS 块大小的作业。
大家好,我是大数据新手。我在整个互联网上进行了搜索,以找到超级模式到底是什么。我搜索得越多,我就越困惑。任何人都可以帮助我回答我的问题吗?
- 超级模式有什么作用?
- 它在 mapred 1.x 和 2.x 中的工作方式不同吗?
- 我在哪里可以找到它的设置?
当多个 mapper 和 reducer 组合使用一个容器时,就会出现 Uber Job。在 mapred-site.xml
中围绕 Uber Jobs 的配置有四个核心设置。优步工作的配置选项:
mapreduce.job.ubertask.enable
mapreduce.job.ubertask.maxmaps
mapreduce.job.ubertask.maxreduces
mapreduce.job.ubertask.maxbytes
您可以在此处找到更多详细信息:http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.1.15/bk_using-apache-hadoop/content/uber_jobs.html
就 hadoop2.x 而言,Uber 作业是在 mapreduce ApplicationMaster 本身中启动的作业,即没有为 map 和 reduce 作业创建单独的容器,因此 创建容器的开销和与他们的交流得以保存。
就工作(使用 hadoop 1.x 和 2.x)而言,我认为差异只有在涉及 1.x 和 2.x 的术语时才能观察到,没有差异正在工作。
配置参数与 Navneet Kumar 在其回答中提到的参数相同。
PS: 仅对小数据集使用它。
Hadoop2 中的 UBER 模式是什么?
通常映射器和缩减器将由 ResourceManager (RM) 运行,RM 将为映射器和缩减器创建单独的容器。 Uber 配置,将允许 运行 映射器和缩减器与 ApplicationMaster (AM) 在同一进程中。
优步职位:
Uber 作业是在 MapReduce ApplicationMaster 中执行的作业。而不是与 RM 通信以创建 mapper 和 reducer 容器。 AM 运行在自己的进程中执行映射和缩减任务,避免了启动和与远程容器通信的开销。
为什么
如果您有一个小数据集或者您想要 运行 对少量数据进行 MapReduce,Uber 配置将通过减少 MapReduce 通常花费在 mapper 和 reducer 阶段的额外时间来帮助您。
我可以为所有 MapReduce 作业配置 Uber 吗?
截至目前, 仅限地图的工作和 支持具有一个减速器的作业。
"What is Uber Mode?" 的答案非常好 只是为 "Why?"
添加更多信息应用程序主管决定如何 运行 制作的任务 启动 MapReduce 作业。如果作业很小,application master 可能会选择 运行 tasks 在与自己相同的 JVM 中。当它判断在新容器中分配和 运行ning 任务的开销超过并行 运行ning 任务的收益时,与在一个节点上按顺序 运行ning 它们相比,就会发生这种情况。 =10=]
现在,问题可以是“什么才算是一份小工作?
默认情况下,小型作业是指具有少于 10 个映射器、只有一个减速器且输入大小小于一个 HDFS 块大小的作业。