使用Pyspark从结构化流数据框架构建Spark ML管道模型

时间:2018-08-08 20:01:22

标签: python pyspark apache-spark-sql data-science apache-spark-ml

我是数据科学领域的新手,正在寻求帮助。

我想从结构化流式DataFrame构建Spark ML管道模型,但出现一些错误。请参见下面的代码段和错误消息。

注意:我们已经离线训练了我们的模型,只是想从结构化的流数据框架中建立评分模型。

代码:

pipelineModel= PipelineModel.load('/model/path/')
scoringDf = pipelineModel.transform(streamingDf) 

错误消息:

Py4JJavaError: An error occurred while calling o1910.transform.
: org.apache.spark.sql.AnalysisException: Queries with streaming sources must be executed with writeStream.start();;
Kafka

我们正在使用DSE Cassandra v 6.0,该版本具有Spark 2.2.1。因此,有人建议在 Spark 2.2 中将预先训练的PipelineML对象转换为流数据帧时遇到的问题吗?

请提供一些建议。

1 个答案:

答案 0 :(得分:-1)

您正在尝试在流式传输结束之前进行转换。流是一个不同的概念,这里假设您正在处理批处理数据,并一步一步完成所有工作。

尝试在调用转换方法之前添加your-streaming-context-variable.awaitTermination()来尝试等待流计算的结束。

您可以阅读here来了解Spark的流计算。