windows/ Linux下 myeclipse和eclipse下安装配置hadoop插件

本人最近在windows上想写一个测试的程序MaxMapperTemper,然后身边没有服务器,所以想在win7上配置。

成功了。这里写下笔记希望对大家有帮助

安装和配置的步骤是:

我的是myeclipse 8.5

hadoop-1.2.2-eclipse-plugin.jar

1、安装Hadoop开发插件

     hadoop安装包contrib/目录下有个插件hadoop-1.2.2-eclipse-plugin.jar,拷贝到myeclipse根目录下/dropins目录下。

2、 启动myeclipse,打开Perspective:

【Window】->【Open Perspective】->【Other...】->【Map/Reduce】->【OK】

3、 打开一个View:

【Window】->【Show View】->【Other...】->【MapReduce Tools】->【Map/Reduce Locations】->【OK】

4、 添加Hadoop location:

location name: 我填写的是:localhost.
Map/Reduce Master 这个框里
Host:就是jobtracker 所在的集群机器,这里写localhost
Hort:就是jobtracker 的port,这里写的是9999
这两个参数就是mapred-site.xml里面mapred.job.tracker里面的ip和port
DFS Master 这个框里
Host:就是namenode所在的集群机器,这里写localhost
Port:就是namenode的port,这里写8888
这两个参数就是core-site.xml里面fs.default.name里面的ip和port
(Use M/R master host,这个复选框如果选上,就默认和Map/Reduce Master这个框里的host一样,如果不选择,就可以自己定义输入,这里jobtracker 和namenode在一个机器上,所以是一样的,就勾选上)

 user name:这个是连接hadoop的用户名,因为我是用lsq用户安装的hadoop,而且没建立其他的用户,所以就用lsq。下面的不用填写。
然后点击finish按钮,此时,这个视图中就有多了一条记录。

重启myeclipse并重新编辑刚才建立的那个连接记录,现在我们编辑advance parameters tab页
(重启编辑advance parameters tab页原因:在新建连接的时候,这个advance paramters  tab页面的一些属性会显示不出来,显示不出来也就没法设置,所以必须重启一下eclipse再进来编辑才能看到)

这里大部分的属性都已经自动填写上了,其实就是把core-defaulte.xml、hdfs-defaulte.xml、mapred-defaulte.xml里面的一些配置属性展示出来。因为在安装hadoop的时候,其site系列配置文件里有改动,所以这里也要弄成一样的设置。主要关注的有以下属性:
fs.defualt.name:这个在General tab页已经设置了
mapred.job.tracker:这个在General tab页也设置了
dfs.replication:这个这里默认是3,因为我在hdfs-site.xml里面设置成了1,所以这里也要设置成1
hadoop.job.ugi:这里要填写:lsq,Tardis,逗号前面的是连接的hadoop的用户,逗号后面就写死Tardis(这个属性不知道我怎么没有...)
然后点击finish,然后就连接上了(先要启动sshd服务,启动hadoop进程),连接上的标志如图:

5、新建Map/Reduce Project:

【File】->【New】->【Project...】->【Map/Reduce】->【Map/Reduce Project】->【Project name: WordCount】->【Configure Hadoop install directory...】->【Hadoop installation directory: D:\cygwin\home\lsq\hadoop-0.20.2】->【Apply】->【OK】->【Next】->【Allow output folders for source folders】->【Finish】

6、新建WordCount类:

添加/编写源代码:

D:\cygwin\home\lsq\hadoop-1.2.2/src/examples/org/apache/hadoop/examples/WordCount.java

package org.apache.hadoop.examples;

import java.io.IOException;

import java.util.StringTokenizer;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.io.IntWritable;

import org.apache.hadoop.io.Text;

import org.apache.hadoop.mapreduce.Job;

import org.apache.hadoop.mapreduce.Mapper;

import org.apache.hadoop.mapreduce.Reducer;

import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;

import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;

import org.apache.hadoop.util.GenericOptionsParser;

public class WordCount {

public static class TokenizerMapper 

       extends Mapper<Object, Text, Text, IntWritable>{

private final static IntWritable one = new IntWritable(1);

    private Text word = new Text();

public void map(Object key, Text value, Context context

                    ) throws IOException, InterruptedException {

      StringTokenizer itr = new StringTokenizer(value.toString());

      while (itr.hasMoreTokens()) {

        word.set(itr.nextToken());

        context.write(word, one);

      }

    }

  }

public static class IntSumReducer 

       extends Reducer<Text,IntWritable,Text,IntWritable> {

    private IntWritable result = new IntWritable();

public void reduce(Text key, Iterable<IntWritable> values, 

                       Context context

                       ) throws IOException, InterruptedException {

      int sum = 0;

      for (IntWritable val : values) {

        sum += val.get();

      }

      result.set(sum);

      context.write(key, result);

    }

  }

public static void main(String[] args) throws Exception {

    Configuration conf = new Configuration();

    String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();

    if (otherArgs.length != 2) {

      System.err.println("Usage: wordcount <in> <out>");

      System.exit(2);

    }

    Job job = new Job(conf, "word count");

    job.setJarByClass(WordCount.class);

    job.setMapperClass(TokenizerMapper.class);

    job.setCombinerClass(IntSumReducer.class);

    job.setReducerClass(IntSumReducer.class);

    job.setOutputKeyClass(Text.class);

    job.setOutputValueClass(IntWritable.class);

    FileInputFormat.addInputPath(job, new Path(otherArgs[0]));

    FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));

    System.exit(job.waitForCompletion(true) ? 0 : 1);

  }

}

7、上传模拟数据文件夹。 

为了运行程序,需要一个输入的文件夹和输出的文件夹。输出文件夹,在程序运行完成后会自动生成。我们需要给程序一个输入文件夹。 

(1)、在当前目录(如hadoop安装目录)下新建文件夹input,并在文件夹下新建两个文件file1、file2,这两个文件内容分别如下: 

file1 

Hello World Bye World
file2
Hello Hadoop Goodbye Hadoop  

(2)、.将文件夹input上传到分布式文件系统中。
在已经启动Hadoop守护进程终端中cd 到hadoop安装目录,运行下面命令:
bin/hadoop fs -put input in
8、 配置运行参数:

①在新建的项目WordCount,点击WordCount.java,右键-->Run As-->Run Configurations
②在弹出的Run Configurations对话框中,点Java Application,右键-->New,这时会新建一个application名为WordCount
③配置运行参数,点Arguments,在Program arguments中输入“你要传给程序的输入文件夹和你要求程序将计算结果保存的文件夹”,如:

(如果运行时报java.lang.OutOfMemoryError: Java heap space 配置VM arguments(在Program arguments下)

-Xms512m -Xmx1024m -XX:MaxPermSize=256m
)

8、点击Run,运行程序

点击Run,运行程序,过段时间将运行完成,等运行结束后,可以在终端中用命令如下,查看是否生成文件夹output: 

bin/hadoop fs -ls  

用下面命令查看生成的文件内容: 

bin/hadoop fs -cat output/* 

如果显示如下,说明已经成功在myeclipse下运行第一个MapReduce程序了。 

Bye 1
Goodbye 1
Hadoop  2
Hello   2
World   2


时间: 2024-08-04 18:01:28

windows/ Linux下 myeclipse和eclipse下安装配置hadoop插件的相关文章

ubuntu环境下eclipse的安装以及hadoop插件的配置

ubuntu环境下eclipse的安装以及hadoop插件的配置 一.eclipse的安装 在ubuntu桌面模式下,点击任务栏中的ubuntu软件中心,在搜索栏搜索eclipse 注意:安装过程需要输入用户密码. 二.eclipse的配置 待eclipse安装好以后,在命令行输入whereis eclipse 找到eclipse的安装路径 在文件目录下找到eclipse中的插件目录 然后在打开一个文件目录窗口找到hadoop/contrib/eclipse-plugin中的eclipse插件—

如何在Eclipse正确安装配置PyDev插件的官方教程,以及error 问题的解决方法:

官方教程; 1 1 This manual assumes that you have already have Python and/or Jython and/or IronPython installed in your machine, as well as Eclipse. Manual topics: Installing from update site and zips uninstalling Configuring the interpreter specify the py

eclipse下安装配置hadoop(含WordCount程序测试)

这里我为大家介绍如何在windows下安装配置hadoop.,以及测试一个程序 所需要使用的插件和分别有: 一.准备工作 1.eclipse,最好是JAVAEE版本的,以为可以改变模式. 2.hadoop和eclipse的连接器: hadoop-eclipse-plugin-1.2.1.jar(这个是我所使用的,在这里可以自定义选取版本) 3.是hadoop源码包(下载最新的就可以). 将hadoop-0.20.2-eclipse-plugin.jar 复制到eclipse/plugins目录下

Eclipse的安装配置 - Windows

Eclipse的安装配置 - Windows 文本关键字:Eclipse.下载.安装.Java环境变量.配置 一.Eclipse介绍 Eclipse是一个用Java语言发开的十分强大的软件开发工具.当然有比它更香的IDEA,但是Eclipse适中的配置和提示功能十分适合初学者,而IDEA更适合开发者.<font color="red">在此引用李刚老师的一句话:一个好的工具可以提升开发者的效率,但是会让初学者更白痴.</font>所以,如果目前你处在学习阶段,并

&lt;亲测&gt;CentOS 7.3下Node.js 8.6安装配置(含NPM以及PM2)

CentOS 7.3下Node.js 8.6安装配置 2017年09月30日 14:12:02 阅读数:2245更多 个人分类: Nodejs 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/mawenwu1983/article/details/78142253 1.官网下载 https://nodejs.org/en/download/current/ https://nodejs.org/dist/v8.6.0/node-v8.6.0-li

Eclipse安装配置PyDev插件

Eclipse安装配置PyDev插件 关于PyDev PyDev是一个功能强大的 Eclipse插件,使用户可用 Eclipse 来进行 Python 应用程序的开发和调试.PyDev 插件的出现方便了众多的 Python 开发人员,它提供了一些很好的功能,如:语法错误提示.源代码编辑助手.Quick Outline.Globals Browser.Hierarchy View.运行和调试等等. 官网安装 下载安装很方便,但可能由于网络原因用时过长或失败,官网安装过程如下: 1. Help -

1.Maven+SpringMVC+Eclipse软件安装配置,Maven报插件错误,Eclipse总是卡死的解决办法,导入一个maven工程后 一直显示importing maven project

 使用Maven+SpringMVC+Eclipse软件安装配置过程中的问题: 1.Eclipse总是卡死的解决办法: 一:内存不足所以会卡死,配置一下eclipse.ini修改这几个值就好了-XX:MaxPermSize=768m-Xms1024m-Xmx3072m搜索 二:修改window->preferences --- > JAVA->Edittor->Hovers,将右侧所有复选框清空. 2.因为eclipse上一次未正常关闭,导致启动卡死,错误日志为: [plain

eclipse安装配置maven插件

记录下自己通过link方式在eclipse下安装配置maven插件的过程: 1. 在你的 eclipse 安装的根目录下创建两个文件夹:links,mavenPlugins(文件夹名称可自定义),把eclipse-maven3-plugin.zip解压后的features和plugins文件夹放到mavenPlugins文件夹下(必须如此,注意解压后文件夹的嵌套情况). 2. 在 links 目录下创建一个maven.link(文件名称可自定义)文件,打开并输入:path=mavenPlugin

linux小白 mysql5.0源码安装配置

安装mysql-5.0.45.tar.gz(该软件包下载地址:http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261-0.html) # groupadd mysql              #添加mysql组 # useradd -g mysql mysql      #添加mysql用户,且加入mysql组 --------------------编译过程---------------------------------- # t