Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Comenzar con el Spark Connector

  • Conocimientos básicos de MongoDB y Apache Spark. Consulte la documentación de MongoDB y la de Spark para obtener más detalles.

  • Versión de MongoDB 4.2 o posterior

  • Versión de Spark 3.1 hasta 3.5

  • Java 8 o versiones posteriores

Importante

En la versión 10.0.0 y posteriores del Connector, utilizar el formato mongodb para leer de y guardar en MongoDB:

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

Proporcione las dependencias de Spark Core, Spark SQL y MongoDB Spark Connector a su herramienta de gestión de dependencias.

A partir de la versión 3.2.0, Apache Spark es compatible tanto con Scala 2.12 como con 2.13. Spark 3.1.3 y las versiones anteriores solo son compatibles con Scala 2.12. Para proporcionar soporte para ambas versiones de Scala, la versión 10.7.0 del Spark Connector produce dos artefactos:

  • org.mongodb.spark:mongo-spark-connector_2.12:10.7.0 se compila contra Scala 2.12 y es compatible con Spark 3.1.x y versiones superiores.

  • org.mongodb.spark:mongo-spark-connector_2.13:10.7.0 se compila contra Scala 2.13 y es compatible con Spark 3.2.x y versiones superiores.

Importante

Utilice el artefacto de Spark Connector que sea compatible con sus versiones de Scala y Spark.

El siguiente extracto de un archivo Maven pom.xml muestra cómo incluir dependencias compatibles con 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>

Al especificar la configuración del Connector mediante SparkSession, se debe prefijar los ajustes adecuadamente. Para obtener detalles y otras opciones disponibles de MongoDB Spark Connector, consultar la guía Configuración de 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
}
}
  • El spark.mongodb.read.connection.uri especifica la dirección del servidor MongoDB (127.0.0.1), la base de datos a la que conectarse (test), la colección (myCollection) de la que leer datos y la preferencia de lectura.

  • El spark.mongodb.write.connection.uri especifica la dirección del servidor MongoDB (127.0.0.1), la base de datos a la que se debe conectar (test) y la colección (myCollection) a la que se deben guardar los datos.

Puedes utilizar un SparkSession objeto para guardar datos en MongoDB, leer datos de MongoDB, crear conjuntos de datos y realizar operaciones SQL.

Las siguientes secciones describen algunas plataformas populares de terceros con las que puede integrar Spark y el Spark Connector para MongoDB.

Amazon EMR es una plataforma de clúster gestionado que se puede usar para ejecutar frameworks de big data como Spark. Para instalar Spark en un clúster EMR, consultar Introducción a Amazon EMR en la documentación de AWS.

Databricks es una plataforma de análisis para desarrollar, implementar y el uso compartido de datos para empresas. Para integrar el MongoDB Spark Connector con Databricks, consultar MongoDB en la documentación de Databricks.

Docker es una plataforma de código abierto que ayuda a los desarrolladores a compilar, compartir y ejecutar aplicaciones en contenedores.

Kubernetes es una plataforma de código abierto para la automatización de la gestión de contenedores. Para ejecutar Spark en Kubernetes, consulta Running Spark on Kubernetes en la documentación de Spark.