0

当盒子上没有运行 hadoop 实例时,Hadoop 流将在“本地”模式下运行进程。我有一个 shell 脚本,它按顺序控制一组 hadoop 流作业,我需要根据作业是否在本地运行来调整从 HDFS 复制文件到本地的条件。是否有完成此测试的标准方法?我可以做一个“ps aux | grep something”,但这似乎是临时的。

4

3 回答 3

0

当盒子上没有运行 hadoop 实例时,Hadoop 流将在“本地”模式下运行进程。

你能指出这个参考吗?

常规或流式作业将按照其配置方式运行,因此我们提前知道作业在哪种模式下运行。查看文档以在不同模式下在单节点集群上配置 Hadoop 。

于 2011-12-31T08:42:16.420 回答
0

与其尝试在运行时检测进程正在运行的模式,不如将您正在开发的工具包装在明确选择本地与集群操作的 bash 脚本中。O'Reilly Hadoop 描述了如何使用配置文件覆盖显式选择本地:

hadoop v2.MaxTemperatureDriver -conf conf/hadoop-local.xml input/ncdc/micro max-temp

其中conf-local.xml是为本地操作配置的 XML 文件。

于 2012-01-13T16:54:33.153 回答
0

我还没有尝试过,但我认为您可以读出 mapred.job.tracker 配置设置。

于 2012-01-26T23:55:46.903 回答