如何解决Spark Memory Streams 继续运行?
这是我的写查询
val imstream = new MemoryStream[SomeData](1,spark.sqlContext)
val mV = imstream.toDS()
.groupByKey(...)
.flatMapGroupsWithState......//returning the values without any logic
val sQ = mV
.writeStream
.format("memory")
.queryName(queryName)
.option("checkpointLocation","src/checkpoint")
.start
val currentOffset: Offset = imstream.addData(dataList)
val nextOffset = imstream.addData(Seq(.....))
sQ.processAllAvailable()
imstream.commit(currentOffset.asInstanceOf[LongOffset])
imstream.commit(nextOffset.asInstanceOf[LongOffset])
sQ.awaitTermination(5000L)
我用它来测试,但它一直在运行。我也试过 sQ.stop()
但它没有任何区别?
我是否遗漏了有关停止内存流的内容?
[如果没有 flatMapGroupsWithState 似乎也能正常工作]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。