Win7下面安装hadoop2.x插件及Win7/Linux运行MapReduce程序

2023-11-02 18:58

本文主要是介绍Win7下面安装hadoop2.x插件及Win7/Linux运行MapReduce程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、win7下
(一)、安装环境及安装包
win7 32 bit
jdk7
eclipse-java-juno-SR2-win32.zip
hadoop-2.2.0.tar.gz
hadoop-eclipse-plugin-2.2.0.jar
hadoop-common-2.2.0-bin.rar

(二)、安装
默认已经安装好了jdk、eclipse以及配置好了hadoop伪分布模式

1、拷贝hadoop-eclipse-plugin-2.2.0.jar插件到Eclipse安装目录的子目录plugins下,重启Eclipse。

2、设置环境变量

3、配置eclipse中hadoop的安装目录
解压hadoop-2.2.0.tar.gz

4、解压hadoop-common-2.2.0-bin.rar
复制里面的文件到hadoop安装目录的bin文件夹下

(三)、在win7下,MapReuce On Yarn执行

新建一个工程

点击window–>show view–>Map/Reduce Locations

点击New Hadoop Location……

添加如下配置,点击完成。

自此,你就可以查看HDFS中的相关内容了。

编写mapreduce程序

在src目录下添加文件log4j.properties,内容如下:

log4j.rootLogger=debug,appender1log4j.appender.appender1=org.apache.log4j.ConsoleAppenderlog4j.appender.appender1.layout=org.apache.log4j.TTCCLayout

运行,结果如下:

二、在Linux下

(一)在Linux下,MapReuce On Yarn上

运行

[root@liguodong Documents]# yarn jar  test.jar hdfs://liguodong:8020/hello  hdfs://liguodong:8020/output
15/05/03 03:16:12 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
………………
15/05/03 03:16:13 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1430648117067_0001
15/05/03 03:16:13 INFO impl.YarnClientImpl: Submitted application application_1430648117067_0001 to ResourceManager at /0.0.0.0:8032
15/05/03 03:16:13 INFO mapreduce.Job: The url to track the job: http://liguodong:8088/proxy/application_1430648117067_0001/
15/05/03 03:16:13 INFO mapreduce.Job: Running job: job_1430648117067_0001
15/05/03 03:16:21 INFO mapreduce.Job: Job job_1430648117067_0001 running in uber mode : false
15/05/03 03:16:21 INFO mapreduce.Job:  map 0% reduce 0%
15/05/03 03:16:40 INFO mapreduce.Job:  map 100% reduce 0%
15/05/03 03:16:45 INFO mapreduce.Job:  map 100% reduce 100%
15/05/03 03:16:45 INFO mapreduce.Job: Job job_1430648117067_0001 completed successfully
15/05/03 03:16:45 INFO mapreduce.Job: Counters: 43File System CountersFILE: Number of bytes read=98FILE: Number of bytes written=157289FILE: Number of read operations=0FILE: Number of large read operations=0FILE: Number of write operations=0HDFS: Number of bytes read=124HDFS: Number of bytes written=28HDFS: Number of read operations=6HDFS: Number of large read operations=0HDFS: Number of write operations=2Job CountersLaunched map tasks=1Launched reduce tasks=1Data-local map tasks=1Total time spent by all maps in occupied slots (ms)=16924Total time spent by all reduces in occupied slots (ms)=3683Map-Reduce FrameworkMap input records=3Map output records=6Map output bytes=80Map output materialized bytes=98Input split bytes=92Combine input records=0Combine output records=0Reduce input groups=4Reduce shuffle bytes=98Reduce input records=6Reduce output records=4Spilled Records=12Shuffled Maps =1Failed Shuffles=0Merged Map outputs=1GC time elapsed (ms)=112CPU time spent (ms)=12010Physical memory (bytes) snapshot=211070976Virtual memory (bytes) snapshot=777789440Total committed heap usage (bytes)=130879488Shuffle ErrorsBAD_ID=0CONNECTION=0IO_ERROR=0WRONG_LENGTH=0WRONG_MAP=0WRONG_REDUCE=0File Input Format CountersBytes Read=32File Output Format CountersBytes Written=28

查看结果

[root@liguodong Documents]# hdfs dfs -ls  /
Found 3 items
-rw-r--r--   2 root supergroup         32 2015-05-03 03:15 /hello
drwxr-xr-x   - root supergroup          0 2015-05-03 03:16 /output
drwx------   - root supergroup          0 2015-05-03 03:16 /tmp
[root@liguodong Documents]# hdfs dfs -ls  /output
Found 2 items
-rw-r--r--   2 root supergroup          0 2015-05-03 03:16 /output/_SUCCESS
-rw-r--r--   2 root supergroup         28 2015-05-03 03:16 /output/part-r-00000
[root@liguodong Documents]# hdfs dfs -text  /output/pa*
hadoop  1
hello   3
me      1
you     1

遇到的问题

File /output/………  could only be replicated to 0 nodes instead of minReplication (=1).  
There are 1 datanode(s) running and no node(s) are excluded in this operation.

在网上找了很多方法是试了没有解决,然后自己根据这句话的中文意思是只有被复制到0个副本,而不是最少的一个副本。

我将最先dfs.replication.min设置为0,但是很遗憾,后面运行之后发现必须大于0,我又改为了1。
然后再dfs.datanode.data.dir多设置了几个路径,就当是在一个系统中多次备份吧,后面发现成功了。

设置如下,在hdfs-site.xml中添加如下配置。

    <property><name>dfs.datanode.data.dir</name>  <value>     file://${hadoop.tmp.dir}/dfs/dn,file://${hadoop.tmp.dir}/dfs/dn1,file://${hadoop.tmp.dir}/dfs/dn2          </value></property>

(二)在Linux下,MapReuce On Local上
在mapred-site.xml中,添加如下配置文件。

<configuration><property><name>mapreduce.framework.name</name><value>local</value></property>
</configuration>

可以不用启动ResourceManager和NodeManager。

运行

[root@liguodong Documents]# hadoop jar  test.jar hdfs://liguodong:8020/hello  hdfs://liguodong:8020/output

三、MapReduce运行模式有多种
mapred-site.xml中
1)本地运行模式(默认)

<configuration><property><name>mapreduce.framework.name</name><value>local</value></property>
</configuration>

2)运行在YARN上

<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>

四、Uber Mode
Uber Mode是针对于在Hadoop2.x中,对于MapReuduce Job小作业来说的一种优化方式(重用JVM的方式)。
小作业指的是MapReduce Job 运行处理的数据量,当数据量(大小)小于 HDFS 存储数据时block的大小(128M)。
默认是没有启动的。
mapred-site.xml中

<name>mapreduce.job.ubertask.enable</name>
<value>true</value>

这篇关于Win7下面安装hadoop2.x插件及Win7/Linux运行MapReduce程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/332610

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

在Linux终端中统计非二进制文件行数的实现方法

《在Linux终端中统计非二进制文件行数的实现方法》在Linux系统中,有时需要统计非二进制文件(如CSV、TXT文件)的行数,而不希望手动打开文件进行查看,例如,在处理大型日志文件、数据文件时,了解... 目录在linux终端中统计非二进制文件的行数技术背景实现步骤1. 使用wc命令2. 使用grep命令

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的