当我在下面进行操作时,它工作正常
company_info_df.select(col("value"))
.writeStream()
.outputMode("append")
.option("truncate", false)
.format("console")
.trigger(Trigger.ProcessingTime("4 seconds"))
.start();
但是当我按照下面的方法进行操作时,例如“ .format(” memory“),它什么也没显示
company_info_df.select(col("value"))
.writeStream()
.outputMode("append")
.option("truncate", false)
.format("memory")
.queryName("company_info")
.option("checkpointLocation", checkpointDir + "\\console")
.trigger(Trigger.ProcessingTime("4 seconds"))
.start();
Dataset<Row> company_inf = sparkSession.sql("select * from company_info");
company_inf.show();
我在这里做错了什么? 相同的正确方法是什么?
答案 0 :(得分:0)
请参阅适用于示例数据的spark-shell中的以下代码:
import org.apache.spark.sql.functions._
import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder.appName("StructuredNetworkWordCount").getOrCreate()
import spark.implicits._
import org.apache.spark.sql.types.{StructType, StructField, StringType, IntegerType};
val userSchema = new StructType().add("col1", "string").add("col2", "string").add("col3", "string").add("col4", "string").add("col5", "string").add("col6", "integer")
val csvDF = spark.readStream.option("sep", ",").schema(userSchema).csv("/user/Temp") //reads the stream as source files in a folder.
csvDF.createOrReplaceTempView("abcd");
val dbDf2 = spark.sql("select col2, sum(col6) from abcd group by col2");
dbDf2.writeStream.queryName("abcdquery").outputMode("complete").format("memory").start()
在您的代码中,尝试在写操作期间删除一些选项,然后查看出了什么问题。