2013-04-10 69 views
0

我有几个不支持JDBC的数据库,但我可以从这些数据库中检索数据。我想通过mapreduce程序将这些数据传递给mapper。我努力从“mapreduce.lib.DB”包中的源文件中找出一些东西,但我觉得缺少某些东西。任何人都可以告诉我如何将数据库的输出传递给映射器?将数据传递给映射器

+0

你需要更明确的帮助是需要的!!! – 2013-04-10 12:48:09

回答

0

我认为你需要Sqoop

首先,您必须使用sqoop import命令将数据从rdbms传输到hdfs。

稍后您将编写一个mapreduce程序,该程序将输入路径作为方法setInputpath的参数。

0

一种简单的方法是将数据从数据库批量导出到文件中,将文件放入HDFS中并使用FileInputFormat读取HDFS中的文件并对其进行处理。

+0

我真的想在这个数据库之上运行一个mapreduce程序,就像我们在mysql或任何其他数据库上运行mapreduce prog一样。因此,将数据从数据库中提取到HDFS中的文件不是性能高效的。请建议是否有其他方式可以将此数据传递给映射器? – 2013-04-10 13:49:31

相关问题