了解hdfs java api
hadoop文件系统api文档:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/filesystem/index.html
1、hdfs常见类与接口
- hadoop整合了众多文件系统,hdfs只是这个文件系统的一个实例。
类或接口 | 功能描述 |
---|---|
org.apache.hadoop.fs.filesystem | 一个通用文件系统的抽象基类,可被分布式文件系统继承。 |
org.apache.hadoop.fs.filestatus | 文件状态接口,用于向客户端展示系统中文件和目录的元数据。具体包括文件大小、块大小、副本信息、所有者、修改时间等,可通过filesystem.liststatus()方法获得具体的实例对象。 |
org.apache.hadoop.fs.filedatainputstream | 文件输入流,用于读取hadoop文件。 |
org.apache.hadoop.fs.filedataoutputstream | 文件输出流,用于写hadoop文件。 |
org.apache.hadoop.fs.configuration | 访问配置项,所有配置项的值,如果在core-site.xml中有对应的配置,则以core-site.xml为准。 |
org.apache.hadoop.fs.path | 路径,用于表示hadoop文件系统中的一个文件或一个目录的路径。 |
org.apache.hadoop.fs.pathfilter | 路径过滤器接口,通过实现方法pathfilter.accept(path path)来判断是否接收路径path表示的文件或目录。 |
2、filesystem的常用方法
-
filesystem类api文档:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/filesystem/filesystem.html
-
filesystem对象的一些方法可以对文件进行操作
方法名 | 功能描述 |
---|---|
copyfromlocalfile(path src, path dst) | 从本地磁盘复制文件到hdfs |
copytolocalfile(path src, path dst) | 从hdfs复制文件到本地磁盘 |
mkdirs(path f) | 建立子目录 |
rename(path src, path dst) | 重命名文件或文件夹 |
delete(path f) | 删除指定文件 |
(二)编写java程序访问hdfs
1、创建maven项目
单击【finish】按钮
2、添加相关依赖
- 在
pom.xml
文件里添加hadoop
和junit
依赖
<dependencies>
<!--hadoop客户端-->
<dependency>
<groupid>org.apache.hadoop</groupid>
<artifactid>hadoop-client</artifactid>
<version>3.3.4</version>
</dependency>
<!--单元测试框架-->
<dependency>
<groupid>junit</groupid>
<artifactid>junit</artifactid>
<version>4.13.2</version>
</dependency>
</dependencies>
maven repository(maven仓库)- https://mvnrepository.com/ 搜索hadoop
发表评论