Eclipse如何运行map reduce工作?

时间:2014-03-19 08:30:08

标签: java xml eclipse maven hadoop

我跟着一篇文章,设法在eclipse中运行mapreduce程序。

以下是pom.xml文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>



  <groupId>virtusa</groupId>
  <artifactId>fazlan</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>fazlan</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>


    <dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client</artifactId>
    <version>2.2.0</version>
    </dependency>

  </dependencies>
</project>

Maven安装必要的jar,当我将程序作为java应用程序运行时,输出将按预期保存。

正如我所读到的,Hadoop可以在3种模式下运行。

1)Single node 
2)psuedo-distributed mode 
3)distributed mode

我假设eclipse在单节点配置中运行程序。

如果我们要单独安装hadoop,我们将不得不编辑一些xml文件来说我们需要一个特定的配置(我使用Hadoop 2.2甚至是单节点配置我假设它需要在xml的xome中进行一些修改文件)。

在上面的例子中,我没有改变任何xml文件来说明。只有罐子里的eclipse才能解决它。

此方法是否依赖于除JAVA_HOME或PATH之外的任何环境变量?(Eclipse是否在我的机器中搜索任何hadoop安装)

1 个答案:

答案 0 :(得分:1)

如你所说,hadoop可以以3种方式运行

Local mode (Only for test purpose no mapreduce daemons needed)
Pseudo distributed mode(1 node cluster)
Distributed mode(Multinode cluster)

在本地模式下,不需要运行任何hadoop守护进程(jobrcker,mr1中的taskters)。这通常用于eclipse的测试目的但是在伪分布式和分布式模式的情况下,Mapreduce守护进程应该运行。当您从任何客户机节点以伪/分布式模式运行mapreduce作业时,必须在mapred-site.xml中指定jobtracker节点和端口号(mapred.job.tracker),在core-site中指定HDFS namenode Host:port。 xml

从eclipse开始,执行将处于本地模式,不会运行任何守护进程(不会连接到任何守护进程),因此在提交作业时无需配置任何xml文件

相关问题