csdn4652
csdn4652
2017-11-27 09:31

Spark 连接 mongodb 用python

5
  • python
  • spark
  • mongodb

按照官网教程
1
from pyspark.sql import SparkSession
spark = SparkSession \
.builder \
.appName("myApp") \
.config("spark.mongodb.input.uri", "mongodb://127.0.0.1/Spark-Test.Numbers") \
.config("spark.mongodb.output.uri", "mongodb://127.0.0.1/Spark-Test.Numbers") \
.getOrCreate()
df = spark.read.format("com.mongodb.spark.sql.DefaultSource").load()

结果报错Caused by: java.lang.ClassNotFoundException: com.mongodb.spark.sql.DefaultSource.DefaultSource

2
我看需要用--packages这个命令导入包
cmd>> pyspark --package org.mongodb.spark:mongo-spark-connector_2.11:2.2.0
报错:Exception in thread "main" java.lang.IllegalArgumentException: pyspark does not

3
完全按照官方来
cmd>>pyspark --conf "spark.mongodb.input.uri=mongodb://127.0.0.1/test.myCollection?readPreference=primaryPreferred"
--conf "spark.mongodb.output.uri=mongodb://127.0.0.1/test.myCollection"
--packages org.mongodb.spark:mongo-spark-connector_2.10:1.1.0
报错:'D:\SparkNew\spark\bin\pyspark2.cmd" --conf "spark.mongodb.input.uri' 不是内部或外部命令,
也不是可运行的程序或批处理文件。

不太明白我用的pyspark,怎么报错是pyspark2.cmd

那怎么才能跟mongodb连接呢,就是找不到DefaultSource.DefaultSource的事啊

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

4条回答