|-----------------|----|-------------------|-----------------------|
| 实验名称 | 实战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集群可以有效地管理大规模数据,并提供可靠的分布式存储和处理服务。 ||||
大数据平台/大数据技术与原理-实验报告--实战HDFS
jakeonil2023-12-01 23:41
相关推荐
fanruitian7 小时前
uniapp android开发 测试板本与发行版本rayufo7 小时前
【工具】列出指定文件夹下所有的目录和文件RANCE_atttackkk7 小时前
[Java]实现使用邮箱找回密码的功能Python 老手8 小时前
Python while 循环 极简核心讲解2501_944525548 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面开源技术9 小时前
如何将本地LLM模型与Ollama和Python集成weixin_437044649 小时前
Netbox批量添加设备——堆叠设备我有医保我先冲9 小时前
AI 时代 “任务完成“ 与 “专业能力“ 的区分:理论基础、行业影响与个人发展策略李白你好9 小时前
Burp Suite插件用于自动检测Web应用程序中的未授权访问漏洞测试开发Kevin10 小时前
小tip:换行符CRLF 和 LF 的区别以及二者在实际项目中的影响