大数据 | Java 操作 HDFS 常用 API

Java API 操作HDFS文件 使用JavaAPI操作hdfs 文件的常用操作代码 阅读详情

目录

一、回顾常用的命令

二、引入依赖

三、文件列表

四、创建目录

五、文件的创建

六、文件内容的输出

七、删除文件

八、读取文件/目录的元数据

九、上传本地文件到 HDFS

十、下载 HDFS 文件到本地

十一、总结


图片

         上篇文章介绍了关于 HDFS 的常用命令,其常用的命令都有相应的 API,用命令可以完成的功能,使用 Java API 也可以完成。本文介绍关于 HDFS 常用的 Java API。

一、回顾常用的命令

        在上篇文章中整理了 HDFS 常用的命令,这里进行简单的回顾。

        ls 命令用来查看 HDFS 系统中的目录和文件,命令如下: 

$ hadoop fs -ls /

        put 命令用来将本地文件上传到 HDFS 系统中,命令如下:

$ hadoop fs -put test.txt /

        moveFromLocal 命令将本地文件移动到 HDFS 文件系统中,并将本地的文件进行删除,命令如下:

$ hadoop fs -moveFromLocal abc.txt /

        get 命令用来将 HDFS 文件系统中的文件下载到本地,命令如下:

$ hadoop fs -get /abc.txt /home/hadoop/

        rm 命令用来删除 HDFS 系统中的文件或文件夹,命令如下

$ hadoop fs -rm /test.txt

        mkdir 命令用来在 HDFS 系统中创建目录,命令如下:

$ hadoop fs -mkdir /test

        cp 命令在 HDFS 系统中用于文件的复制,命令如下:

$ hadoop fs -ls /

        mv 命令在 HDFS 系统中用于完成文件移动的功能,也可以用来进行文件的重命名功能,命令如下:

$ hadoop fs -mv /abc/abc.txt /test/
$ hadoop fs -mv /test/abc.txt /test/abcabc.txt

        cat 命令在 HDFS 文件系统中用于输出某个文件的内容,命令如下:

$ hadoop fs -cat /test/abcabc.txt

        appendToFile 命令将单个或多个文件的内容从本地系统中追加到 HDFS 系统的文件中,命令如下:

$ hadoop fs -appendToFile abc.txt /abc.txt

        上面的内容简单的对 HDFS 文件系统的常用命令进行了回顾,接下来,我们来整理一下关于 HDFS 常用的 Java API。

二、引入依赖

        使用 HDFS 的 Java API 可以操作 HDFS 文件系统中的文件,比如文件的新建、删除、读取等。创建一个 Maven 的项目,然后引入其依赖,准备工作就算是完成了,依赖如下:

<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client</artifactId>
    <version>2.8.2</version>
</dependency>

        引入该依赖后,在 HDFS 的 Java API 中使用 FileSystem 工具类,它可以完成我们的操作,下面我们来进行了解。

三、文件列表

       代码非常的简单,因此这里直接上代码,代码如下:

public static void main(String[] args) throws IOException {
    Configuration conf = new Configuration();
    // 设置 HDFS
【大数据实验】熟悉常用的 HDFS 操作 《数据存储技术》实验 2熟悉常用的 HDFS 操作) 一、实验目的 理解 HDFS 在 Hadoop 体系结构中的角色; 熟练使用 HDFS 操作常用的 Shell 命令; 熟悉 HDFS 操作常用的 Java API。 二、实验平台 操作系统:Ubuntu 16.04 Hadoop 版本:3.1.3 JDK 版本:1.8 Java IDE:Eclipse 三、实验内容和要求 (1) 向 HD... 阅读详情

相关推荐

Hadoop之HDFS的原理和常用命令及API(java)

Hadoop之HDFS的原理和常用命令及API(java)

zwl2220943286的博客 2953

【大数据原理】实验二:熟悉常用的 HDFS 操作

熟悉常用的 HDFS 操作:简单的 Shell命令,用 Java编程实现还是有一定的难度,不过还是有规律可循,方法和命令大致相同。遇到的问题就是,对 API 不够熟悉,需要经常查询。

everyone_dream的博客 1126

大数据1.9使用Java API操作HDFS

使用Java API操作HDFS

weixin_64895348的博客 1456

大数据(Bigdata)常用技术栈

提起大数据,不得不提由IBM提出的关于大数据的5V特点:Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性),而对于大数据领域的从业人员的日常工作也与这5V密切相关。大数据技术在过去的几十年中取得非常迅速的发展,尤以Hadoop和Spark最为突出,已构建起庞大的技术生态体系圈 首先通过一张图来了解一下目前大数据领域常用的一些技术,当然大数据发展至今所涉及技术远不止这些。 BigData Stack: 下面分不同层介绍各个技术,当然各个

weixin_45417821的博客 6340

大数据应用技术实验报告二 HDFS命令和Java API

Linux的shell命令 常用的linux的shell命令: cd /aa 转到/aa目录 pws 显示当前目录 ll /aa 显示/aa目录 mkdir /aa 新建/aa目录 rm /aa/out.txt 删除/aa目录下的out.txt文件 cat /aa/out.txt 查看/aa目录下的out.txt文件的...

Ruthless_Childe的博客 2235

头歌Educoder云计算与大数据——实验五 Java API分布式存储

实验五 Java API分布式存储1. 利用shell把电商数据上传到HDFS任务描述相关知识HDFS shell常见命令编程要求测试说明代码实现第2关:利用Java API把电商数据上传到HDFS任务描述相关知识常用 HDFS Java接口的使用编程要求测试说明代码实现 1. 利用shell把电商数据上传到HDFS 任务描述 原始电商数据都是存储在关系型数据库或 NoSQL 数据库上的,是面向OLTP(联机事务处理过程)的;数据都是面向业务的,而不是面向分析。因此数据比较复杂,表很多关联的数据是分散的,不

36.6°博客 6555

【大数据入门核心技术-Hadoop】(十三)Hadoop JavaAPI 操作

作者测试hadoop环境为3.2.1,所以本依赖也是用3.2.1版本。 3.2.1 6.14.3 org.apache.hadoop

548

HDFS 文件系统操作大全:从命令行到 API 调用

在大数据时代,当我们需要存储TB级甚至PB级数据时,普通的本地文件系统(如Windows的NTFS、Linux的Ext4)早已力不从心——它们无法应对"海量数据"和"高可靠性"的需求。HDFS(Hadoop Distributed File System)应运而生,它是Hadoop生态的核心存储组件,专门解决"大数据存储"问题。本文的目的是:让你从0到1掌握HDFS的操作方法,包括命令行工具(日常管理)和Java API(程序自动化)。范围HDFS核心概念解析(为什么它能存海量数据?

软件工程实践的博客 1065

大数据Hadoop(十二):HDFS的API操作

目录 HDFS的API操作 HDFS的JAVA API操作 配置Windows下Hadoop环境 导入Maven依赖 使用文件系统方式访问数据 1、涉及的主要类 2、获取FileSystem方式 3、遍历HDFS中所有文件 4、HDFS上创建文件夹 ​​​​​​​5、下载文件-方式1​​​​​​​​​​​​​​ ​​​​​​​6、下载文件-方式2 ​​​​​​​7、上传文件 8、小文件合并 ​​​​​​​9、hdfs访问权限控制 HDFS的API操作 HDFS的JA...

Lansonli(蓝深李)的博客 3697

大数据讲课笔记4.4 使用Java API操作HDFS

1. 了解HDFS Java API; 2. 掌握使用Java API操作HDFS

howard2005的专栏 3739

【大数据实验二】熟悉常用的HDFS操作

1实验目的 1. 理解HDFS在Hadoop体系结构中的角色; 2. 熟练使用HDFS操作常用的Shell命令; 3. 熟悉HDFS操作常用的Java API。 2. 实验平台 操作系统:Linux Hadoop版本:2.7.3 JDK版本:1.8 Java IDE:IDEA 3. 实验内容和要求 1.编程实现以下指定功能,并利用Hadoop提供的Shell命令完成相同任务: (1)向HDFS中上传任意文本文件,如果指定的文件在HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件;

m0_51011320的博客 1038

大数据笔记(五):HDFS权限和Java的api使用

HDFS是一个文件系统 类似unix、linux有用户概念 HDFS有相关命令和接口去创建用户 有超级用户的概念 linux系统中超级用户:root hdfs系统中超级用户: 是namenode进程的启动用户 有权限概念 hdfs的权限是自己控制的来自于hdfs的超级用户

Lansonli(蓝深李)的博客 1989

利用GPAC生成MP4文件

GPAC主要针对学生和内容创作者,代表了一个跨平台的多媒体框架,开发人员可以使用它在 LGPL 许可下制作开源媒体。GPAC多媒体框架兼容范围广泛的流行文件类型,从常见格式(如 AVI、MPEG 和 MOV)到复杂格式(如 MPEG-4 系统或 VRML/X3D)和 360 电影。

深之JohnChen的专栏 1771

MS1861宏晶微视频显示与控制器芯片:开发资料全解析与应用指南

本文全面解析了宏晶微MS1861视频显示与控制器芯片的核心功能与开发流程。该芯片作为高性能的“视频信号翻译官”,支持HDMI、LVDS等多种输入与MIPI、LVDS等输出,集成强大的图像处理与OSD叠加功能。文章详细介绍了从资料获取、环境搭建到以HDMI转MIPI为例的实战配置与调试技巧,为工业HMI、广告机等应用的开发者提供了完整的应用指南。

weixin_29198045的博客 337

​​EMC设计实战:BCI(大电流注入)硬件设计规范

LIN接口:集成TVS管(如PESD5V0S1BL)与共模电感,耐压等级≥20V(8kV HBM)。输入滤波:10μF电解电容(100kHz截止)+ 0.1μF陶瓷电容(10MHz截止)。​:全频段(1MHz-400MHz)注入200mA电流,LIN通信误码率<0.01%。对敏感电路(如传感器)采用隔离电源(如ADuM5000),隔离电压≥3kVrms。​:连续波(CW)与调幅波(AM,调制深度80%)组合,覆盖全频段干扰场景。​:选择低频段(1-100MHz)感量≥100μH的绕线电感,抑制共模电流。

m0_50833886的博客 1933

Ubuntu Server 22.04.5系统安装教程

该教程主要是演示在服务器上安装Ubuntu server 22.04系统的详细步骤,主要包含,安装系统前的准备(镜像的下载,启动盘的制作),安装系统时的语言选择,网络设置,切换镜像源(可根据实际需求来配置,本文使用清华镜像源),手动分区,用户设置,ssh服务安装等。以上就是关于Ubuntu Server 22.04系统安装的详细过程。

逆水行舟,不进则退。 7761

【船舶】风浪流模型水面船舶三自由度运动仿真【含Matlab源码 4379期】

风浪流模型水面船舶三自由度运动仿真 完整的代码,包运行;运行操作视频见优快云资源!适合小白!

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 693

嵌入式u-boot最全面试题及参考答案(5万字长文持续更新)

例如,在一个便携式设备中,U-Boot 在启动时初始化电源控制器,将输出电压设置为合适的值。命令是u-boot构建过程中用于配置u-boot选项的命令。在嵌入式系统中,启动画面(也称为启动Logo或Splash Screen)是展示给用户的第一印象,它可以包含公司的标志、产品的名称或其他相关信息。u-boot允许通过环境变量来进行配置,这使得开发者可以根据不同的硬件平台和项目需求灵活地调整u-boot的行为。写入操作可以是字节级别的,也可以是块级别的,具体取决于设备的性能和操作系统的需求。

大模型大数据攻城狮的专栏 997

彻底解决Win11锁屏界面黑屏或者图片不变化

windows锁屏后黑屏

renkai721的专栏 1万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: 多线程 | Thread 和 Runnable 执行流程的差异
下一篇: 面试题 | 一道有趣的 Java 基础题
码农UP2U
博客等级 码龄14年 6276粉丝 181原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农UP2U

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值