内容简介
一、分布式文件系统简介
一般而言,常见的文件系统都是单机的,即数据只存储在一台机器上,读写都必须交互这台机器。当数据大小超过一台独立主机的物理存储能力时就必须将数据分区,然后存储到若干台单独计算机上。管理网络中跨多台计算机存储文件的系统称之为分布式文件系统。该系统构建于网络之上,势必会引入网络编程的复杂性,因此分布式文件系统要比普通文件系统复杂得多。
Hadoop有一个称之为HDFS的文件系统,即 Hadoop Distributed Filesystem,是一个分布式文件系统的实现,下面将介绍HDFS。
二、HDFS的设计
HDFS以流式数据访问模式来存储超大文件,运行于商用硬件集群上。
适合使用HDFS的场景:
- 存储超大文件。超大文件是指具有几百MB、几百GB,甚至几百TB大小的文件。
- 流式数据访问。HDFS认为一次写入多次读写是最为高效的访问模式。数据集通常由数据源不断产生,或者从数据源复制而来,接着长时间都在数据集上进行各种分析,每次都读取数据集的大部分内容甚至是全部内容,因此读取整个数据集的时延必读取