本文将演示通过JavaAPI在Hadoop集群上使用Mapreduce进行词频统计的简易过程:
- 创建Maven项目并本地编写Java代码
- 将要处理的数据上传至Hadoop系统
- 将Maven项目打包成jar包并上传至服务器运行
系统:Win10,CentOS 7.6
软件:Maven 3.8.4,Hadoop 2.7.3,Xshell,Xftp
1.创建Maven项目并本地编写Java代码
初始化Maven项目
首先创建一个新的Maven项目,此时文件结构应该类似于:
此时将pom.xml
文件的内容全部替换成如下:
<?xml version="1.0" encoding="UTF-8"?>
<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.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>hdfs_upload</artifactId>
<version>1.0-SNAPSHOT</version>
<name>hdfs_upload</name>
<!-- FIXME change it to the project's website -->
<url>http:///maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<!-- hadoop基础库 -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>3.1.3</version>
</dependency>
<!-- hadoop客户端 -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client