何时触发没有 Window 的流分析作业

Posted

技术标签:

【中文标题】何时触发没有 Window 的流分析作业【英文标题】:When is a Stream Analytics job without Window getting triggered 【发布时间】:2020-08-09 20:46:21 【问题描述】:

如果我没有指定任何 windowing function,我不清楚何时调用流分析作业。它是定期运行还是在新事件到达时被调用?不幸的是,我还没有找到任何专门提到这一点的文档。

背景:我有多个设备向我的 IoT 中心发送更新,我只想在某个设备发送更新时进行新的计算。

【问题讨论】:

【参考方案1】:

如果没有窗口函数,您的 Azure 流分析作业将在每次收到输入消息时运行。但是,它可能会根据出口速率对输出进行批处理。这也取决于输出的类型,如 this page 所述。

一个旁注是,根据查询的复杂程度,您需要考虑流媒体单元的使用情况。即使您没有查看窗口函数,如果您想使用 UDF 或参考数据,您也需要检查 this page,因为它可能会影响您的内存使用。

【讨论】:

有道理,谢谢。有没有一种简单的方法来获取触发作业的事件以查看它来自哪个设备? 如果您的目标是查看设备 ID,您可以在输出中include the device id。设备 ID 在事件的元数据中。 这是我的完整问题:***.com/questions/62265198/… 我尝试通过查询设备 ID 来限制输出,但我仍然得到了太多的输出事件。不过,我想这个问题可以被视为已回答。

以上是关于何时触发没有 Window 的流分析作业的主要内容,如果未能解决你的问题,请参考以下文章

没有监控的流处理作业与茫茫大海中的裸泳无异 - 附 flink 与 spark 作业监控脚本实现

IoT 边缘上的流分析作业不起作用,异常:System.AggregateException

错误:“您的部署没有关联的 swagger.json” - 流分析作业上的 ACI 部署

Azure 流分析作业在作业开始时触发误报缺失资产

一项流分析作业与多项作业

流分析作业无法可靠输出