首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hadoop:如何确保多个映射任务不竞争资源?

Hadoop:如何确保多个映射任务不竞争资源?
EN

Stack Overflow用户
提问于 2012-10-24 05:11:43
回答 1查看 181关注 0票数 0

我将在Hadoop中同时运行3个作业,它们是无关的。

其中一个文件的输入是over,慢下载大型文件的。

其他的是来自HDFS、和S3N文件系统的S3N输入。

我刚开始在Hadoop建造这样的东西。

  • 如何优化地图阶段?
  • 我希望磁盘读取至少在同时发生下载,这似乎是合乎逻辑的。
  • 我肯定不希望all --大型磁盘操作到--等待下载(20个下载中的每一个都可能是一个小时)
  • 我想我不想让多个、大的、磁盘读取在同时发生的。

这个映射/输入/数据获取阶段是如何由Hadoop处理的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-25 06:15:25

在mapreduce中,通常所有的地图/还原器都做同样的工作。

但是,您可以通过两种不同的解决方案来实现您的目标:

1.基本上,您应该考虑将作业分割到两个独立的作业上,然后用每个节点指定的任务数启动它们。https://issues.apache.org/jira/browse/HADOOP-5170,但此修补程序仅适用于cdh,而不适用于基本分布。

2.另一种选择是实现您自己的输入格式,它将能够对每个节点的地图操作进行编码并平衡不同任务的数量。这可以通过在InputSplit中为每个拆分指定主机来实现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13043364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档