大数据学习之路,MapReduce的实例(Wordcount)代码实现和windows环境准备
时间:2022-09-08 14:00:00
安装代码编译器
这里推荐使用IDEA,百度网盘下载链接具体解释及安装包:https://pan.baidu.com/s/1oQkc4bwTCwx3XKxu9GfB0w
提取码:i3ke
MAVEN环境安装
这里推荐使用MAVEN3.6.3.高版本可能会出现一些安全问题,如只能使用https百度网盘链接具体安装包:https://pan.baidu.com/s/10NbGLU308S6_sbzA3LmWwg
提取码:ji7u
下载完成后,解压setting.xml文件中添加一些配置,将本地仓库设置一下:
D:\mvn\apache-maven-3.6.3\repository</localRepository>
将阿里云镜像添加到配置中:
nexus-aliyun</id> central</mirrorOf> nexus-aliyun</name> http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
然后配置环境变量MAVEN_HOME,右键 选择计算机 然后点击属性 点击高级系统设置"环境变量",需要配置以下系统变量来设置环境变量:
新系统变量 MAVEN_HOME,变量值:D:\Maven\apache-maven-3.6.3;
然后编辑系统变量 Path,添加变量值:%MAVEN_HOME%\bin
Windows需要本地配置Hadoop,mac不需要
1.重新解压一份Hadoop-3.1.3安装包,然后把包放在里面bin和etc目录copy到自己新建windows的Hadoop文件夹下;
2.修改etc/hadoop中的hadoop-env.cmd,JAVA_HOME需要修改为绝对路径;
1.如果本地JAVA_HOME:在C:\Program Files…,需要改为set JAVA_HOME=C:\PROGRA~1\JAVA\jdk1.8.0_131
2.在网上找对应的hadoop.dll和winutils.exe放在hadoop的bin目录下
3.配置环境变量HADOOP_HOME,还有PATH,此时检查,登录cmd输入命令:
hadoop version
4.如果你还会报错,把它拿走hadoop.dll放在C:\Windows\System32中
打开IDEA,开始MR编程
新建一个maven项目将在设置中进行maven将路径改为本地路径maven
然后编辑pom.xml下载所需文件hadoop包
<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.0modelVersion> <groupId>org.examplespan class="token punctuation">groupId>
<artifactId>MapReduceartifactId>
<version>1.0version>
<properties>
<maven.compiler.source>8maven.compiler.source>
<maven.compiler.target>8maven.compiler.target>
<hadoop.version>3.1.3hadoop.version>
properties>
<dependencies>
<dependency>
<groupId>org.apache.hadoopgroupId>
<artifactId>hadoop-commonartifactId>
<version>3.1.3version>
dependency>
<dependency>
<groupId>org.apache.hadoopgroupId>
<artifactId>hadoop-clientartifactId>
<version>3.1.3version>
dependency>
<dependency>
<groupId>org.apache.hadoopgroupId>
<artifactId>hadoop-hdfsartifactId>
<version>3.1.3version>
dependency>
dependencies>
project>
MR编程的核心要素
Mapper ==>org.apache.hadoop.mapreduce.Mapper
run
set up
循环调用map
cleanup
Reducer ==>org.apache.hadoop.mapreduce.Reducer
run
set up
循环调用reduce
cleanup
Driver ==>连接Mapper和Reducer,提交成为job