HDFS简介
HDFS
Hadoop分布式文件系统
Hadoop Distributed File System
HDFS是一个高度容错性的系统,适合部署在廉价的机器上。
HDFS能够提供高吞度量的数据访问,非常适合大规模数据集的使用。
HDFS放宽了POSIX约束、实现流式读取文件系统数据的目的。
POSIX:可移植操作系统接口,Portable Operating System Interface。
HDFS体系结构
HDFS采用了主从结构模型
Master/Slave,一个HDFS集群是由一个NameNode和若干DataNode组成。其中NameNode作为主服务器,管理文件系统的命名空间和客户端对文件的访问操作;集群中的DataNode管理存储的数据。
特定和目标
硬件故障
硬件故障时常态,而不是异常。
故障检测和自动快速恢复是HDFS一个很核心的设计目标。
数据访问
运行在HDFS之上的应用程序必须流式地访问它们的数据集,它不是运行在浦东文件系统之上的普通程序。
HDFS被设计成适合批量处理,而不是用户交互式的。重点是在数据吞度量,而不是数据访问反映时间。
POSIX的很多硬性要求对于HDFS应用都是非必须的,去掉POSIX一小部分关键语义可以获得更好的数据吞吐率。
大数据集
运行在HDFS之上的程序有很大量的数据集。
典型的HDFS文件大小是GB到TB的级别。
所以,HDFS被调整成支持大文件。一个集群中支持数百个节点,几个集群中还应该支持千万级别的文件。