HDFS|青训营笔记

169 阅读2分钟

Hadoop是一个能够让用户轻松架构和使用的分布式计算平台,用户可以在Hadoop上管理、开发和运行处理大规模数据的应用,其中,Hadoop分布式文件系统(HDFS)扮演了非常基础的作用,它以文件系统的形式为应用提供海量数据存储服务。

HDFS作为一个分布式文件系统,具有高容错的特点,它可以部署在廉价的通用硬件上,提供高吞吐率的数据访问,适合那些需要处理海量数据集的应用程序。

HDFS的主要特性包括:

  1. 支持超大文件。比如几百M、击败GB甚至TB大小的文件。
  2. 检测和快速应对硬件故障
  3. 流式数据访问
  4. 简化的一致性模型

HDFS不适合的场景:

  1. 低延迟数据访问
  2. 大量的小文件
  3. 多用户写入文件

HDFS的体系结构:

  • 名字节点

名字节点可以看作是分布式文件系统中的管理者,它负责管理文件系统命名空间、集群配置和数据块复制等。

  • 数据节点

数据节点是文件存储的基本单元。它以数据块的形式保存了HDFS中文件的内容和数据块的数据校验信息。

  • 客户端

客户端和名字节点、数据节点通信,访问HDFS文件系统,操作文件

HDFS使用数据块来实际存储文件,与磁盘相似,文件以块的形式存储在磁盘中,块的大小代表系统读/写操作的最小单位。文件系统通过一个块大小的整数倍的数据块使用磁盘。HDFS中的块默认大小是64M。HDFS使用块带来了很多的好处,比如:

  • HDFS可以保存比存储节点单一磁盘大的文件
  • 简化了存储子系统
  • 方便容错,有利于数据复制