HDFS开发
HDFS理论讲解
集群和分布式概念
- 集群:集群就是逻辑上处理统一任务的机器集合,可以属于同一机房,也可以分属不同的机房
- 分布式:分布式文件系统把文件分布存储到多个计算机节点上,成千上万的计算机节点构成计算机集群
- 分布式文件系统的结构
- 主节点
- 名称节点
- 数据节点
HDFS架构
- 块
- HDFS的文件被分成块进行存储
- 块是文件存储处理的逻辑单元
- 块存储的优点
- 支持大规模文件存储,一个大规模文件可以被拆成若干个文件块,不同的文件块可以被分发到不同的节点上
- 简化系统设计
- 适合数据备份
HDFS中的节点
- namenode
- 是管理节点,存储元数据
- 存储文件和数据块的映射表
- 存储数据块和数据节点的映射表
- 负责管理分布式文件系统的命名空间
- namenode数据结构
- FsImage:维护文件系统树以及文件书中所有的文件和文件夹的元数据
- EditLog:记录了所有针对文件的创建、删除、重命名等操作
- datanode
- 是hdfs的工作节点,负责数据的存储和读取
- 根据客户端或者是名称节点的调度来警醒数据的存储和检索
- 定期向名称节点发送自己所存储的块的列表
- 每个数据节点中的数据会被保存在各自节点的本地linux文件系统中