Cygwin下的Hadoop Map-Reduce问题

0 投票
1 回答
753 浏览
提问于 2025-04-16 17:51

我在Cygwin上运行map/reduce示例时遇到问题:http://www.michael-noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/

在Cygwin环境下,使用 -mapper=mapper.py 时出现“CreateProcess error=193,%1 不是有效的 Win32 应用程序”的错误。

我尝试使用 -mapper="python mapper.py",结果出现错误:java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): 子进程失败,错误代码为 1。

有没有人成功在Cygwin上用Python运行Hadoop的map/reduce?

谢谢。

1 个回答

1

我在Cygwin下按照那个教程成功运行了。我的环境是WinXP上的hadoop-0.20.2,Cygwin版本是1.7.9-1。我没有看到你提到的具体错误信息……不过我还是想分享一下,因为我在使用 -mapper 选项时遇到了一些麻烦,最后通过把python脚本放到/tmp目录下解决了这个问题。我看到了一些错误信息,让我觉得Cygwin下的/home目录命名可能有些混乱。为了避免这种情况,我选择使用/tmp目录,结果成功了。顺便说一下,我也用了单引号。有时候在Windows中粘贴双引号会出现一些Unix进程无法识别的字符。

另外,我也参考了这个教程,关于如何在Cygwin和Eclipse下启动Hadoop: http://ebiquity.umbc.edu/Tutorials/Hadoop/ 不过教程最后关于Eclipse和Java的部分对我来说没用,而且也不是我打算用来操作Hadoop的方式。不过前面几个步骤对我搭建伪集群还是很有帮助的。

撰写回答