Spark整合Mongodb(附实例代码)

  • 环境准备
    1. mongodb下载
    2. 解压安装
    3. 启动mongodb服务
$MONGODB_HOME/bin/mongod --fork --dbpath=/root/data/mongodb/ --logpath=/root/data/log/mongodb/mongodb.log 
  • pom依赖
     <dependency>
      <groupId>org.mongodb.spark</groupId>
      <artifactId>mongo-spark-connector_2.11</artifactId>
      <version>${spark.version}</version>
    </dependency>
  • 实例代码
 object ConnAppTest {
  def main(args: Array[String]): Unit = {
    val spark = SparkSession.builder()
      .master("local[2]")
      .appName("ConnAppTest")
      .config("spark.mongodb.input.uri", "mongodb://192.168.31.136/testDB.testCollection") // 指定mongodb输入
      .config("spark.mongodb.output.uri", "mongodb://192.168.31.136/testDB.testCollection") // 指定mongodb输出
      .getOrCreate()
    // 生成测试数据
    val documents = spark.sparkContext.parallelize((1 to 10).map(i => Document.parse(s"{test: $i}")))
    // 存储数据到mongodb
    MongoSpark.save(documents)
    // 加载数据
    val rdd = MongoSpark.load(spark)
    // 打印输出
    rdd.show
  }
}

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏码匠的流水账

spring-cloud-stream-binder-kafka属性配置

本文简单介绍下spring-cloud-stream-binder-kafka的一些属性配置。

1362
来自专栏aoho求索

Eureka Server之间的注册表信息同步

前言 Eureka 作为一个服务注册中心,Eureka Server必然是可以通过集群的方式进行部署,但是分布式系统中一个很关键的点就是数据的一致性,多节点部署...

3024
来自专栏后台及大数据开发

kubernetes集群搭建(6):kubernetes基本使用演示

流程: 用户访问client应用,client应用中调用server应用,由于部署了多节点,client在访问server时应该配置server 暴露的虚拟IP...

892
来自专栏一名合格java开发的自我修养

kafka主题offset各种需求修改方法

  简要:开发中,常常因为需要我们要认为修改消费者实例对kafka某个主题消费的偏移量。具体如何修改?为什么可行?其实很容易,有时候只要我们换一种方式思考,如果...

1021
来自专栏精讲JAVA

深入 Spring Boot : 快速集成 Dubbo + Hystrix

Hystrix 旨在通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。Hystrix具备拥有回退机制和断路器功能的线程和信号...

1163
来自专栏xingoo, 一个梦想做发明家的程序员

Spark DataFrame写入HBase的常用方式

Spark是目前最流行的分布式计算框架,而HBase则是在HDFS之上的列式分布式存储引擎,基于Spark做离线或者实时计算,数据结果保存在HBase中是目前...

6215
来自专栏nummy

flume RPC 接口开发

1304
来自专栏Hadoop实操

如何使用Java代码访问HDFS.docx

在开发Hadoop应用时,需要用到hadoop-client API来访问HDFS并进行本地调试。本篇文章则主要讲述如何使用Java代码访问Kerberos和非...

5297
来自专栏Spring相关

feign中的hytrix和turbin配置

这里我就只讲下怎么注册到dashbord和相关的配置,提供者和消费者等代码可以去下载查看:

821
来自专栏有困难要上,没有困难创造困难也要上!

Apache-Ignite入门实战之一

36711

扫码关注云+社区