如何将物联网 (IoT) 数据发送到 Amazon Web Services 上的数据库和 SQS 队列?
How to send internet of things (IoT) data to both a database and an SQS queue on Amazon Web Services?
我有来自荒野机器的工业物联网 (IIoT) 数据。目前,数据从机器传输到 Amazon Web Services (AWS) 简单队列服务 (SQS) 队列,供第三方公司使用。
我现在想做两件事:
- 像以前一样将数据放入第三方公司的SQS队列中,
- 将数据存储在 Amazon Relational Database Service (RDS) 数据库中以供分析
为此,我是否应该先将数据发送到 Amazon Simple Notification Service (SNS) 主题,然后将数据从那里推送到我的数据库和第三方公司的 SQS 队列?
是否有更好的方法来完成我的 objective,或者我的方向是否正确?
我之所以这样问,部分原因是亚马逊似乎正在引导我使用名为 DynamoDB 的 noSQL 数据库,但我想我需要一个用于 IIoT 数据的结构化关系数据库。
Amazon 的物联网“消息代理”,它使用 MQTT 与我的物联网设备通信,是一个 SNS 主题,这使很多的感觉。
SNS 消息主题与 SQS 队列不同。队列只能由一个用户读取,然后消息将从队列中删除——这只是临时存储。所以我们无法与第三方公司共享一个 SQS 队列。
相比之下,SNS 主题会立即向多个用户发送推送通知(和消息),所有“订阅”用户都会收到消息。 SNS 就像订阅某人的 Twitter 或 Instagram 提要一样,所有“订阅者”都会收到从“发布者”到消息“主题”的新消息的通知。
长话短说,我们可以使用 AWS IoT“规则”将我们设备的受 MQTT 保护的“消息”发送给任意数量的“订阅者”或 AWS 服务。因此,我们会将一份副本发送到 SQS 队列,将另一份副本发送到某种 AWS 数据库。
我有来自荒野机器的工业物联网 (IIoT) 数据。目前,数据从机器传输到 Amazon Web Services (AWS) 简单队列服务 (SQS) 队列,供第三方公司使用。
我现在想做两件事:
- 像以前一样将数据放入第三方公司的SQS队列中,
- 将数据存储在 Amazon Relational Database Service (RDS) 数据库中以供分析
为此,我是否应该先将数据发送到 Amazon Simple Notification Service (SNS) 主题,然后将数据从那里推送到我的数据库和第三方公司的 SQS 队列?
是否有更好的方法来完成我的 objective,或者我的方向是否正确?
我之所以这样问,部分原因是亚马逊似乎正在引导我使用名为 DynamoDB 的 noSQL 数据库,但我想我需要一个用于 IIoT 数据的结构化关系数据库。
Amazon 的物联网“消息代理”,它使用 MQTT 与我的物联网设备通信,是一个 SNS 主题,这使很多的感觉。
SNS 消息主题与 SQS 队列不同。队列只能由一个用户读取,然后消息将从队列中删除——这只是临时存储。所以我们无法与第三方公司共享一个 SQS 队列。
相比之下,SNS 主题会立即向多个用户发送推送通知(和消息),所有“订阅”用户都会收到消息。 SNS 就像订阅某人的 Twitter 或 Instagram 提要一样,所有“订阅者”都会收到从“发布者”到消息“主题”的新消息的通知。
长话短说,我们可以使用 AWS IoT“规则”将我们设备的受 MQTT 保护的“消息”发送给任意数量的“订阅者”或 AWS 服务。因此,我们会将一份副本发送到 SQS 队列,将另一份副本发送到某种 AWS 数据库。