HDFS 是Hadoop的核心组件之一,负责文件数据的存储。本节的任务首先是了解 HDFS,以及HDFS与其他文件系统之间的关系;其次介绍HDFS的基本操作并将存储在 Linux 本地的日志文件email_log.txt上传至HDFS的/user/root/目录下。
1.了解 HDFS
HDFS 是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,HDFS负责为用户创建、写入、读出、修改和存储文件,删除文件等。
个人计算机大部分使用Windows操作系统,其文件系统让使用者将文件存储在磁盘驱动器(如D盘、E盘)中。在大部分企业服务器中,更多的是使用Linux操作系统,Linux文件系统以及类 Linux的文件系统均提供了树状的文件目录结构,可以供使用者存储或读取文件。Hadoop 集群也有专有的文件系统HDFS,HDFS也使用了类Linux的目录结构进行文件存储。这里以第2章搭建及配置的Hadoop集群为例,介绍HDFS与本地计算机的文件系统、Linux本地的文件系统之间的关系,如图3-10所示。通过虚拟化软件VMware,在本地磁盘上安装并配置了多台Linux虚拟机,不同的Linux虚拟机都有各自独立的文件系统,
HDFS与本地计算机的文件系统、Linux本地的文件系统之间的关系
其中包括“/”“/var”与“/usr”等文件目录。再通过安装Hadoop软件,在这些服务器节点上搭建了 Hadoop集群,集群的一个重要组件就是HDFS,HDFS则是构建在服务器节点指定的目录/data/hadoop上的。在实际工作环境中,这3种文件系统是独立运行的,不同系统间的数据传输可以通过工具或命令实现。
在使用HDFS前,需要对HDFS所存储的内容有一定的了解,可以通过浏览HDFS目录结构与文件列表进行查看。在本机浏览器的地址栏中输入“http://master:9870”并按Enter键,远程访问HDFS的监控服务端口。当需要访问HDFS上的目录及文件时,可以单击网页中的“Utilities”,在下拉菜单中选择“Browse the file system”,如图3-11所示。
访问HDFS 上