Hadoop 之 HDFS
2017-08-11 本文已影响0人
C_Hans
文件系统
- 文件系统由三部分组成
- 文件管理软件:Explorer , Total Commander
- 被管理文件: /home/...
- 文件存储结构:如由超级块, 节点, 数据块, 目录块, 间接块等组成的通用结构
文件系统是对文件存储器空间进行组织和分配, 负责文件存储并对存入的文件进行保护和检索的系统
Hadoop 与 HDFS
HDFS 架构图
HDFS- Hadoop 实现了一个分布式文件系统, 简称 HDFS.
- Hadoop 是一个框架, HDFS 是其中一个部件
- HDFS 的出现是为了提供大规模数据分布存储能力, 解决单块磁盘传输能力有限等限制, 实现高并发访问.顺序式文件访问
- HDFS 通过分片冗余, 本地校验增强容错能力
- 一个HDFS 包括一个主控节点, NameNode 和一组 DataNode 从节点.
- NameNode 是一个用于管理整个文件系统的命名空间和元数据的, 以及处理来自外界的文件访问请求的主服务器.保存的三种元数据:
- 命名空间, 整个分布式文件系统的目录结构
- 数据块与文件名的映射表
- 每个数据块副本的位置信息, 每个数据块默认有3个副本
元数据
元数据是用于描述要素, 数据集或数据集系列内容, 覆盖范围, 质量, 管理方式, 数据所有者, 数据提供方式等有关的信息, 即数据的数据.
数据块
- HDFS 使用了默认大小为 64MB 或 128MB的块
- 可以将一个文件分为一个或数据块来存储, 每个块为独立的存储单元
HDFS
- 可以将 HDFS 看成一个巨大的硬盘, 使用 fsck 指令查看块信息:
hadoop fsck / -files -blocks
HDFS 的各个功能模块
- HDFS 模块
HDFS 负责大数据的存储, 通过将大文件分块后进行分布式存储, HDFS 相对独立, 可为 YARN, HBASE 等其他模块提供服务. - YARN 模块
一个通用的资源协同和任务调度框架, 解决 Hadoop 中 MapReduce 的 NameNode 负载过大而创建. - MapReduce 模块
一个数据处理的计算框架, 通过 Map 阶段, Reduce 阶段来分布式地流失处理数据.