【分布式文件系统HDFS】文件操作基本命令的使用

目录

一、按照下述要求写出相应的文件操作命令,执行并观察结果

1. 新建目录

 1.1 在本地文件系统按要求创建如下的文件夹

1.2 在HDFS文件系统按要求创建如下的文件夹

2. 编辑文件test1.txt,放入本地文件夹 /opt/user/myfile

3. 使用moveFromLocal命令将本地文件test1.txt复制到HDFS文件系统的/temp/myfile/txt文件夹下。

4. 查看文件内容,查看HDFS文件系统上test1.txt的文件内容,仅显示文件的前两行。

5. 修改HDFS文件系统上test1.txt的权限,将其修改为用户可读可写,本组用户可读可写,其他用户只可读。

6. 将HDFS文件系统上test1.txt文件拷贝至HDFS文件系统的根目录下

7. 将根目录下的test1.txt移动至“/user/账户名” 下

8. 将“/user/账户名”下的test1.txt文件从HDFS文件系统拷贝至本地文件系统的“/home/账户名/Desktop”文件夹下。

9. 将HDFS文件系统上的/temp文件夹删除。

10. 将sogou_500w_utf数据上传至HDFS文件系统,并在HDFS系统上查看文件内容的后10行。

二、在虚拟机安装eclipse,并完成HDFS API示例程序的编辑运行。

1. 使用SSH SHELL CLIENT将eclipse安装包上传至虚拟机hadoop01,如下图所示。

2. 在CentOS中安装eclipse,安装包为压缩文件直接输入tar命令解压缩即可完成安装。

3. 完成安装以后将安装目录重命名为eclipse。

4.启动eclipse,完成示例程序的编辑和运行,并检查运行结果。

4.1 在eclipse新建Java Project,输入项目名,完成项目创建。

4.2 在项目中新建一个package,包名请自定义。

4.3 添加依赖库,将hadoop安装文件夹下的以下子目录文件夹中的jar包加进来

5. 在项目内新建类,类名自定义,并输入以下参考代码(注意修改类名),以下代码的功能是完成从本地文件系统上传一个文件到HDFS文件系统。

6. 运行上述程序,检验文件是否正确上传。通过在本地目录和HDFS文件系统查看检验。

三、总结

1. 遇到的问题

2. 解决办法


一、按照下述要求写出相应的文件操作命令,执行并观察结果

启动HDFS文件系统,并按要求完成以下操作。

1. 新建目录

 1.1 在本地文件系统按要求创建如下的文件夹

sudo mkdir -p user/myfilels

1.2 在HDFS文件系统按要求创建如下的文件夹

hdfs dfs -mkdir -p /temp/myfile/txthdfs dfs -ls /

2. 编辑文件test1.txt,放入本地文件夹 /opt/user/myfile

文件内容如下:

The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.

The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. Rather than rely on hardware to deliver high-availability, the library itself is designed to detect and handle failures at the application layer, so delivering a highly-available service on top of a cluster of computers, each of which may be prone to failures.

3. 使用moveFromLocal命令将本地文件test1.txt复制到HDFS文件系统的/temp/myfile/txt文件夹下。

hdfs dfs -moveFromLocal /opt/user/myfile/test1.txt /temp/myfile/txt

4. 查看文件内容,查看HDFS文件系统上test1.txt的文件内容,仅显示文件的前两行。

hdfs dfs -cat /temp/myfile/txt/test1.txt | head -2

5. 修改HDFS文件系统上test1.txt的权限,将其修改为用户可读可写,本组用户可读可写,其他用户只可读。

hadoop fs -chmod 764 /temp/myfile/txt/test1.txt

6. 将HDFS文件系统上test1.txt文件拷贝至HDFS文件系统的根目录下

hdfs dfs -cp /temp/myfile/txt/test1.txt /

hdfs dfs -ls /

7. 将根目录下的test1.txt移动至“/user/账户名” 下

hdfs dfs -mv /test1.txt /user/2130502441ryx/

8. 将“/user/账户名”下的test1.txt文件从HDFS文件系统拷贝至本地文件系统的“/home/账户名/Desktop”文件夹下。

hdfs dfs -get /user/2130502441ryx/test1.txt /home/2130502441ryx/Desktop/

9. 将HDFS文件系统上的/temp文件夹删除。

hdfs dfs -rm -r temp

hdfs dfs -ls / 

10. 将sogou_500w_utf数据上传至HDFS文件系统,并在HDFS系统上查看文件内容的后10行。

hdfs dfs -put /home/2130502441ryx/sogou/sogou.500w.utf8 /

hdfs dfs -tail /sogou.500w.utf8

二、在虚拟机安装eclipse,并完成HDFS API示例程序的编辑运行。

1. 使用SSH SHELL CLIENT将eclipse安装包上传至虚拟机hadoop01,如下图所示。

文件名为eclipse-standard-luna-SR2-linux-gtk-x86_64.tar.gz。

2. 在CentOS中安装eclipse,安装包为压缩文件直接输入tar命令解压缩即可完成安装。

tar -zxvf eclipse-standard-luna-SR2-linu.gz

3. 完成安装以后将安装目录重命名为eclipse。

4.启动eclipse,完成示例程序的编辑和运行,并检查运行结果。

进入eclipse安装目录,运行eclipse可执行文件,启动eclipse,命令如下所示。

./eclipse

4.1 在eclipse新建Java Project,输入项目名,完成项目创建。

4.2 在项目中新建一个package,包名请自定义。

4.3 添加依赖库,将hadoop安装文件夹下的以下子目录文件夹中的jar包加进来

share/hadoop/common

share/hadoop/common/lib

share/hadoop/hdfs

share/hadoop/hdfs/lib

5. 在项目内新建类,类名自定义,并输入以下参考代码(注意修改类名),以下代码的功能是完成从本地文件系统上传一个文件到HDFS文件系统。

6. 运行上述程序,检验文件是否正确上传。通过在本地目录和HDFS文件系统查看检验。

这是本地的hello.txt文件(/home/2130502441ryx/hello.txt)

运行截图:

  在HDFS文件系统查看:

三、总结

1. 遇到的问题

Eclipse控制台报错:Exception in thread "main" java.lang.NoClassDefFoundError: com/ctc/wstx/io/InputBootstrapper

2. 解决办法

原因是导入的jar包不全,需要将/comon和/hdfs下的包都导进去,之后运行即可。

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

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

相关文章

本地部署大模型的简单方法

https://ollama.com/https://ollama.com/ 在本地安装ollama windows版本。安装好后,就可以验证大模型了。 可以先测试一下qwen 0.5b,打开cmd,执行ollama run qwen:0.5b,首次会下载大模型的模型资源。 模型下好后就可以交互…

H5、Vue3、UniApp实现抖音短视频功能

H5、Vue3、UniApp实现抖音短视频功能 ml-swiper https://ext.dcloud.net.cn/plugin?id18973 可 0 配置,高性能、低代码、全端兼容 APP端效果图 微信小程序端效果图 Vue网页端效果图 ml-swiper 可 0 配置,高性能、低代码、全端兼容 APP端效果图 …

扩散模型 GLIDE:35 亿参数的情况下优于 120 亿参数的 DALL-E 模型

节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学。 针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 合集&#x…

媒体邀约中媒体采访应该如何做?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体宣传加速季,100万补贴享不停,一手媒体资源,全国100城线下落地执行。详情请联系胡老师。 在媒体邀约中,媒体采访应该遵循以下几个步骤和…

Python读取中文路径,出现乱码问题解决方案

Python读取中文路径,出现乱码问题解决方案 一、问题描述二、问题解决 欢迎学习交流! 邮箱: z…1…6.com 网站: https://zephyrhours.github.io/ 一、问题描述 笔者在使用opencv读取带有中文路径的图片时,发现会出现乱…

C++ 模板:全特化和偏特化

目录 全特化(Full Specialization) 偏特化(Partial Specialization) 特点和使用场景 注意事项 在C中,模板特化(template specialization)是一种强大的功能,允许对模板进行特定情…

2024最新算法:鳗鱼和石斑鱼优化(Eel and grouper optimizer,EGO)算法求解23个函数,MATLAB代码

一、算法介绍 鳗鱼和石斑鱼优化器(Eel and grouper optimizer,EGO)是2024年提出的一种智能优化算法,EGO算法的灵感来自海洋生态系统中鳗鱼和石斑鱼的共生相互作用和觅食策略。 参考文献: [1]A. Mohammadzadeh, S. Mi…

玩转数据库索引

1、概述 通常我们要对数据库进行优化,主要可以通过以下五种方法。 计算机硬件调优应用程序调优数据库索引优化SQL语句优化事务处理调优 本篇文章将向大家介绍数据库中索引类型和使用场合,本文以SQL Server为例,对于其他技术平台的朋友也是有…

DDL-表操作-数据类型

一.DDL-表操作-数据类型 MySQL中的数据类型有很多,主要分为三类:数值类型,字符串类型,日期类型。 二.关系表 注意: 无符号和有符号的取值范围不是一样的,无符号需要加上UNSIGNED范围。 BLOB:用来描述二进制数据 TEXT:用来描述字符串 三.定长字符串和变长字符串 c…

【STM32入门学习】学习嵌入式实时操作系统(RTOS)移植uc/OS到stm32F103上

目录 一、建立STM32HAL库工程 1.1实时操作系统 1.2基于HAL库创建工程 二、获取uC/OS-III源码 三、移植准备 3.1复制uC/OS-III文件到工程文件夹 3.2添加工程组件和头文件路径 四、移植修改代码 4.1.启动文件修改: 4.2.app_cfg.h &a…

Java Scanner 类

Java Scanner 类 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。 下面是创建 Scanner 对象的基本语法: Scanner s new Scanner(System.in);接下来我们演示一个最简单的数据输入,并通过 Scanner 类的 nex…

关于FPGA对 DDR4 (MT40A256M16)的读写控制 4

关于FPGA对 DDR4 (MT40A256M16)的读写控制 4 语言 :Verilg HDL 、VHDL EDA工具:ISE、Vivado、Quartus II 关于FPGA对 DDR4 (MT40A256M16)的读写控制 4一、引言二、DDR4 SDRAM设备中模式寄存器重要的模式寄存…

数组中的逆序对

描述: https://leetcode.cn/problems/shu-zu-zhong-de-ni-xu-dui-lcof/description/ 思路: 在进行归并排序时,会分成有序的左右两部分,如果左部分出现了大于右部分的数时(nums[cur1] > nums[cur2])&…

Javaweb配置tomcat

Tomcat 9版本链接 链接:https://pan.baidu.com/s/1u-eDur5KlqlXM_IM50Ahtg?pwd1njm 提取码:1njm 1、打开idea,创建maven项目 2023版IDEA 2、 目录结构 ps: 如果结果不完整,选中main右键 新建对应的文件夹 3、 web项目设置Tomcat(部署项目…

特征工程与数据预处理全解析:基础技术和代码示例

在机器学习和数据科学的世界里,数据的质量是建模成功与否的关键所在。这就是特征工程和数据预处理发挥作用的地方。本文总结的这些关键步骤可以显著提高模型的性能,获得更准确的预测,我们将深入研究处理异常值、缺失值、编码、特征缩放和特征…

我是如何从功能测试转成自动化测试的!

大家好,我是测试君。(六哥也行) 时间过得好快,不知不觉已经在这个行业摸爬滚打10年多了,也算是测试圈的一枚老兵了。 回想自己在自动化求知路上的种种,依然历历在目,看着自己一步步的走来&#…

剪画小程序:视频文案提取神器:制作爆款视频的第一步!

在这个信息爆炸的时代,视频成为了我们获取知识和娱乐的重要途径。 但有时候,我们想要的不仅仅是观看视频,而是能够将其中精彩的文案提取出来,为自己的创作添砖加瓦。 现在,有一款神奇的工具应运而生,为您…

Linux-笔记 高级I/O操作

前言 I/O(Input/Output,输入/输出)是计算机系统中的一个重要组成部分,它是指计算机与 外部世界之间的信息交流过程。I/O 操作是计算机系统中的一种基本操作,用于向外部设备(如 硬盘、键盘、鼠标、网络等&am…

https基础概念

目录 1.什么是https 1.1.https概念 1.2.一些术语 2.https如何加密 2.1.使用对称加密 2.2.使用非对称加密 1.什么是https 首先,https不是http的复数形式 1.1.https概念 (1)产生背景 为什么会出现https,是因为http协议在传…

小白学python(第二天)

哈喽,各位小伙伴们我们又见面了,昨天的文章吸收得如何?可有不懂否?如有不懂可以在品论区留言哦,废话不多说,开始今天的内容。 字符及字符串的续讲 字符:英文字母,阿拉伯数字&#x…