我觉得用Perl脚本做我的Mapper操作,但后来我意识到用Python编写Reducer会更容易。映射器和化简器可以用不同的编程语言工作吗?
从标签上听起来你正在使用亚马逊的Elastic Map Reduce服务。这个问题在他们出色的常见问题解答中得到了回答:
问:Amazon Elastic MapReduce 支持哪些编程语言?
您可以使用 Java 来实现 Hadoop 自定义 jar。或者,您可以使用其他语言,包括Perl,Python,Ruby,C++,PHP,和R通过Hadoop Streaming。请参阅开发人员指南有关使用 Hadoop Streaming 的说明。
换句话说,任何可以写入文件的东西都可以在 EMR 映射或归约步骤中使用。