hdfs数据块

数据块是一组或几组按顺序连续排列在一起的记录,是主存储器输入设备输出设备外存储器之间进行传输的数据单位。

在传统的块存储介质中,块是读写的最小数据单位 (扇区)

传统文件系统基于存储块进行操作

为了节省文件分配表空间,会对物理存进行储块整般合,一般大小为4096字节

HDFS也使用了块的概念,但是默认大小设为64M字节

可针对每个文件配置,由客户端指定

每个块有一个自己的全局ID

HDFS将一个文件分为一个或数个块来存储

每个块是一个独立的存储单位

以块为单位在集群服务器上分配存储

与传统文件系统不同的是,如果实际数据没有达到块大小,则并不实际占用磁盘空间

如果一个文件是200M,则它会被分为4个块: 64+64+64+8

块的优点:

当一个文件大于集群中任意一个磁盘的时候,文件系统可以充分利用集群中所有的磁盘

管理块使底层的存储子系统相对简单

块更加适合备份,从而为容错和高可用性的实现带来方便

最重要的是,采用块方式,实现了名字与位置的分离,实现了的存储位置的独立性

块的冗余备份

每个块在集群上会存储多份(replica)

默认复制份数为3

可针对每个文件配置,由用户指定

可动态修改

某个块的所有备份都是同一个ID

系统无需记录 “哪些块其实是同一份数据”

系统可以根据机架的配置自动分配备份位置

第一份在集群的某个机架的某台机器上

其他两份在另外的一个机架的两台机器上

此策略是性能与冗余性的平衡

机架信息需要手工配置

原文地址:https://www.cnblogs.com/luminous1/p/8343236.html