概述

本文记录windows下hadoop本地开发环境的搭建:

OS:windows
hadoop执行模式:独立模式

安装包结构:

Hadoop-2.6.0-Windows.zip
- cygwinInstall // cygwin离线安装包
- hadoop-2.6.0-windows.tar.gz // hadoop-2.6.0 windows安装包

PS:

hadoop-2.6.0-windows.tar.gz是基于官方发行包hadoop-2.6.0.tar.gz,并为windows单机測试而自己定义的包,修改例如以下:
1. 在bin文件夹下,加入了hadoop.dll和winutils.exe
2. 修改了org\apache\hadoop\io\nativeio\NativeIO.java源代码第558行 *因为源代码有修改,此包不能用于生产环境,仅仅限于windows环境下的开发測试

1. 安装cygwin

  1. 双击cygwinInstall下的setup-x86_64.exe
  2. 选择从本地安装

  3. 选择安装位置

  4. 选择本地安装文件位置

  5. 点击All旁边的default,使其变为Install,再点击下一步就可以開始安装

2. 安装hadoop

  1. 在cygwin的根文件夹下。建立opt文件夹,并把安装包复制到opt文件夹下

    cd /; mkdir opt

  2. 解压

    cd /opt; tar xzf hadoop-2.6.0-windows.tar.gz

  3. 环境变量设置

    设置windows环境变量HADOOP_PREFIX指向hadoop安装文件夹

    设置windows环境变量HADOOP_HOME指向hadoop安装文件夹

    设置windows环境变量JAVA_HOME指向java安装文件夹

    Path环境变量后追加:;%HADOOP_HOME%\bin

  4. ~/.bashrc中设置下面环境变量:

    export HADOOP_CLASSPATH=$(cygpath -pw $(hadoop classpath)):$HADOOP_CLASSPATH

  5. 使~/.bashrc生效,并验证hadoop是否工作

    source ~/.bashrc

    验证hadoop:

    hadoop version

    若正常显示版本号信息则成功安装

  6. 执行演示样例代码。验证hadoop是否可以执行mapreduce

    cd /opt/hadoop-2.6.0; mkdir input; cd input; echo "Hello World" > test

    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount input output

    若正常执行则显示:

    在/opt/hadoop-2.6.0/output下会生成part-r-00000文件,包括下面内容:

    Hello   1
    world 1

3. idea开发环境配置

  1. 创建一个mapreduce项目

  2. 选择项目。按下F12。加入外部依赖

  3. 加入HADOOP_HOME下必要的jar包

  4. 进入执行配置

  5. 配置执行參数

    Working directory设置为hadoop安装文件夹

    并设置输入參数

  6. 调试

    和普通java程序一样打断点进行调试

windows下搭建hadoop-2.6.0本地idea开发环境的更多相关文章

  1. Windows环境下搭建Hadoop(2.6.0)+Hive(2.2.0)环境并连接Kettle(6.0)

    前提:配置JDK1.8环境,并配置相应的环境变量,JAVA_HOME 一.Hadoop的安装 1.1 下载Hadoop (2.6.0) http://hadoop.apache.org/release ...

  2. 第九章 搭建Hadoop 2.2.0版本HDFS的HA配置

    Hadoop中的NameNode好比是人的心脏,非常重要,绝对不可以停止工作.在hadoop1时代,只有一个NameNode.如果该NameNode数据丢失或者不能工作,那么整个集群就不能恢复了.这是 ...

  3. 本地windows下搭建git的本地服务器

    本地windows下搭建git的本地服务器 准备工作: 本地安装java环境,配置环境变量(略) 下载gitblit文件,百度一大堆 开始第一步: 减压gitblit压缩包到某个目录下,比如我在:H: ...

  4. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

  5. Windows下搭建本地SVN服务器【转】

    转自:http://www.linuxidc.com/Linux/2015-01/111563.htm 本文介绍Windows下搭建本地SVN服务器的方法,网上资料比较少也比较旧,大都介绍的是旧版本S ...

  6. Android学习——windows下搭建Cygwin环境

    在上一篇博文<Android学习——windows下搭建NDK_r9环境>中,我们详细的讲解了在windows下进行Android NDK开发环境的配置,我们也讲到了在NDk r7以后,我 ...

  7. Windows上搭建hadoop开发环境

    前言 Windows下运行Hadoop,通常有两种方式:一种是用VM方式安装一个Linux操作系统,这样基本可以实现全Linux环境的Hadoop运行:另一种是通过Cygwin模拟Linux环境.后者 ...

  8. Windows下搭建MySQL Master Slave[转]

    Windows下搭建MySQL Master Slave 一.背景 服务器上放了很多MySQL数据库,为了安全,现在需要做Master/Slave方案,因为操作系统是Window的,所以没有办法使用k ...

  9. windows下搭建Cygwin环境

    windows下搭建Cygwin环境 在上一篇博文<Android学习——windows下搭建NDK_r9环境>中,我们详细的讲解了在windows下进行Android NDK开发环境的配 ...

随机推荐

  1. thinkphp5.0的验证码安装和相关错误

    thinkphp5.0的验证码安装和相关错误 问题 只要是之前使用thinkphp5框架搭建网站的时候发现不管如何调用验证码都无法使用,按照官网要求,使用composer安装验证码出现报错Fatal ...

  2. json的认识及对json数据的相互转化

    Json 和 Jsonlib 的使用 什么是 Json JSON(JvaScript Object Notation)(官网网站:http://www.json.org/)是 一种轻量级的数据交换格式 ...

  3. ajax无刷新翻页后,jquery失效问题的解决

    例如 $(".entry-title a").click(function () {   只对第一页有效, 修改为 $(document).on('click', ".e ...

  4. css inline-block列表布局

    一.使用inline-block布局 二.多列布局方法二 <html><head> <meta charset="utf-8"> <tit ...

  5. ReactiveCocoa结合了几种编程风格

    函数式编程(Functional Programming):使用高阶函数,例如函数用其他函数作为参数.响应式编程(Reactive Programming):关注于数据流和变化传播.所以,你可能听说过 ...

  6. Spring的注解@SuppressWarnings用法记录

    @SuppressWarnings注解用法 @SuppressWarnings注解主要用在取消一些编译器产生的警告对代码左侧行列的遮挡,有时候这会挡住我们断点调试时打的断点. 如图所示: 这时候我们在 ...

  7. Linux Putty 复制粘贴

    从putty复制:    用左键选中文字,再其他地方点中键就可以粘贴了,不需要右键粘贴. 在putty中粘贴:    在其他地方用左键选中文字,不用右键复制,保持选中文字高亮,然后在putty中点中键 ...

  8. 最大优先队列 A - 奇怪的玩意

    我们的化学生物学家发明了一种新的叫stripies非常神奇的生命.该stripies是透明的无定形变形虫似的生物,生活在果冻状的营养培养基平板菌落.大部分的时间stripies在移动.当他们两个碰撞, ...

  9. Highcharts 前端图表插件

    Highcharts 支持将图片下载成各种格式 Highcharts官网:https://www.hcharts.cn/download <div id="container" ...

  10. python2中打印列表与字典内的中文字符

    在开发过程中,我们经常需要打印一些变量的值,便于调试.这个时候就会发现如果在列表与字典这些容器中,如果包含中文字符,不管是str类型,还是unicode类型,都打印不出来.如下: >>&g ...