sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cómo guardar el marco de datos en mongodb usando pyspark?

Una forma eficiente de escribir en mongodb desde pyspark es usar MongoDB Conector de chispa . Connector convertirá los datos en formato BSON y los guardará en mongodb. Digamos que tiene un marco de datos de chispa llamado df que desea guardar en mongodb. Puedes probar:

from pyspark.sql import SparkSession, SQLContext
from pyspark import SparkConf, SparkContext
sc = SparkContext()
spark = SparkSession(sc)   


df.write.format("com.mongodb.spark.sql.DefaultSource").mode("append").option("spark.mongodb.output.uri","mongodb://username:[email protected]_details:27017/db_name.collection_name?authSource=admin").save()

Si está usando un cuaderno, escriba esto en la parte superior-

%%configure
{"conf": {"spark.jars.packages": "org.mongodb.spark:mongo-spark-connector_2.11:2.3.2"}}

Si está utilizando el comando Spark-Submit:

spark-submit --conf spark.pyspark.python=/usr/bin/anaconda/envs/py35/bin/python3.5 --packages org.mongodb.spark:mongo-spark-connector_2.11:2.3.1 file_name.py