其他分享
首页 > 其他分享> > HDFS基本操作实践

HDFS基本操作实践

作者:互联网

实验内容:
在HDFS的shell客户端和Java API客户端操作HDFS的节点,对文件进行操作

实验数据记录:
在HDFS的shell端操作:
主要使用了 hadoop fs 的一些简单指令
在这里插入图片描述

在HDFS的Java API端操作:
打开安装好的IDEA,新建maven项目,点击右上角setting,配置maven:
在这里插入图片描述

在pom.xml文件中添加如下内容:

<dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-common</artifactId>
        <version>2.10.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-hdfs</artifactId>
        <version>2.10.0</version>
</dependency>

新建java class文件,运行如下代码:
在这里插入图片描述

问题:无法导入相关jar包,程序运行失败
解决办法:
点击右上角file,setting,设置maven的目录和setting文件位置为安装的maven路径
在这里插入图片描述

点击Maven project 左上角的Rimport,及右边的Downsources,重启IDEA,即可正常导入jar包:
在这里插入图片描述

检查代码,出现拼写及语法错误,改正如下:
其中特别注意导入的是java.net.URI而不是URL
在这里插入图片描述
在这里插入图片描述

总结:
3.1 文件系统:
文件系统是操作系统的重要组成部分,建立了硬盘等存储设备中存储内容的目录结构,可管理物理存储设备
3.2 HDFS分布式文件系统:
(1)设计目标:1.硬件故障容错 2.流式数据访问 3.面向大数据集 4.简化的一致性模型 5.移动计算程序比移动数据更经济 6.跨异构软硬件平台的可靠性
(2)HDFS的原理与结构:HDFS将大数据按照固定大小拆分成一个个数据块,然后将数据块发送到集群的不同节点进行存储,并采用主从架构设计,其所管理的集群有两类计算节点: namenode 和datanode节点。Namenode节点运行namenode进程,是HDFS的管理节点,负责维护整个文件系统的文件目录树、文件、目录的元信息等。Datanode节点运行datanode进程,是HDFS的数据存储节点,并且要负责用户的读取请求。大文件的一个数据块在datanode检点以一个独立的文件形式存放。当一个datanode启动时,首先将自身的信息发送给namenode,向namenode进行注册。HDFS在设计时提供了数据块的多副本存储策略,也就是HDFS为数据块在集群中提供多个备份。

标签:HDFS,hadoop,实践,datanode,namenode,基本操作,数据,节点
来源: https://blog.csdn.net/YTLDSS/article/details/123600197