gpt4 book ai didi

hadoop - 在单节点集群上运行 Hadoop 时 HDFS 是如何工作的?

转载 作者:可可西里 更新时间:2023-11-01 14:31:46 26 4
gpt4 key购买 nike

有很多内容解释了数据局部性以及 MapReduceHDFS 如何在多节点集群上工作。但是我找不到关于单节点设置的太多信息。在过去的三个月里,我一直在尝试使用 Hadoop,我一直在阅读有关映射器和缩减器数量的教程和线程,并编写自定义分区器来优化作业,但我一直认为,它是否适用于单节点集群?

与多节点集群相比,在单节点集群上运行 MapReduce 作业的损失是多少?

通过拆分输入数据提供的并行性是否仍然适用于这种情况?

从单个节点 HDFS 读取输入和从本地文件系统读取有什么区别?

我认为由于我的经验不足,我无法清楚地回答这些问题,因此不胜感激!

提前致谢!

编辑: 我了解 Hadoop 不适合单节点设置,因为 @TC1 列出的所有因素。那么,搭建一个伪分布式的Hadoop环境有什么好处呢?

最佳答案

I'm always reading tutorials and threads regarding number of mappers and reducers and writing custom partitioners to optimize jobs, but I always think, does it apply to a single node cluster?

  • 视情况而定。组合器在映射和缩减之间运行,如果使用得当,您肯定会感受到即使在单个节点上的影响。自定义分区程序——可能不会,数据在减少之前会到达同一个磁盘。它们会影响逻辑,即您的 reducer 接收到的数据,但可能不会影响性能

What is the loss of running MapReduce jobs on a single node cluster comparing to a multi-node cluster?

  • 处理能力。如果您可以为数据设置单个节点,那么您可能一开始就不应该使用 Hadoop 进行处理。

Does the parallelism that is provided by splitting the input data still applies in this case?

  • 不,瓶颈通常是 I/O,即访问磁盘。在这种情况下,您仍在访问同一个磁盘,只是从更多线程访问它。

What's the difference of reading input from a single node HDFS and reading from the local filesystem?

  • 几乎不存在。 HDFS的思想是

    • 将文件存储在大的、连续的 block 中,以避免磁盘搜索
    • 在节点之间复制这些 block 以提供弹性;

    在单个节点上运行时,这两者都没有实际意义。

编辑:

“单节点”和“伪分布式”的区别在于,在单模式下,所有的 Hadoop 进程都运行在一个 JVM 上。不涉及网络通信,甚至不通过 localhost 等。即使只是在小数据上测试作业,我也建议使用伪分布式,因为它与集群基本相同。

关于hadoop - 在单节点集群上运行 Hadoop 时 HDFS 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19986437/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com