Apache spark 如何将可在运行时定义的规则应用于流数据集?

Apache spark 如何将可在运行时定义的规则应用于流数据集?,apache-spark,apache-spark-sql,spark-structured-streaming,Apache Spark,Apache Spark Sql,Spark Structured Streaming,我不确定这个标题是否适合我想要达到的目标,所以请耐心等待 我将从定义我的用例开始: 许多(比如说数百万)物联网设备正在向我的Spark流发送数据。这些设备每10秒发送一次当前温度水平。 所有这些物联网设备的所有者都能够定义预设规则,例如:如果温度>50,则执行某些操作 我试图弄清楚我是否可以输出这些设备中有多少在某个时间段内满足if>50标准。问题是这些规则是实时定义的,应该实时应用于Spark作业 我该怎么做呢。Spark是这项工作的合适工具吗 非常感谢 Spark是这项工作的合适工具吗 我想

我不确定这个标题是否适合我想要达到的目标,所以请耐心等待

我将从定义我的用例开始:

许多(比如说数百万)物联网设备正在向我的Spark流发送数据。这些设备每10秒发送一次当前温度水平。 所有这些物联网设备的所有者都能够定义预设规则,例如:如果温度>50,则执行某些操作

我试图弄清楚我是否可以输出这些设备中有多少在某个时间段内满足if>50标准。问题是这些规则是实时定义的,应该实时应用于Spark作业

我该怎么做呢。Spark是这项工作的合适工具吗

非常感谢

Spark是这项工作的合适工具吗

我想是的

这些规则是实时定义的,应实时应用于Spark作业

让我们假设规则在数据库中,因此每个批处理间隔Spark都会获取它们并逐个应用。它们也可能位于文件或任何其他存储中。这与主要需求是正交的

我该怎么做

批次间隔应为“某个时间段”。我假设有效载荷有设备ID和温度。有了它,你就可以使用常规的超温过滤器,把deviceId取回来。对此,您不需要有状态的管道,除非您希望随着时间的推移积累数据,而这一时间长于批处理间隔

Spark是这项工作的合适工具吗

我想是的

这些规则是实时定义的,应实时应用于Spark作业

让我们假设规则在数据库中,因此每个批处理间隔Spark都会获取它们并逐个应用。它们也可能位于文件或任何其他存储中。这与主要需求是正交的

我该怎么做


批次间隔应为“某个时间段”。我假设有效载荷有设备ID和温度。有了它,你就可以使用常规的超温过滤器,把deviceId取回来。您不需要有状态管道来完成此操作,除非您希望在超过批处理间隔的时间内累积数据。

这些规则是如何定义的?Spark是正确的工具吗->您的选项是什么?这些规则是如何定义的?Spark是正确的工具吗->您的选项是什么?