用于Hadoop的MongoDB连接器库

22-01-11 banq

用于 Hadoop 的 MongoDB 连接器是一个库,它允许将 MongoDB(或其数据格式的备份文件,BSON)用作 Hadoop MapReduce 任务的输入源或输出目标。它旨在提供更大的灵活性和性能,并可以轻松地将 MongoDB 中的数据与 Hadoop 生态系统的其他部分集成,包括:
  • Pig
  • Spark
  • MapReduce
  • Hadoop Streaming
  • Hive
  • Flume

特征
  • 可以创建数据拆分以从独立、副本集或分片配置中读取
  • 可以使用 MongoDB 查询语言通过查询过滤源数据
  • 支持 Hadoop Streaming,允许用任何语言编写作业代码(目前支持 python、ruby、nodejs)
  • 可以从驻留在 S3、HDFS 或本地文件系统上的 MongoDB 备份文件中读取数据
  • 可以以 .bson 格式写出数据,然后可以将其导入任何 MongoDB 数据库 mongorestore
  • 与其他 Hadoop 工具(例如Pig和Hive)中的BSON/MongoDB 文档一起使用。


下载
安装 Hadoop 连接器的最佳方式是通过 Maven 之类的依赖管理系统:

<dependency>
    <groupId>org.mongodb.mongo-hadoop</groupId>
    <artifactId>mongo-hadoop-core</artifactId>
    <version>1.5.1</version>
</dependency>



兼容性:
  • Hadoop 1.X: 1.2
  • Hadoop 2.X: 2.4
  • Hive: 1.1
  • Pig: 0.11
  • Spark: 1.4
  • MongoDB: 2.2