大数据平台/大数据技术与原理-实验报告--实战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集群可以有效地管理大规模数据,并提供可靠的分布式存储和处理服务。 ||||

相关推荐
传奇开心果编程3 分钟前
【传奇开心果系列】Flet框架实现的家庭记账本示例自定义模板
python·学习·ui·前端框架·自动化
Yusei_052310 分钟前
迅速掌握Git通用指令
大数据·git·elasticsearch
王者鳜錸1 小时前
PYTHON让繁琐的工作自动化-PYTHON基础
python·microsoft·自动化
key_Go1 小时前
7.Ansible自动化之-实施任务控制
python·ansible·numpy
阿珊和她的猫4 小时前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
一只栖枝6 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
加班是不可能的,除非双倍日工资8 小时前
css预编译器实现星空背景图
前端·css·vue3
wyiyiyi9 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8249 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员9 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机