大数据平台/大数据技术与原理-实验报告--实战HDFS

|-----------------|----|-------------------|-----------------------|
| 实验名称 | 实战HDFS |||
| 实验性质 (必修、选修) | 必修 | 实验类型(验证、设计、创新、综合) | 综合 |
| 实验课时 | 2 | 实验日期 | 2023.10.23-2023.10.27 |
| 实验仪器设备以及实验软硬件要求 | 专业实验室(配有centos7.5系统的linux虚拟机三台) |||
| 实验目的 | 1. 理解HDFS体系架构。 2. 理解HDFS文件存储原理和数据读写过程。 3. 熟练掌握HDFS Web UI界面的使用。 4. 熟练掌握HDFS Shell常用命令的使用。 5. 熟练掌握HDFS项目开发环境的搭建。 6. 掌握使用HDFS Java API编写HDFS文件操作程序。 |||
| 实验内容(实验原理、运用的理论知识、算法、程序、步骤和方法) 1.启动全分布模式Hadoop集群,守护进程包括NameNode、DataNode、SecondaryNameNode、ResourceManager、NodeManager和JobHistoryServer。 此时使用jps查看各个节点端口的启用情况: 主节点: 从节点: 2.查看HDFS Web界面。 3.练习HDFS Shell文件系统命令和系统管理命令。 查看文件目录: hdfs dfs -ls <路径> 上传文件: hdfs dfs -put <localsrc> <dst> 这个命令可以将本地文件上传到HDFS1。 下载文件: hdfs dfs -get <src> <localdst> 这个命令可以将HDFS的文件下载到本地1。 创建目录: hdfs dfs -mkdir <路径> 这个命令可以在HDFS中创建新的目录1。 删除文件: hdfs dfs -rm <路径> 这个命令可以删除HDFS中的文件1。 查看安全模式状态: hdfs dfsadmin -safemode get 这个命令可以查看HDFS的安全模式状态 以上就是一些基本的HDFS Shell命令,你可以通过这些命令来操作HDFS文件系统。 4.在Hadoop集群主节点上搭建HDFS开发环境Eclipse。 5.使用HDFS Java API编写HDFS文件操作程序,实现上传本地文件到HDFS的功能,采用本地执行和集群执行的两种执行方式测试,观察结果。 6.使用HDFS Java API编写HDFS文件操作程序,实现查看上传文件在HDFS集群中位置的功能,采用本地执行和集群执行的两种执行方式测试,观察结果。 单击Eclipse工具栏中的Run按钮,直接运行UploadFile,执行结果如图2-32所示。从图2-32中可以看出,在/root/eclipse-workspace/HDFSExample目录下增加一个"file1.txt"文件,本地文件系统发生的变化如图2-33所示,file1.txt没有上传到HDFS上,使用命令"hadoop fs -ls /"查看不到file1.txt。 此时进行传送到hadoop的集群上进行处理: 此时登录webUI界面: 此时可以看到的是file1.txt文件已经上传上去了 7. 关闭全分布模式Hadoop集群。 关闭全分布模式Hadoop集群的命令与启动命令次序相反,只需在主节点master上依次执行以下3条命令即可关闭Hadoop。 mr-jobhistory-daemon.sh stop historyserver stop-yarn.sh stop-dfs.sh 执行mr-jobhistory-daemon.sh stop historyserver时,其*historyserver.pid文件消失;执行stop-yarn.sh时,*resourcemanager.pid和*nodemanager.pid文件依次消失;stop-dfs.sh,*namenode.pid、*datanode.pid、*secondarynamenode.pid文件依次消失。 ||||
| 实验结果与分析 通过本次实验,我们深入理解了HDFS的体系架构、文件存储原理以及数据读写过程。通过练习HDFS Shell命令,掌握了基本的文件系统和系统管理操作。同时,在搭建HDFS开发环境和使用Java API编写HDFS文件操作程序的过程中,提高了对HDFS项目开发的实际应用能力。实验结果表明,在正确配置和操作的情况下,Hadoop集群可以有效地管理大规模数据,并提供可靠的分布式存储和处理服务。 ||||

相关推荐
Bigger15 小时前
Tauri (26)——托盘图标总对不上系统主题?一行 Template Image 搞定
前端·rust·app
kyriewen17 小时前
面试官问你:“AI 能写 80% 的代码了,公司为什么还需要你?”
前端·javascript·面试
甲维斯18 小时前
又升级咯!坦克大战2026,科技与复古并存!
前端·人工智能·游戏开发
搬砖的码农20 小时前
(08)为什么我的 Agent 一跑后台服务就卡死
前端·agent·ai编程
飘尘20 小时前
前端转全栈(Java 后端)必须要知道的:开发中的锁机制与分布式并发控制
前端·后端·全栈
亲亲小宝宝鸭21 小时前
前端性能监控:web-vitals
前端·性能优化·监控
用户83562907805121 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
陆枫Larry21 小时前
可滚动页面背景填不满:`height: 100vh` vs `min-height: 100vh`
前端
Patrick_Wilson21 小时前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员