sql >> Database teknologi >  >> NoSQL >> MongoDB

Kan ikke sende data til MongoDB ved hjælp af Kafka-Spark Structured Streaming

Ifølge fejlen har du allerede en streng (du gjorde allerede df.selectExpr("CAST(value AS STRING)") ), så du bør prøve at få Row-begivenheden som en String , og ikke en Array[Byte]

Start med at ændre

val valueStr = new String(record.getAs[Array[Byte]]("value"))

til

val valueStr = record.getAs[String]("value")

Jeg forstår, at du muligvis allerede har en klynge til at køre Spark-kode, men jeg vil foreslå, at du stadig kigger på Kafka Connect Mongo Sink Connector så du ikke behøver at skrive og vedligeholde din egen Mongo-skribent i Spark-kode.

Eller du kan skrive Spark-datasæt til mongo også direkte




  1. Gem en meget stor CSV til mongoDB ved hjælp af mongoose

  2. Mongo MapReducer vælg seneste dato

  3. Hvordan kan jeg hente et dokument efter _id?

  4. Sådan sorteres med summen af ​​2 felter i MongoDB