【发布时间】:2017-03-28 08:02:22
【问题描述】:
我需要在 HDFS 上存储一个大约 10TB 的大文件。我需要了解的是 HDFS 将如何存储此文件。比如说,集群的复制因子是 3,我有一个 10 节点集群,每个节点上有超过 10 TB 的磁盘空间,即集群总容量超过 100 TB。
现在 HDFS 会随机选择三个节点并将文件存储在这三个节点上。所以这听起来很简单。请确认?
或者 HDFS 是否拆分文件 - 比如说分成 10 个拆分,每个拆分 1TB,然后将每个拆分存储在随机选择的 3 个节点上。拆分也是可能的,如果是,它是否是启用它的配置方面。 如果 HDFS 必须拆分二进制文件或文本文件 - 它是如何拆分的。只需按字节。
【问题讨论】:
-
除非您要使用的格式是可拆分的,否则这是个坏主意。从 HDFS 的角度来看,这无关紧要,但对于 MapReduce,如果它不可拆分,则只有一个映射器能够处理所述文件。
标签: java hadoop mapreduce hdfs bigdata