zoukankan      html  css  js  c++  java
  • Win7+Eclipse+Hadoop2.6.4开发环境搭建

    Hadoop开发环境搭建

    感谢参考网站:http://www.cnblogs.com/huligong1234/p/4137133.html

    一、软件准备

    JDK:jdk-7u80-windows-x64.exe

    http://www.oracle.com/technetwork/java/javase/archive-139210.html

    Eclipse:eclipse-jee-mars-2-win32-x86_64.zip

    http://www.eclipse.org/downloads/

    Hadoop:hadoop-2.6.4.tar.gz

    Hadoop-Src:hadoop-2.6.4-src.tar.gz

    http://hadoop.apache.org/releases.html

    Ant:apache-ant-1.9.6-bin.zip

    http://ant.apache.org/bindownload.cgi

    Hadoop-Common:hadoop2.6(x64)V0.2.zip (2.4以后)、(hadoop-common-2.2.0-bin-master.zip)

    2.2:https://github.com/srccodes/hadoop-common-2.2.0-bin

    2.6:http://download.csdn.net/detail/myamor/8393459

    Hadoop-eclipse-plugin:hadoop-eclipse-plugin-2.6.0.jar

    https://github.com/winghc/hadoop2x-eclipse-plugin

    二、搭建环境

    1. 安装JDK

    执行“jdk-7u80-windows-x64.exe”,步骤选择默认下一步即可。

    2. 配置JDK、Ant、Hadoop环境变量

    解压hadoop-2.6.4.tar.gz、apache-ant-1.9.6-bin.zip、hadoop2.6(x64)V0.2.zip、hadoop-2.6.4-src.tar.gz到本地磁盘,位置任意。

    配置系统环境变量JAVA_HOME、ANT_HOME、HADOOP_HOME,并将这些环境变量的bin子目录配置到path变量中。

    将hadoop2.6(x64)V0.2下的hadoop.dll和winutils.exe复制到HADOOP_HOME/bin目录下。

    3. 配置Eclipse

    将hadoop-eclipse-plugin-2.6.0.jar复制到eclilpse的plugins目录下。

    启动eclipse,并设置好workspace。插件安装成功的话,启动之后可以看到如下内容:

    clip_image001

    4. 配置hadoop

    打开“window”-“Preferenes”-“Hadoop Mep/Reduce”,配置到Hadoop_Home目录。

    打开“window”-“show view” -“Mepreduce Tools” –“Mep/Reduce Locations”,创建一个Locations,配置如下。

    clip_image003

    1位置为配置的名称,任意。

    2位置为mapred-site.xml文件中的mapreduce.jobhistory.address配置。

    3位置为core-site.xml文件中的fs.default.name配置。

    clip_image005

    配置好以上信息之后,可以在Project Explorer中看到以下内容,即表示配置成功。

    clip_image006

    上图表示读取到了配置的hdfs信息,一共有3个文件夹input、output、output1,input目录下有3个文件。

    注:以上内容为我自己环境中创建的,你看到的可能跟我的不一样。

    内容可以通过在hadoop.master上执行

    hadoop fs -mkdir input --创建文件夹

    hadoop fs -put $localFilePath input --将本地文件上传到HDFS的input目录下

    三、创建示例程序

    1. 新建一个WordCount类

    打开eclipse,创建一个Map/Reduce Project,并创建一个org.apache.hadoop.examples.WordCount类。

    拷贝hadoop-2.6.4-src.tar.gz中hadoop-mapreduce-projecthadoop-mapreduce-examplessrcmainjavaorgapachehadoopexamples下的WordCount.java文件中的内容到新创建的类中。

    2. 配置log4j

    在src目录下,创建log4j.properties文件

    log4j.rootLogger=debug,stdout,R
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p - %m%n
    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File=mapreduce_test.log
    log4j.appender.R.MaxFileSize=1MB
    log4j.appender.R.MaxBackupIndex=1
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%
    log4j.logger.com.codefutures=DEBUG

    3. 配置运行参数

    选择“run”-“run configurations”,在“Arguments”里加入“hdfs://hadoop.master:9000/user/hadoop/input hdfs://hadoop.master:9000/user/hadoop/output1”。

    格式为“输入路径 输出路径”,如果输出路径必须为空或未创建,否则会报错。

    如下图:

    clip_image008

    注:如果”Java Application”下面没有“WordCount”,可以选择右键,New一个即可。

    4. 执行查看结果

    配置好之后,执行。查看控制台输出以下内容,表示执行成功:

      INFO - Job job_local1914346901_0001 completed successfully

      INFO - Counters: 38
        File System Counters
            FILE: Number of bytes read=4109
            FILE: Number of bytes written=1029438
            FILE: Number of read operations=0
            FILE: Number of large read operations=0
            FILE: Number of write operations=0
            HDFS: Number of bytes read=134
            HDFS: Number of bytes written=40
            HDFS: Number of read operations=37
            HDFS: Number of large read operations=0
            HDFS: Number of write operations=6
        Map-Reduce Framework
            Map input records=3
            Map output records=7
            Map output bytes=70
            Map output materialized bytes=102
            Input split bytes=354
            Combine input records=7
            Combine output records=7
            Reduce input groups=5
            Reduce shuffle bytes=102
            Reduce input records=7
            Reduce output records=5
            Spilled Records=14
            Shuffled Maps =3
            Failed Shuffles=0
            Merged Map outputs=3
            GC time elapsed (ms)=21
            CPU time spent (ms)=0
            Physical memory (bytes) snapshot=0
            Virtual memory (bytes) snapshot=0
            Total committed heap usage (bytes)=1556611072
        Shuffle Errors
            BAD_ID=0
            CONNECTION=0
            IO_ERROR=0
            WRONG_LENGTH=0
            WRONG_MAP=0
            WRONG_REDUCE=0
        File Input Format Counters
            Bytes Read=42
        File Output Format Counters
            Bytes Written=40

    在“DFS Locations”下,刷新刚创建的“hadoop”看到本次任务的输出目录下是否有输出文件。

    clip_image010

    四、问题FAQ

    1. 问题1:NativeCrc32.nativeComputeChunkedSumsByteArray错误

    问题描述】启动示例程序时,报nativeComputeChunkedSumsByteArray异常。控制台日志显示如下:

    Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)V

    at org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(Native Method)

    原因分析hadoop.dll文件版本错误,替换对应的版本文件。由于hadoop.dll 版本问题出现的,这是由于hadoop.dll 版本问题,2.4之前的和自后的需要的不一样,需要选择正确的版本(包括操作系统的版本),并且在 Hadoop/bin和 C:windowssystem32 上将其替换。

    解决措施】下载对应的文件替换即可。http://download.csdn.net/detail/myamor/8393459 (2.6.X_64bit)

  • 相关阅读:
    innodb count优化测试
    基于HTML5 Canvas生成粒子效果的人物头像
    基于HTML5 SVG炫酷文字爆炸特效
    一款基于jQuery轮播切换焦点图,可播放多张图片
    基于Bootstrap的jQuery开关按钮组合
    基于jQuery上下切换的焦点图—带缩略图悬浮
    基于HTML5 Canvas实现的图片马赛克模糊特效
    基于jQuery的宽屏可左右切换的焦点图插件
    基于HTML5的捕鱼达人游戏网页版
    基于HTML5实现的中国象棋游戏
  • 原文地址:https://www.cnblogs.com/wenhaizhang/p/5345094.html
Copyright © 2011-2022 走看看