我是hadoop的初学者。但我有一个有趣的观察。
在hadoop文档中使用the example,
通过在独立操作和伪分布式操作中运行相同的示例,独立操作耗时不到1分钟,但伪分布式操作耗时超过3分钟。这是一个很大的区别。我可以理解在分布式模式下有额外的网络和调度开销。但差别似乎太大了。这可能不是真正的比较,因为示例非常简单。
我的问题是,在实际作业中,单机模式和分布式模式有多大的不同?
发布于 2012-05-02 06:35:13
这些都是合理不同的场景。在独立模式下,它永远不会启动适当的单节点Hadoop集群。一切都发生在本地,内联,在JVM中。甚至根本不需要将数据写到磁盘上。伪分布式操作是一个本地节点上最小的“真正”Hadoop安装。您必须将数据读/写到本地HDFS实例,生成另一个JVM,等等。所有这些都会增加大量开销。也许开销确实是几分钟。在我看来,这是完全合理的。
发布于 2017-04-20 19:29:26
Hadoop框架是用来处理大数据的。
所以数据的大小很重要,因为,较小的文件在传统文件系统中会比在hadoop中处理得非常快,因为hadoop mapreduce框架有内部工作要做(制作数据文件块并将其发送到数据节点,同时再次处理从数据节点访问).So对于较小的文件,hadoop框架不适合。
对于独立和伪分布式模式,您应该考虑的一个方面是文件的大小,第二个方面是在独立和伪分布式模式下的实际差异。
在独立模式下没有硬盘文件系统的概念,数据不会像在伪分布式模式下那样复制到hadoop分布式文件系统(显然节省了时间).Where,硬盘文件系统涉及到需要复制的需要处理的数据。
小尺寸的数据文件最好使用传统的文件处理,如果文件变得越来越大,框架可以提供更好的处理时间!hadoop希望这能有所帮助!
https://stackoverflow.com/questions/10402625
复制相似问题