科学技术学院

SCIENCE & TECHNOLOGY COLLEGE OF

NANCHANG UNIVERSITY

 《工 练》报

   REPORT ON ENGINEERING TRAINING

题   目大数据hadoop开发工程实训

学科部、系: 信息学科部计算机系

专业班级:计算机172

学   号:7020817074

学生姓名: 温鑫

指导教师: 邓伦丹 熊婷 刘伟华

起讫日期:20191216日——20

大数据hadoop开发工程实训报告

实验名称:

大数据hadoop开发工程实训

实验目的:

本次工程训练通过Linux、HDFS环境配置的学习,掌握Java程序控制HDFS增删改查的基本设计方法;综合应用Linux命令行、hadoop开源软件、JAVA应用程序的开发训练。

实验需要的设备、工作环境:

一台目前实验室使用的计算机,要安装以下软件:

(1) 中文版Windows XP或以上系统;

(2) JDK 1.6 或以上版本;

(3) 任一Java编程工具,如Eclipse  idea等;

(4) 虚拟机VMware Workstation 9以上,配置有系统CentOS。

实验内容:

  1. 使用Linux命令行实现对CentOS的操作。
  2. 实现 HDFS 客户端的操作。

实验步骤和操作(源程序):    

(1)初始化连接代码:

/*
 *
初始化 hadoop hdfs 配置信息
 * */
@Before
public void init() {
    try {
        URI uri = new URI("hdfs:192.168.75.129:9000");
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", "hdfs://192.168.75.129:9000");
        conf.set("dfs.replication", "1");
        fs = FileSystem.get(uri, conf, "root");
    } catch (Exception e) {
        e.printStackTrace();
    }
}

(2)在HDFS分布式集群创建目录的代码:

/** 创建一个文件夹到 hdfs:192.168.75.129:9000* */@Testpublic void mkdir() {try {Path path = new Path("/IDEAtest/");fs.mkdirs(path);System.out.println("创建成功");} catch (Exception e) {e.printStackTrace();System.out.println("创建失败");}}

(3)本地上传文件到HDFS目录的代码:

/**上传文件到 hdfs:192.168.75.129:9000*/@Testpublic void upload() {try {Path src = new Path("G:\\hadoop\\happy.txt");Path dst = new Path("/test/hapyy.rar");fs.copyFromLocalFile(src, dst);System.out.println("上传成功");} catch (IOException e) {e.printStackTrace();System.out.println("上传失败");}}

(4)从分布式系统下载文件到本地的代码:

/**从 hdfs:192.168.137.128:9000 hadoop分布式文件系统
*   下载文件到本地
* */@Testpublic void down() {try {Path src = new Path("/eclipse/shenxian.txt");Path dst = new Path("C:\\Users\\温鑫\\Desktop\\day1220.rar");fs.copyToLocalFile(false, src, dst, true);System.out.println("下载成功");} catch (IOException e) {e.printStackTrace();System.out.println("下载失败");}}

(5)删除分布式系统指定目录的代码:

/** hdfs:192.168.75.129:9000 hadoop分布式文件系统
* 执行删除文件或者文件夹
* */@Testpublic void delet() {try {Path src = new Path("/joker/");fs.delete(src, true);System.out.println("删除成功");} catch (IOException e) {e.printStackTrace();System.out.println("删除失败");}}

(6)遍历HDFS分布式集群指定路径下所有目录的代码:

/*hdfs:192.168.75.129:9000 hadoop分布式文件系统
* 遍历 文件 或者文件夹
* */@Testpublic void list() {try {Path src = new Path("/IDEA/hadoop");RemoteIterator<LocatedFileStatus> list =fs.listLocatedStatus(src);System.out.println("该路径下所有目录及文件遍历如下:");while (list.hasNext()) {LocatedFileStatus lf = list.next();System.out.println(lf.getPath().getName());}} catch (Exception e) {System.out.println("操作失败");e.printStackTrace();}}

实验结果(运行截图):

(1)命令行启动所有集群结点运行截图:

(2)主机访问虚拟机50070端口运行截图:

(4)初始化界面运行截图:

(4)在HDFS上创建目录运行截图:

(5)上传文件到HDFS指定路径运行截图:

(5)从HDFS下载指定路径文件到主机运行截图:

(5)删除HDFS指定路径目录运行截图:

(6)遍历HDFS指定路径下目录及文件运行截图:

附录:HdfsUtils类完整源代码

package com.demo;import java.io.IOException;import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.LocatedFileStatus;import org.apache.hadoop.fs.Path;import org.apache.hadoop.fs.RemoteIterator;import org.junit.Before;import org.junit.Test;public class HdfsUtils {/*Java 操作 hadoop 文件系统
*  FileSystem  客户端类
* */FileSystem fs = null;/** 初始化 hadoop hdfs 配置信息
* */@Beforepublic void init() {try {URI uri = new URI("hdfs:192.168.75.129:9000");Configuration conf = new Configuration();conf.set("fs.defaultFS", "hdfs://192.168.75.129:9000");conf.set("dfs.replication", "1");fs = FileSystem.get(uri, conf, "root");} catch (Exception e) {e.printStackTrace();}}/** 创建一个文件夹到 hdfs:192.168.75.129:9000* */@Testpublic void mkdir() {try {Path path = new Path("/IDEAtest/");fs.mkdirs(path);System.out.println("创建成功");} catch (Exception e) {e.printStackTrace();System.out.println("创建失败");}}/**上传文件到 hdfs:192.168.75.129:9000*/@Testpublic void upload() {try {Path src = new Path("G:\\hadoop\\happy.txt");Path dst = new Path("/test/hapyy.rar");fs.copyFromLocalFile(src, dst);System.out.println("上传成功");} catch (IOException e) {e.printStackTrace();System.out.println("上传失败");}}/**从 hdfs:192.168.137.128:9000 hadoop分布式文件系统
*   下载文件到本地
* */@Testpublic void down() {try {Path src = new Path("/eclipse/shenxian.txt");Path dst = new Path("C:\\Users\\温鑫\\Desktop\\day1220.rar");fs.copyToLocalFile(false, src, dst, true);System.out.println("下载成功");} catch (IOException e) {e.printStackTrace();System.out.println("下载失败");}}/** hdfs:192.168.75.129:9000 hadoop分布式文件系统
* 执行删除文件或者文件夹
* */@Testpublic void delet() {try {Path src = new Path("/joker/");fs.delete(src, true);System.out.println("删除成功");} catch (IOException e) {e.printStackTrace();System.out.println("删除失败");}}/*hdfs:192.168.75.129:9000 hadoop分布式文件系统
* 遍历 文件 或者文件夹
* */@Testpublic void list() {try {Path src = new Path("/IDEA/hadoop");RemoteIterator<LocatedFileStatus> list =fs.listLocatedStatus(src);System.out.println("该路径下所有目录及文件遍历如下:");while (list.hasNext()) {LocatedFileStatus lf = list.next();System.out.println(lf.getPath().getName());}} catch (Exception e) {System.out.println("操作失败");e.printStackTrace();}}}

实验总结与建议(必须手写,200字以上):     

工程训练成绩评定表

专业: 计算机科学与技术 班级: 计算机172 学号: 7020817074 姓名: 温鑫

指导教师评语

建议成绩:                        指导教师:

年     月     日

教研组评定意见

评定成绩:                        负责人:

年     月     日

南大科院大数据Hadoop工程实训相关推荐

  1. 【南大科院】高级网络服务工程训练

    密级: 科学技术学院 NANCHANG UNIVERSITY COLLEGE OF SCIENCE AND TECHNOLOGY 计算机系工程训练报告 <高级网络服务工程训练> (2019 ...

  2. 在线大数据 / AI竞赛实训平台深度技术解析 | 文末抽奖

     点击"蓝字"关注我们 文末抽奖!留言区留下你的学习心得或疑问,点赞数前3名的粉丝,炫酷奖品等你拿! 12月24日晚,智领云第五次社群图文技术直播如约而至.本次直播由智领云云平台部 ...

  3. 大数据项目开发实训报告

                                                大数据项目开发实训 一.总体设计               爬取招聘网站前程无忧:               ...

  4. 【光电工程实训】几何光学 小孔成像 光的反射 光的折射 透镜成像

    实验报告一 实验名称:几何光学实验 课程名称:光电工程实训 一.实验题目和实验目的总览 1.实验题目: (1)小孔成像实验 (2)光的反射实验 (3)光的折射实验 (4)透镜成像实验 2.实验目的: ...

  5. 【光电工程实训】红外测温枪 红外辐射原理 测量影响因素探究标定

    实验报告 实验名称:红外测温枪实验 课程名称:光电工程实训 实验一 红外测温枪装调实践训练 一. 实验目的 1.学习红外测温的原理,了解红外光谱 2. 熟悉了解红外测温枪的组成以及工作原理,能对其进行 ...

  6. 【光电工程实训】物理光学 干涉及衍射实验 偏振现象 波的衍射理论 光的偏振 方晶石

    实验报告二 实验名称:物理光学实验 课程名称:光电工程实训 一.实验题目和实验目的总览 实验题目: 1)干涉及衍射实验现象观察实验 2偏振现象观察实验(偏振与双折射) 实验目的: 1观察单缝衍射现象, ...

  7. 物联网工程实训——智慧家居开发

    物联网工程实训 目标:用嵌入式开发板采集信息,用WiFi传输到云平台. 开发手机App或者微信小程序,实现云平台数据和信息的读取.可以开发Web页面,对采集的数据进行显示. 本组目标:设计并制造一个物 ...

  8. 【光电工程实训】光通信与光纤通信 电子元器件认知 万用表测量参数 元件特性 激光传声实验 自由空间光通讯 光纤光通信 全反射

    实验报告 实验名称:光通信与光纤通信实验 课程名称:光电工程实训 一. 实验题目和实验目的总览 实验题目: (1)实验一:电子元器件认知及万用表测量 (2)实验二:激光传声实验(自由空间光通讯) (3 ...

  9. 青软集团大数据和人工智能实训室 助力西北工业大学高端软件人才培养

    新时代背景下,高校在人才培养的过程中,需要搭建理论与实践并进的桥梁.与产业接轨的渠道.作为国家「一流大学」建设高校,西北工业大学也在积极寻找创新方法.创新模式,力在选拔.培养一批有志于服务国家重大战略 ...

最新文章

  1. oracle主从关系表查询,Oracle 主从表联合查询解决方法
  2. App 组件化/模块化之路——如何封装网络请求框架
  3. linux删除目录所有内容,如何从Linux上的目录中删除所有内容
  4. 结构型模式之Proxy模式
  5. knockout的使用
  6. 【java】动态绑定机制
  7. 基本图形怎么改字体_PPT做得慢怎么办?掌握这6个技巧,你也能快速做出精美的PPT...
  8. 数据安全_个人信息查询
  9. CompTIA IT Fundamentals认证考试的相关信息【2018.06.05更新】
  10. 程序员如何帮助公司快速上市、获得分红?
  11. HiTool烧写Hi3536操作记录
  12. python爬取新浪博客_python爬取韩寒博客的实例
  13. Web全栈~27.文件和目录的操作
  14. Mesos+Marathon搭建部署
  15. Linux is内存管理,【原创】(七)Linux内存管理
  16. @touchmove.prevent 阻止苹果手机透过modal层触发底层滚动
  17. Chameleon(变色龙)源码下载编译指南
  18. lpk.dll usp10.dll 感染病毒专杀工具 lpk usp10
  19. Masm for Winodws 集成实验环境安装绿色免费版
  20. C. Discrete Acceleration

热门文章

  1. popstate求解决方案~
  2. Qt编写带频谱的音乐播放器
  3. 2022眼视光展,护眼产品展,眼睛健康展,视力康复展
  4. 什么护眼灯对眼睛好?2022护眼灯315合格产品
  5. 如何快速在PDF文件中插入图片
  6. Intel仿人类大脑研发“神经元”芯片,可以解读人的喜怒哀乐
  7. MSR165数据记录仪让运输透明化
  8. Python数据全球人口数据
  9. 2022年深圳适合拍古风照的地方有哪些
  10. 人脸识别API/SDK 汇总(转)