我编写了一个mapreduce作业,它接受3个命令行参数-关键字、输入路径和输出路径。它统计关键字出现在输入文件中的次数,并输出相同的结果。我想创建一个网页(可能使用apachetomcat),在其中输入关键字。当我点击submit时,它会触发一个mapreduce作业并将结果输出到网页本身。这怎么可能?。我已经尝试了以下链接的所有答案,他们不工作
从web应用程序运行mapreduce作业
从简单java程序调用mapreduce作业
如果有可能,请提供一个样本工作代码。这真的很有帮助
编辑:当我在第二个链接中尝试第二个解决方案时,问题是
1条答案
按热度按时间oxalkeyp1#
WellMapReduce作业基本上是为批处理而设计的,批处理在后台运行,而不是交互式的,在这种情况下您需要这样做。但你能做的事情很少
如果您使用java在驱动程序boolean success=job.waitforcompletion(true)中初始化作业,这将启动mapreduce作业并等待mapreduce作业完成。此时,您可以从输出目录收集结果
在启动mapreduce作业之后,可以开始在hdfs中共享输出目录。mapreduce作业完成后,将在输出目录的根目录中创建一个文件。所以您要等到这个文件出现在hdfs output dir中,表示作业已经完成。读取输出文件中的所有文件,处理并在网页上显示结果
沙赫扎德