Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Primeiros passos com o Spark Connector

  • Conhecimento básico de trabalho do MongoDB e Apache Spark. Consulte a documentação do MongoDB e a documentação do Spark para obter mais detalhes.

  • MongoDB versão 4.2 ou posterior

  • Versão 3.1 a 3.5 do Spark

  • Java 8 ou posterior

Importante

Na versão 10.0.0 e posterior do conector, use o formato mongodb para ler e escrever no MongoDB:

df = spark.read.format("mongodb").load()

Forneça as dependências Spark Core, Spark SQL e MongoDB Spark Connector à sua ferramenta de gerenciamento de dependência.

A partir da versão 3.2.0, O Apache Spark é compatível com Scala 2.12 e 2.13. O Spark 3.1.3 e as versões anteriores são compatíveis apenas com Scala 2.12. Para fornecer suporte para ambas as versões Scala , a versão 10.7.0 do Spark Connector produz dois artefatos:

  • org.mongodb.spark:mongo-spark-connector_2.12:10.7.0 é compilado em relação ao Scala 2.12 e é compatível com o Spark 3.1.x e superior.

  • org.mongodb.spark:mongo-spark-connector_2.13:10.7.0 é compilado em relação ao Scala 2.13 e é compatível com o Spark 3.2.x e superior.

Importante

Use o artefato Spark Connector compatível com suas versões do Scala e Spark.

O seguinte trecho de um arquivo Maven pom.xml mostra como incluir dependências compatíveis com Scala 2.12:

<dependencies>
<dependency>
<groupId>org.mongodb.spark</groupId>
<artifactId>mongo-spark-connector_2.12</artifactId>
<version>10.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.12</artifactId>
<version>3.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.12</artifactId>
<version>3.3.1</version>
</dependency>
</dependencies>

Ao especificar a configuração do conector via SparkSession, você deve prefixar as configurações adequadamente. Para informações e outras opções disponíveis do Conector MongoDB Spark, consulte o guia Configurando o Spark.

package com.mongodb.spark_examples;
import org.apache.spark.sql.SparkSession;
public final class GettingStarted {
public static void main(final String[] args) throws InterruptedException {
/* Create the SparkSession.
* If config arguments are passed from the command line using --conf,
* parse args for the values to set.
*/
SparkSession spark = SparkSession.builder()
.master("local")
.appName("MongoSparkConnectorIntro")
.config("spark.mongodb.read.connection.uri", "mongodb://127.0.0.1/test.myCollection")
.config("spark.mongodb.write.connection.uri", "mongodb://127.0.0.1/test.myCollection")
.getOrCreate();
// Application logic
}
}
  • O spark.mongodb.read.connection.uri especifica o endereço do servidor MongoDB (127.0.0.1), o banco de dados de dados para conectar (test) e a collection (myCollection) da qual ler os dados e a preferência de leitura.

  • O spark.mongodb.write.connection.uri especifica o endereço do servidor MongoDB(127.0.0.1), o banco de dados para conectar (test) e a collection (myCollection) na qual escrever dados.

Você pode utilizar um objeto SparkSession para escrever dados no MongoDB, ler dados do MongoDB, criar conjuntos de dados e executar operações SQL.

As seções a seguir descrevem algumas plataformas populares de terceiros com as quais você pode integrar o Spark e o conector Spark MongoDB .

O Amazon ESR é uma plataforma de cluster gerenciado que você pode usar para executar estruturas de big data como o Spark. Para instalar o Spark em um cluster ESR, consulte Introdução ao Amazon ESR na documentação do Amazon Web Services.

Databricks é uma plataforma de análise para criar, implantar e compartilhar dados de nível empresarial. Para integrar o conector Spark MongoDB com Databricks, consulte MongoDB na documentação Databricks.

O Docker é uma plataforma de código aberto que ajuda os desenvolvedores a criar, compartilhar e executar aplicativos em contêineres.

O Kubernetes é uma plataforma open source para automatizar o gerenciamento de containerização. Para executar o Spark no Kubernetes, consulte Executando o Spark no Kubernetes na documentação do Spark.