我一直在尝试将数据块中的增量表中的事件写入事件集线器,并且在尝试使其与 Trigger availableNow=True 一起使用时遇到了问题,
我基本上收集事件,首先读取所需的增量表,添加水印,进行一些转换,创建一个带有一些添加的元数据列的事件数据帧,将其转换为一种格式以推送到事件中心,
问题是,当我将processingTime触发器设置为2秒时,它可以工作,但在availableNow = True时不起作用,我无法理解为什么会这样。
任何人都可以提供一个解决方案,使其与 availableNow 一起工作,或者它不工作的原因
谢谢
“立即可用”和“处理时间”触发器具有非常不同的语义,因此很难知道“不起作用”是什么意思。回顾一下:
因此,如果您使用“Available Now”启动查询并注意到没有数据到达 EventHub,则很可能是因为没有新数据可用;它可能与处理时间(2 秒)触发器配合使用,因为作业不断轮询新数据并最终找到并处理该新数据。
您可以通过查看流查询进度的
numInputRows
指标来验证特定触发器实际正在处理的内容,该指标将打印到 驱动程序日志 中,您可以在 Spark UI 中找到该日志(注意:此日志不在 Databricks 笔记本单元的输出中)。