1

不确定标题是否适合我想要实现的目标,所以请耐心等待。

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

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

我试图弄清楚如果在某个时间段内超过 50 个标准,我是否可以输出这些设备中有多少符合此条件。问题是规则是实时定义的,应该实时应用于 Spark 作业。

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

非常感谢

4

1 回答 1

0

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

我认同。

规则是实时定义的,应该实时应用于 Spark 作业。

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

我该怎么做?

批处理间隔将是“某个时间段”。我假设有效载荷将具有 deviceId 和温度。有了它,您可以在温度范围内使用常规过滤器并获取 deviceId。你不需要有状态的管道,除非你想随着时间的推移积累比你的批处理间隔更长的数据。

于 2017-06-21T03:11:01.413 回答