赞
踩
注意:本文内容基于 Hadoop 集群搭建完成基础上:
Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤
本文的内容是基于下面前提:
- Hadoop 集群搭建完成并能正常启动和访问
- Idea 和 Maven 分别安装完成
- 需要有 JavaSE 基础和熟悉操作hadoop 的 hdfs dfs 命令
- Maven 及 idea 中 Maven 相关配置
- 本地仓库
- 阿里镜像
- JDK 编译版本
- Java 操作 Hadoop
- 查询文件列表
- 上传文件及应用案例
- 读取文件内容
- 新建文件及内容追加
- 文件删除
- 文件下载
- 文件移动
配置文件目录:maven 安装目录/conf/settings.xml
- 本地仓库
- 阿里镜像
- JDK 编译版本
<localRepository>D:/Soft/apache-maven-3.6.3/repo</localRepository>
默认下载的地址是国外网址,速度比较慢或不稳定,可以配置切换为阿里的网址
settings.xml 中找到<mirrors>节点,在节点中配置子节点<mirror>
配置如下:
<mirrors> <!-- mirror | Specifies a repository mirror site to use instead of a given repository. The repository that | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used | for inheritance and direct lookup purposes, and must be unique across the set of mirrors. | <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> --> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> </mirrors>
在 settings.xml 中找到 <profiles> 节点,在中间增加子节点<profile>
增加的内容如下:
<profile>
<id>jdk11</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>11</jdk>
</activation>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.compilerVersion>11</maven.compiler.compilerVersion>
</properties>
</profile>
- 查询指定目录下文件列表 — ls
- 在 hadoop 上创建目录
- 上传本地(windows) 上传到 hadoop
- 下载 hdfs 上的文件到本地
- 写出内容到 hdfs 指定文件中
- 删除指定文件
- 使用 idea 新建 maven 项目
- 配置 pom.xml
在空工程下新建 module
配置 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>com.wdzl</groupId> <artifactId>hadoop04</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>3.2.0</version> </dependency> </dependencies> </project>
注意:配置 pom.xml 完成后,一定要注意点击右上角的刷新按钮
现在对文件的操作成功与否,可以通过浏览器访问页面来查看
用到的 Java 的 API :
- org.apache.hadoop.conf.Configuration
- org.apache.hadoop.fs.FileSystem
- org.apache.hadoop.fs.FileStatus
- org.apache.hadoop.fs.Path
package org.wdzl;
import org.apache.hadoop.conf.Configuration;
import
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。