我很想知道hdfs如何在数据节点上保留和分配存储空间。假设我在其中一个数据节点上有500gb的硬盘,其中400gb被分配给/data分区,hadoop被称为它的一部分。在这里,hadoop守护进程将占用400gb中的多少空间来存储输入分割(块)。它是优先保留所有存储空间还是按需分配?。还想知道在设置集群时格式化名称节点是否与此有关。非常感谢。。。
dzjeubhm1#
属性dfs.datanode.data.dir确定dfs数据节点应在本地文件系统上的何处存储其块。如果这是一个以逗号分隔的目录列表,那么数据将存储在所有命名的目录中,通常存储在不同的设备上。不存在的目录将被忽略。数据节点上的每个块副本由本地本机文件系统中的两个文件表示。第一个文件包含数据本身,第二个文件记录块的元数据,包括数据和生成戳的校验和。数据文件的大小等于块的实际长度,不需要额外的空间将其四舍五入到传统文件系统中的标称块大小。因此,如果一个块是半满的,它只需要本地驱动器上整个块的一半空间。名称节点格式步骤在本链接中进行了说明。您可以参考本链接吗
1条答案
按热度按时间dzjeubhm1#
属性dfs.datanode.data.dir确定dfs数据节点应在本地文件系统上的何处存储其块。如果这是一个以逗号分隔的目录列表,那么数据将存储在所有命名的目录中,通常存储在不同的设备上。不存在的目录将被忽略。
数据节点上的每个块副本由本地本机文件系统中的两个文件表示。第一个文件包含数据本身,第二个文件记录块的元数据,包括数据和生成戳的校验和。数据文件的大小等于块的实际长度,不需要额外的空间将其四舍五入到传统文件系统中的标称块大小。因此,如果一个块是半满的,它只需要本地驱动器上整个块的一半空间。
名称节点格式步骤在本链接中进行了说明。您可以参考本链接吗