Запись в MongoDB с использованием Spark / Scala, создавая исключение MongoTimeoutException - PullRequest
0 голосов
/ 20 марта 2020

Я использую приведенный ниже код для записи в MongoDB, но происходит сбой с "com.mongodb.MongoTimeoutException: истекло время ожидания после 30000 мс в ожидании сервера, который соответствует WritableServerSelector. Клиентское представление состояния кластера: {type = REPLICA_SET, Servers = [] ".

spark-shell --packages org.mongodb.spark: mon go -spark-connector_2.11: 1.1.0

    import org.bson.Document 
    import com.mongodb.spark.MongoSpark 
    import com.mongodb.spark.config.WriteConfig

    import org.apache.spark.rdd.RDD

    val uri  = s"mongodb://${user}:${pwd}@${host}/${db}?replicaSet=${replset}&authSource=${db}"

    val writeConfig: WriteConfig =  WriteConfig(Map("uri"->uri, "database"->db,  "collection"->collection, "replicaSet"->replset,   "writeConcern.w"->"majority"))

    val recs: List[String] = List(
    """{"a": 123, "b": 456, "c": "apple"}""",
    """{"a": 345, "b":  72, "c": "banana"}""",
    """{"a": 456, "b": 754, "c": "cat"}""",
    """{"a": 876, "b":  43, "c": "donut"}""",
    """{"a": 432, "b": 234, "c": "existential"}"""
    )

    val rdd_json_str: RDD[String] = sc.parallelize(recs, 5)
    val rdd_hex_bson: RDD[Document] = rdd_json_str.map(json_str =>  Document.parse(json_str))

    MongoSpark.save(rdd_hex_bson, writeConfig)

Пожалуйста, помогите мне в разрешить это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...