- HDFS:Hadoop 中的分布式文件系统
- Hadoop Distributed File System,存储和管理海量数据
- 文件系统( File System ):
- 为了管理文件,在存储系统上建立的一些文件组织和结构
- 主要包括文件目录和文件本身
- 分布式(Distributed):
- 由多台服务器组成
- 每台服务器执行不同的功能
不同的功能配合起来形成完整的功能
- HDFS 上存储的文件由块和元数据组成block(块)
- 文件按照 block size(128M)切分为不同的 block
- 不同的 block 存储在不同的 DataNode 上
- 每个 block 会冗余存储 repliaction (3) 份
- 514M 的文件会切分为 5 个 block,每个 block 存储 3 份
- 在 HDFS 上存储 15 个 block,共占用 1542M 存储空间
- meta data(元数据)
- 存储在 NameNode 上
- 文件的描述信息:名字,大小,创建时间等等
- 文件的 block 信息:每个 block 的存储位置{block1: 1, 2,5; block2: 1,3,4; …
HDFS 采用的是主从架构模型(Master/Slave)
- 1 个 NameNode(Master/主人/分配任务)
- 接收客户端请求
- 管理元数据
- 维护文件系统的目录树
- 多个 DataNode(Slave/奴隶/执行任务)
- 存储 block,实现上传下载功能
- 定期(默认每隔 3 秒)汇报自身信息
1 个 SecondaryNameNode 辅助 NameNode 维护目录树