【发布时间】:2019-03-11 16:27:27
【问题描述】:
我看到了有关将 hadoop HDFS 输出存储到 MongoDB 的问题,但我还没有看到如何将本地 hadoop 输出存储到本地数据库。 我知道我需要从这里使用 mongodb 连接器:https://github.com/mongodb/mongo-hadoop
我已将依赖项添加到我的 POM.xml 文件中:
<dependency>
<groupId>org.mongodb.mongo-hadoop</groupId>
<artifactId>mongo-hadoop-core</artifactId>
<version>1.5.1</version>
</dependency>
这是我的班级来运行这项工作:
public static void main(String[] args)
throws IOException, ClassNotFoundException, InterruptedException, InvalidDataException {
Job job = new Job();
job.setJarByClass(hadoop.TwitterJob.class);
job.setJobName("Inverted Index for Twitter Data");
FileInputFormat.addInputPath(job, new Path(args[0]));
FileOutputFormat.setOutputPath(job, new Path("src/output/")); // change this to output to mongodb
job.setMapperClass(InvertedIndexMapper.class);
job.setReducerClass(hadoop.InvertedIndexReducer.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(Text.class);
job.waitForCompletion(true);
}
}
有谁知道我如何在本地直接输出到 mongodb?谢谢
【问题讨论】: