2013-10-15 62 views
0

如何更改Hadoop中的映射器/缩减器的数量?出于某种奇怪的原因,mapred-site.xml中不存在mapred.tasttracker.map.tasks.maximum和mapred.tasttracker.reduce.tasks.maximum。我确实设法在dse-mapred-default.xml中找到这些设置,但是一旦打开xml,就会有一个注释,指示不应该在该文件中编辑这些设置,并且应该在mapred-site中覆盖这些属性。 XML。更改DataStax Enterprise中的缩减器/映射器的数量

我已经尝试将两个设置添加到mapred-site.xml并重新启动Hadoop,我期待数字也在dse-mapred-default.xml中更新,但没有运气。

有人可以请说明这一点吗?

感谢 迈季

回答

1

这不是mapred.tasttracker.map.tasks.maximum,但mapred.tasktracker.map.tasks.maximum。我希望它只是一个错字,并且在你的配置中使用了正确的名字。

在启动时,DSE会创建dse-mapred-default.xml和dse-core-default.xml文件,并使用适合您本地操作系统配置和硬件的默认值填充它们。这主要是为了Hadoop自动调整功能和简化配置启用安全功能的Hadoop。然后,Hadoop的负载配置文件按以下顺序:

  1. Hadoop的内部默认值(你可以在Hadoop的文档查找默认)从DSE核-default.xml中和DSE-mapred默认
  2. DSE默认值。 xml
  3. 用户文件:core-site.xml和mapred-site.xml。

稍后加载的文件的设置会覆盖先前加载的设置。配置的最终状态是而不是写回到默认文件。您不应该期望将mapred-site.xml中的设置复制到dse-mapred-default.xml文件中。

如果您不确定最终配置是什么以及您的设置是否设置正确 - 只需运行一项作业并查看hadoop日志目录并搜索匹配模式job_xxxxxxxxxxxx_xxxx_conf.xml的文件,其中x是数字。您还可以在jobtracker HTTP控制台中查看最终配置。

+0

感谢Piotr。将检查日志以查看设置是否已实际应用。还有一件事请。当我在pig中执行转储时,我在控制台上收到以下消息:attempt_201310141552_0001_m_000000_0 NaN%INFO 15:55:33,801 attempt_201310141552_0001_m_000000_0 NaN%INFO 15:55:36,860我正在运行包含500k项目的5节点Hadoop群集。任何想法为什么发生这种情况? – Mskh

+0

我不知道。也许用完整的步骤提出另一个问题来重现。顺便说一句:如果你找到有用的答案,请将其标记为已接受。 –

相关问题