HDFS客户端及API操作实验

实验二  HDFS客户端及API操作

实验目的:

1.掌握HDFS的客户端操作,包括上传文件、下载文件、重命名、查看目录等;

2.掌握HDFS的Java API使用,能够利用Java API实现上传、下载等常用操作;

实验内容:

  1. HDFS客户端的使用

已搭建好三节点HDFS的前提下,启动集群并在各自节点实现以下操作:

  1. 在HDFS中创建以自己姓名首字母命名的文件夹(以下以/zs为例)
  2. 将/etc/mandb.conf从本地拷贝至/zs
  3. 本地创建test.txt内容为hello hdfs,并从本地剪切到/zs
  4. 本地创建文件test1.txt,内容为hello Hadoop,并将test1.txt 追加到test.txt文件末尾
  5. 从HDFS下载test.txt文件到本地
  6. 查看/zs文件夹下有哪些文件
  7. 查看test1.txt的文件内容
  8. 将test1.txt文件拷贝至/input目录
  9. 删除/input /test1.txt文件
  10. 通过命令将/zs/test1.txt文件的副本数改为10
  11. 在DataNode节点找到HDFS数据的存储位置,并将文件/zs/test1.txt本地块删除,观察效果
  12. 导出fsimage与editslog文件,观察并解释文件内容

    将其复制到IDLExml文件中,可以清楚地看到

    可见Fsimage中并没有记录块对应的DataNode

    这是因为在集群启动之后,要求DataNode上报数据块信息,并且每隔一段时间再次上报





  1. 未完待续


    利用HDFS的Java API完成以下操作:

(1)在window中配置API环境(下载windows依赖、配置环境变量)并测试

(2)打开IDEA创建Maven工程HDFStest

(3)在pom.xml文件中添加相关依赖(hadoop-client、log4j、junit)

(4)配置log4j.properties文件

(5)创建HDFSClient类

(6)编写myMkdirs()函数,实现在HDFS端创建目录JAVA_姓名拼音首字母缩写,并用单元测试进行测试

(7)编写myUpload()函数,实现将本地文件上传至HDFS,并进行单元测试

(8)编写myDownload()函数,将test1.txt文件下载至本地,并进行单元测试

(9)编写myRename()函数,实现将test1.txt重命名为 mytest1.txt,并进行单元测试

(10)编写myRm()函数,实现将mytest1.txt删除,并进行单元测试

(11)编写myLs()函数,获取根目录(/)下所有文件的详细信息,包括权限、拥有者、所属组、文件大小、修改时间等。(若存在目录则,递归显示目录中的文件)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/196962.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

fastadmin权限树。树形下拉框

fastadmin 笔记 权限树 在构造方法中编写相应的代码 值得一提的是,你的表必须有 id 字段以及 pid 字段。 // 必须将结果集转换为数组$ruleList \think\Db::name("state_list")->field(createtime,updatetime, true)->order(id ASC)->select();…

FTP服务文件上传失败,错误码553的排故过程

本文主要记录文件上传失败,错误码553的排故过程。 1 背景 树莓派通过FTP给嵌入式板卡传输文件,好几套设备,发现有的能传输成功,有的传输不成功。树莓派和嵌入式板卡都一样的,出现问题时感觉很懵。 2 逐项对比 2.1 自…

AF自动登录应用--实现无源码系统单点登录

在企业信息化的进程中,许多组织拥有一系列的老应用系统,这些系统在多年的运行中积累了大量的业务数据和流程。然而,这些老应用系统往往没有设计或实现单点登录(SSO)功能,用户需要在不同系统之间频繁输入账号…

C语言--每日选择题--Day35

第一题 1. 有如下定义:(x y) % 2 (int) a / (int) b 的值是() int x 3; int y 2;float a 2.5; float b 3.5; A:0 B:2 C:1.5 D:1 答案及解析 D 本题是考查强制类型转换和操作符优先级 操作…

Figma安装指南:新手入门必看!

如果您想下载Figma客户端,可以直接在Figma官网Products>Downloads页面下载。 如果你不能访问Figma的官方网站,即使下载到客户端,你的网络环境也不能正常使用。 因为Figma的服务器在国外,在国内访问时经常会遇到网络不稳定的情…

SAP 生产订单状态控制

对于生产订单状态,我们经常会对状态进行控制,比如说已领料报工的生产订单就不允许做重读主数据 或者是部分入库不允许做TECO等等 可以通过一个标准的事物代码进行对生产订单状态的一个控制 Tcode:BS22 选择你需要你控制的订单的状态编号双击…

西南科技大学模拟电子技术实验六(BJT电压串联负反馈放大电路)预习报告

一、计算/设计过程 BJT电压串联负反馈放大电路图1-1-1-1为BJT电压串联负反馈放大实验电路,若需稳定输出电压,减小从信号源所取电流,可引入电压串联负反馈闭合开关。 图1-1-1-1 理论算法公式(1)闭环电压放大倍数 (2)反馈系数 (3)输入电阻 (4)输出电阻 计算过程。开环…

51综合程序03-DS1302时钟

文章目录 DS1302时钟芯片一、DS1302时钟芯片的工作原理1. 芯片特点2. 引脚说明3. 寄存器地址4. 读数据的时序图5. 写数据的时序图 二、综合实例LCD1602显示 DS1302时钟芯片 一、DS1302时钟芯片的工作原理 1. 芯片特点 实时计算年、月、日、时、分、秒、星期,直到2…

FacetWP Hierarchy Select网站内容层次结构选择插件

点击阅读FacetWP Hierarchy Select网站内容层次结构选择插件原文 FacetWP Hierarchy Select网站内容层次结构选择插件可让您基于分层分类法创建引导下拉菜单。 FacetWP Hierarchy Select网站内容层次结构选择插件功能 通过引导式下拉菜单过滤结果,一次一个深度级…

【从零开始学习Redis | 第六篇】爆改Setnx实现分布式锁

前言: 在Java后端业务中, 如果我们开启了均衡负载模式,也就是多台服务器处理前端的请求,就会产生一个问题:多台服务器就会有多个JVM,多个JVM就会导致服务器集群下的并发问题。我们在这里提出的解决思路是把…

卷积神经网络(CNN):艺术作品识别

文章目录 一、前言一、设置GPU二、导入数据1. 导入数据2. 检查数据3. 配置数据集4. 数据可视化 三、构建模型四、编译五、训练模型六、评估模型1. Accuracy与Loss图2. 混淆矩阵3. 各项指标评估 一、前言 我的环境: 语言环境:Python3.6.5编译器&#xf…

HarmonyOS开发员,月薪过万不是梦

最近爆出消息,安卓与鸿蒙将不再兼容!这意味着华为已经搭建了完整的鸿蒙生态,不再需要依赖于安卓生态。据统计,鸿蒙生态设备已经达到了7亿台,开发者人数也达到了220万人 此外,华为对鸿蒙系统的性能和体验有…

语音识别从入门到精通——1-基本原理解释

文章目录 语音识别算法1. 语音识别简介1.1 **语音识别**1.1.1 自动语音识别1.1.2 应用 1.2 语音识别流程1.2.1 预处理1.2.2 语音检测和断句1.2.3 音频场景分析1.2.4 识别引擎(**语音识别的模型**)1. 传统语音识别模型2. 端到端的语音识别模型基于Transformer的ASR模型基于CNN的…

unity学习笔记18

模型文件属性简介 1.动画类型:一共有四种:无 表示没有动画,旧版 就表示这个模型文件里面的动画片段可以用animation组件来播放的,最后两个 ”泛型“和“人形”都是animator组件来播放的。区别是泛型支持所有类型的动画播放&#x…

浅析Hotspot的经典7种垃圾收集器原理特点与组合搭配

# 浅析Hotspot的经典7种垃圾收集器原理特点与组合搭配 HotSpot共有7种垃圾收集器,3个新生代垃圾收集器,3个老年代垃圾收集器,以及G1,一共构成7种可供选择的垃圾收集器组合。 新生代与老年代垃圾收集器之间形成6种组合&#xff0c…

Tecplot绘制涡结构(Q准则)

文章目录 目的步骤1步骤2步骤3步骤4步骤5步骤6结果 目的 Tecplot绘制涡结构(Q准则判别)并用温度进行染色 Q准则计算公式 步骤1 步骤2 步骤3 步骤4 步骤5 步骤6 结果

鸿蒙4.0开发笔记之ArkTS装饰器语法基础之发布者订阅者模式@Provide和@Consume(十三)

1、定义 在鸿蒙系统的官方语言ArkTS中,有一套类似于发布者和订阅的模式,使用Provide、Consume两个装饰器来实现。 Provide、Consume:Provide/Consume装饰的变量用于跨组件层级(多层组件)同步状态变量,可以…

5.【自动驾驶与机器人中的SLAM技术】2D点云的scan matching算法 和 检测退化场景的思路

目录 1. 基于优化的点到点/线的配准2. 对似然场图像进行插值,提高匹配精度3. 对二维激光点云中会对SLAM功能产生退化场景的检测4. 在诸如扫地机器人等这样基于2D激光雷达导航的机器人,如何处理悬空/低矮物体5. 也欢迎大家来我的读书号--过千帆&#xff0…

Android wifi 框架以及Enable流程

Android P相比于Android O的变化 多了WifiStateMachinePrime(状态机的前处理机制),wifiService的相关cmd 不再是直接send 给WifiStateMachine,而是被送到WifiStateMachinePrime先进行处理后,再送往WifiStateMachine也…

Java微信支付对帐,微信账单下载并读取到实体Bean,并保存至数据库

最近公司的项目需要微信对帐功能&#xff0c;这里展示了简单的微信账单下载并读取到数据库方法&#xff0c;有问题或者更好的想法的可以在评论区交流哟。 一、依赖 <!-- 微信支付 --> <dependency><groupId>com.github.wechatpay-apiv3</groupId><…