HDFS如何在磁盘上分配存储

时间:2014-05-23 05:43:55

标签: hadoop hdfs

我很想知道HDFS如何在数据节点上保留和分配存储空间。

假如我在其中一个数据节点中有500GB硬盘,其中400GB分配给/ data分区,据说hadoop就坐在它上面。

这里,hadoop守护进程将为存储输入分割(块)占用400GB空间。

它是先保留所有存储空间还是按需分配?。

并且还想知道在设置群集时是否格式化Name节点与此有关。

非常感谢...

1 个答案:

答案 0 :(得分:1)

属性 dfs.datanode.data.dir 确定DFS数据节点应在何处存储其块的本地文件系统。如果这是逗号分隔的目录列表,则数据将存储在所有命名目录中,通常位于不同设备上。不存在的目录将被忽略。

DataNode上的每个块副本由本地本机文件系统中的两个文件表示。第一个文件包含数据本身,第二个文件记录块的元数据,包括数据的校验和和生成标记。数据文件的大小等于块的实际长度,并且不需要额外的空间来将其四舍五入到传统文件系统中的标称块大小。因此,如果一个块是半满的,它只需要本地驱动器上整个块的一半空间。

此链接中说明了名称节点格式步骤,您可以参考此Link