我想听听您对物联网数据摄取案例的见解。在AWS IoT中心中,事物阴影是物理阴影的虚拟表示。我从下图中了解到,每当事物通过消息代理向平台发送数据时,事物阴影和规则引擎部分会同时获取相同的传感器数据并对其进行处理。
我的结论是否正确?
答案 0 :(得分:2)
以下是我对你的结论的评论。
我从下图中了解到的是每当事物发送时 通过消息代理,事物阴影和规则引擎将数据传输到平台 部分同时获得相同的传感器数据并进行处理。
事物阴影中的更改可以触发在规则引擎中注册的操作。有specific topics与事物影子相关联,您可以订阅规则引擎,以便执行一个或多个操作作为响应。
事物影子系统订阅消息代理并获取传感器 数据,更新他们的影子演员。影方也负责 存储传感器数据,如事件采购机制。
您可以使用REST API更新设备阴影,或dedicated MQTT topics发布特定阴影主题。阴影本身不构成事件源系统,而是表示与物理设备关联的数据模型,如您所说。
但是,您可以创建一个规则来侦听一个或多个影子实例上的更改,并以时间序列的方式将更改注册到DynamoDB中。然后,您将拥有一个事件采购系统,允许您存储设备在任意时间内发送的先前状态或更改。
事物影子系统不执行任何规则,它只是为了 执行事件采购并将最后已知状态保持在虚拟状态 事情演员。
事物阴影保持云中物理设备的所需和报告状态。它不执行规则,但在影子内发生事件时会在MQTT主题上发出消息。然后,规则引擎可以捕获这些消息以执行操作。
相同的传感器数据也是规则引擎的入站数据。规则 引擎只是和ECA(事件条件动作)类型系统一样 处理流数据并决定它将如何处理它们。这个 表示最终将在规则引擎中处理每个传入的数据 部分。
规则引擎默认不监听MQTT主题,因此也不监听设备发送到设备网关的数据。您必须在规则引擎中注册您想要收听的主题及其相关操作。
除此之外,规则引擎允许您在ANSI SQL中描述规则,这意味着您可以指定数据的来源(SQL语句中的FROM
),具体您有兴趣捕获的JSON有效负载中的字段(SELECT
),以及指定应触发规则的条件的可选条件(WHERE
)。
听取虚构主题device/+/telemetry
并且有兴趣捕获所接收有效载荷中所有字段的规则示例如下:
SELECT * FROM device/+/telemetry
注意+
如何用作任何设备标识符的占位符。