Hadoop HDFS概念学习系列之HDFS Block(八)
块是文件系统中的一个很重要的概念。在UNIX/Linux系统中有一个数据块(DataBlock)的概念,Data Block是文件系统读写的最小数据单元。一般在文件系统中数据块的大小是512字节,一个文件所占的大小就是数据块大小的整数倍.对于用户来讲对文件的访问/存取都是透明的,同样系统管理员可以利用系统本身的命令对数据块进行相关操作。因此单从文件系统来讲,HDFS也有一个块(Block)的概念,不同之处在于HDFS为了满足大数据的效率和整个集群的吞吐量选择了更大的数值,默认为64MB。和一般的文件系统不同的是:虽然块设置得比较大,但是当一个文件的大小小于HDFS的块大小时,实际存储所占的大小并不占用一个块的大小。 客户端在读取HDFS上的一个文件时就以块为基本的数据单元。例如一次简单读取,首先,客户端把文件名和程序指定的字节偏移,根据固定的Block大小,转换成文件的Block索引。然后,客户端把文件名和Block索引发送给Master节点,Master节点将相应的Block标识和副本的位置信息返回给客户端,客户端用文件名和Block索引作为key缓存这些信息,之后客户端发送请求到...