Блокнот данных Scala Spark Connect для MongoDB Не удалось инициализировать класс com.mongodb.spark.config.ReadConfig $ - PullRequest
0 голосов
/ 04 мая 2020

Я использую ноутбук Databricks Scala с Spark для подключения к MongoDB и пытаюсь понять, почему я получаю эту ошибку, когда пытаюсь подключиться к своему кластеру MongoDB. Я просто хочу прочитать мою из базы данных, но я не уверен, почему эта ошибка продолжает появляться.

java.lang.NoClassDefFoundError: Could not initialize class com.mongodb.spark.config.ReadConfig$

Мой код, где я пытаюсь читать из MongoDB, показан здесь.

import org.apache.log4j.{Level, Logger}
import org.apache.spark.ml.evaluation.RegressionEvaluator
import org.apache.spark.ml.recommendation.ALS
import org.apache.spark.ml.tuning.{ParamGridBuilder, TrainValidationSplit}
import org.apache.spark.sql.SQLContext
import org.apache.spark.{SparkConf, SparkContext}

import com.mongodb.spark.MongoSpark
import com.mongodb.spark.config.{ReadConfig, WriteConfig}
import com.mongodb.spark._
import com.mongodb.spark.config._

val data = spark.read.format("com.mongodb.spark.sql.DefaultSource").option("database", "sample_airbnb").option("collection", "listingsAndReviews").load()
data.show()

Я также установил следующие библиотеки в своей библиотеке ноутбуков

org.mongodb.spark:mongo-spark-connector_2.12:2.4.0
mongodb_driver_3_12_3_javadoc.jar
mongodb_driver_3_12_3_javadoc.jar
bson_3_12_3_javadoc.jar

Это URI, используемый для конфигурации конфигурации

spark.mongodb.input.uri mongodb+srv://<user>:<password>@cluster0-ofrzm.azure.mongodb.net/test?retryWrites=true&w=majority
spark.mongodb.output.uri mongodb+srv://<user>:<password>@cluster0-ofrzm.azure.mongodb.net/test?retryWrites=true&w=majority
spark.databricks.delta.preview.enabled true

Любая помощь очень ценится !

...