HDFS简介
HDFS是一种通过网络实现文件在多台主机上进行分布式存储的文件系统,一般采用“C/S”的模式
HDFS中的相关概念
为了更好地理解和掌握HDFS中的原理和相关技术,我们须得对其里面的一些概念进行了解
- 块
在普通的文件系统中,比如本地文件系统,在我们的磁盘中保存数据,系统并不是以字节进行存储的,而是以数据块进行存储,在普通的文件系统中,数据块的大小一般只有几千字节,而HDFS的数据库块大小默认就达到了64M,显然比几千字节大的多。而这样设计的目的就是最小化地减少寻址开销。 - 名称节点
在HDFS中,名称节点负责管理分布式文件系统地命名空间,而命名空间地作用就是为了让你去寻找文件地时候能够有个大概的方向。在名称节点里面,主要包括了FsImage和EditLog,FsImage负责维护文件系统的目录树结构和里面文件以及元数据,EditLog就是负责记录操作日志,在用户对文件进行删除、重命名等操作时,并不会立即生效,而是先保存在这个记录日志里面然后再执行的。 - 数据节点
这里面就是HDFS的主要工作节点了,因为它负责文件真实的数据的存取 - 第二名称节点
它的出现就是为了更新时加强名称节点里面的EditLog与FsImage整合的效率,以便名称节点能长期处于工作状态,而不是去执行EditLog里面的更新操作。
HDFS的体系结构
HDFS采用了主从的结构模型,是利用名称节点作为中心服务器,在集群中,数据节点一般是一个节点负责一个节点进程。在文件读取过程中,首先会将文件名称发送给Master中心服务器,由名称节点根据文件