如何在单个作业的Kafka流上运行多个流式SQL查询。结构化流媒体是一种可靠的前进方式。例如,我在一个作业的流上运行10个查询。假设我只想运行9个查询有没有办法动态更改每次运行时从商店运行的查询。我希望运行查询以便在每次运行流式查询(即连续查询)时从商店中动态选择。
答案 0 :(得分:1)
如果要处理多个查询,则应使用spark.streams.awaitAnyTermination()
val spark = SparkSession
.builder()
.getOrCreate()
val query1 = spark ...
val query2 = spark ...
spark.streams.awaitAnyTermination()
然后,您可以从Stream中读取SQL原始查询,并将其值用于其他流而不会出现任何问题。