IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> HDFS API编程常用类和函数总结 -> 正文阅读

[大数据]HDFS API编程常用类和函数总结

一、两个重要的类

1. Configuration类

创建一个Configuration对象时,其构造方法会默认加载hadoop中的两个配置文件,分别是hdfs-site.xml以及core-site.xml,这两个文件中会有访问hdfs所需的参数值,指定了hdfs的地址,通过这个地址访问hdfs。

一个应用程序只创建一个Configuration。

2. FileSystem类

该抽象类类提供了丰富的方法用于对文件系统进行操作,比如创建目录、删除文件、重命名等。

二、常用函数

1. 判断路径是否存在

FileSystem.exists(Path path)
path: 路径

2. 向HDFS中上传文件

FileSystem.copyFromLocalFile(Path src, Path dst)
src: 本地文件路径
dst: HDFS文件系统中的目的路径

3. 从HDFS中下载文件

FileSystem.copyToLocalFile(Path src, Path dst)
src: HDFS中文件路径
dst: 本地文件系统中的目的路径

4. 删除HDFS中指定文件

FileSystem.delete(Path path, Boolen recursive)
path: 指定文件的路径
recursive: 是否递归删除,是则为true,否则为false

5. 创建HDFS中的文件

FileSystem.mkdirs(Path path)
path: 文件目录

6. 将文件从源路径移动到目的路径

FileSystem.rename(Path src, Path dst)
src: HDFS中源路径
dst: HDFS中目的路径

7.获取文件信息(大小、权限等)

首先需要创建一个数组存放该目录下所有文件的FileStatus对象。

FileStatus[] fileStatuses = hfs.listStatus(HDFSPath);
//hfs为自己创建的FileSystem对象
·fileStatuses[i].getLen(): 返回的值类型为long,文件大小。
·fileStatuses[i].getOwner(): 返回值类型为String,所有者信息。
·fileStatuses[i].getPath(): 返回值类型为Path,文件路径。
·fileStatuses[i].getPermission(): 返回值类型为FsPermission,文件权限。
·fileStatuses[i].getModificationTime(): 返回值类型为long,修改时间。

判断目录是否为空:

if(fileStatuses.length > 0){
	System.out.println("该目录不为空!");
}else{
	System.out.println("该目录为空");
}
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-25 12:36:07  更:2021-10-25 12:36:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:34:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码