我有一个mapreduce作业,它将输出写入HDFS中的文件。但是我不想将其写入HDFS,而是希望将输出直接写在网页上。我在eclipse中创建了一个web项目,并在其中编写了驱动程序,mapper和reducer类。当我用tomcat服务器运行它时,它不起作用。
那么如何在网页上显示输出呢?
答案 0 :(得分:0)
如果您正在使用MAP-R发行版,则可以将地图缩减作业的输出写入文件系统(而不是HDFS),但要解决问题需要更多信息。
答案 1 :(得分:0)
HDFS(单独使用)并非真正设计用于低延迟随机读/写。但是,您可以使用的一些选项是WebHDFS / HTTPfs。这将REST API暴露给HDFS。 http://archive.cloudera.com/cdh4/cdh/4/hadoop-2.0.0-cdh4.6.0/hadoop-project-dist/hadoop-hdfs/WebHDFS.html和http://hadoop.apache.org/docs/r2.4.1/hadoop-hdfs-httpfs/。您可以让网络服务器提取您想要的任何文件并在网页上提供。但我不认为这是一个非常好的解决方案。
更好的解决方案可能是将MapReduce输出到HBase(http://hbase.apache.org/)并让您的网络服务器从HBase中获取。它更适合低延迟随机读/写。