是否可以在没有集群的情况下运行Hadoop MapReduce程序?我的意思是,出于教育目的,我只想尝试一下map / reduce,所以我只想在我的计算机上运行一些MapReduce程序,我不需要将任何工作分成多个节点等。 ..正如我所说的那样,不需要任何性能提升或任何东西,只是为了教育目的..我还需要运行VM来实现这一目标吗?我正在使用IntelliJ Ultimate,我正在尝试运行简单的WordCount ..我相信我已经设置了所有必要的库和整个项目,并且在运行时我得到了这个例外:
Exception in thread "main" java.io.IOException: Cannot initialize Cluster.
Please check your configuration for mapreduce.framework.name and the correspond server addresses.
我发现一些帖子说整个地图/缩小过程可以在jvm本地运行,但还无法找到解决方法。
答案 0 :(得分:1)
整个安装教程"伪分发"模式专门指导您完成单节点Hadoop集群的安装
还有the "Mini cluster",你会发现一些Hadoop项目用于单元和集成测试
我觉得你只是问你是否需要HDFS或YARN,答案是否定的,Hadoop可以从磁盘读取file://
前缀文件路径,有或没有集群
请记住,拆分不仅在节点之间,而且在单个计算机的多个核心之间。如果您没有进行任何并行处理,除了学习API语义之外,没有太多理由使用Hadoop。
除此之外:从教育的角度来看,在我的职业生涯中,到目前为止,我发现更多人写的是Spark而不是MapReduce,而且没有多少人专门针对MapReduce代码