在Spark结构化流中减去两个数据帧

时间:2017-11-29 10:48:57

标签: scala apache-spark spark-structured-streaming

我有一个简单的Spark结构流程序如下。我需要找到两个数据框 d1 d2 之间的差异。但是,我得到了以下的例外:

  

线程中的异常" main" org.apache.spark.sql.AnalysisException:不支持右侧的流式DataFrame / Dataset ;;

val lines = spark.readStream.format("socket")
   .option("host", "localhost").option("port", 9999).load()

val dataset = lines.as[String].map(line => {
  val arr = line.split(",")
  (arr(0), arr(1), arr(2))
})

val d1 = dataset.map(row => row._1)
val d2 = dataset.map(row => row._2)
val res = d1.except(d2)

val query = res.writeStream
  .outputMode("update")
  .format("console")
  .start()
query.awaitTermination()

有没有人知道达到同样目的的其他方法?

0 个答案:

没有答案