繁体   English   中英

Hadoop Mapreduce 字数

[英]Hadoop Mapreduce wordcount

从 Eclipse Kepler 运行 Hadoop MapReduce WordCount 程序并使用位于 Mapreduce (hadoop-mapreduce-example-2.6.0.jar) 中的预定义 jar 文件运行它有什么区别。 速度,性能等有什么不同吗?

没有区别。 只是当您的输入很大并且您在多个节点上运行 mapper/reducer 时,您会看到显着的性能改进,因为现在单词计数将在不同的机器上并行完成。

当您从 Eclipse 运行 map-reduce(即不构建 .jar 并通过单击运行程序直接运行)时,您实际上是在模式下运行 map-reduce(主要用于测试目的)。

要以伪模式运行程序,您实际上并不需要安装 hadoop。 你只需要 hadoop jar 文件。

但是当您使用 hadoop-mapreduce-example-2.6.0.jar(即您编写命令在终端上运行它)时,您实际上是在实时集群(Hadoop)上运行 mapreduce。 为此,您需要启动并运行 Hadoop 集群。

当您在 Eclipse 中运行WordCount程序时,您是在模仿将在真正的 hadoop 引擎上运行的本地实际行为。 它就像你有一个本地集群,但事实并非如此。 当您通过 JAR 运行它时,JAR 包含.class文件,该文件为实际集群提供了 Map 和 Reduce 应该如何工作的提示。 如果输入文件很大,它会被分成多个部分并进行相应处理,输出将存储到HDFS ,而不仅仅是记录在控制台中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM