2017-04-26 102 views
-1

在Scala應用程序中使用Spark MongoDB連接器時,您可以通過import com.mongodb.spark.config._導入MongoSpark伴侶對象,然後運行 val rdd = MongoSpark.load(spark)加載您的採集。我想在python應用程序中做同樣的事情,但我應該如何讓MongoSpark對象在我的python應用程序中可用。沒有安裝和導入的python包。什麼是解決方法python中的MongoSpark伴侶對象

回答

0

有關更多信息,請參閱Spark Connector Python Guide

下面是一個簡單的例子,從pySpark連接到MongoDB的:

from pyspark.sql import SparkSession 

spark = SparkSession \ 
    .builder \ 
    .appName("myApp") \ 
    .config("spark.mongodb.input.uri", "mongodb://127.0.0.1/test.coll") \ 
    .config("spark.mongodb.output.uri", "mongodb://127.0.0.1/test.coll") \ 
    .getOrCreate() 

df = spark.read.format("com.mongodb.spark.sql.DefaultSource").load() 
df.printSchema() 
+0

它提供了異常:Py4JJavaError:同時呼籲o71.load發生錯誤。 :java.lang.ClassNotFoundException:無法找到數據源:com.mongodb.spark.sql.DefaultSource。請在http://spark.apache.org/third-party-projects.html找到軟件包。 – yashar

+0

我應該如何在python應用程序中使com.mongodb.spark.sql.DefaultSource可用,比方說在spyder IDE中。 – yashar

+1

你需要包含jar /包。當運行pyspark時,你可以添加:'--packages org.mongodb.spark:mongo-spark-connector_2.11:2.0.0' – Ross