AWS 将数据从 IOT 流式传输到仪表板图表
AWS Stream data from IOT to dashboard graphs
我们需要从 1000 多个物联网设备中获取数据(温度、压力、转速等总共 50 多个参数)并在仪表板上显示,无需太多处理(仅检查数字是否在范围内,否则会发出警报)但真实时间。
我查看并测试了许多 aws 博客资源,例如 Kinesis Storm ClickStream App
但是我认为使用 storm 对于这样一个简单的任务来说有点矫枉过正。我想要做的就是将数据保存在数据库中并显示图表(30 分钟、1 小时或自定义日期)。这是我目前的想法
Device -> AWS IOT(mqtt) -> Kinesis -> x -> dynamoDB -> Presenter Web APP (Laravel)
我可能必须使用 Node.js
和 Redis Pub/Sub
,如 ClickStream 示例中所述,以实时更新图表和警报。
我不想使用 Apache Storm,因为它在 Java 中并且有学习曲线(并且找不到任何好的资源)。我知道我可以使用 Lambda
但不确定它会如何扩展。
- 对解决方案有什么想法吗?
- AWS 没有 PHP 的 KCL、替代方案或解决方案?因为我熟悉 PHP 但不熟悉 Java.
Apache storm 是一个分布式事件处理框架。在您的用例中,您似乎没有对事件执行任何计算。基本上,您的应用程序执行三项任务:
- 将数据引入系统。
- 读取X到Y的数据
- 在 Web 前端绘制图表。
摄取部分由 AWS-IOT 负责。您应该做的第一步是创建一个 SNS 主题并将所有 IoT 数据作为消费者之一发布到 SNS topics. Here you get the flexibility to create one topic per datatype(ex: temperature, pressure) and attach consumer SQS queues to the topics to accumulate messages into. For a persistent DB, one consumer can be DynamoDB table, another consumer can be a Lambda function which performs some kind of filtering and data transform and updates your cache. If you need to perform some kind of OLAP/Analytical queries on the data, then consider using Redshift。您必须了解具体要求才能完成您的设计。
您是否考虑过在 IoT Core 中收到 mqtt 消息后将数据路由到 AWS IoT Analytics?通过这种方式,您可以通过 kinesis、Dynamo 和您的表示层摆脱所有基础设施的繁重工作。
AWS IoT Analytics 为您提供摄取、数据准备和查询功能。将数据存储在已处理的数据存储中后,您可以使用 AWS QuickSight 将其可视化。
我们需要从 1000 多个物联网设备中获取数据(温度、压力、转速等总共 50 多个参数)并在仪表板上显示,无需太多处理(仅检查数字是否在范围内,否则会发出警报)但真实时间。 我查看并测试了许多 aws 博客资源,例如 Kinesis Storm ClickStream App
但是我认为使用 storm 对于这样一个简单的任务来说有点矫枉过正。我想要做的就是将数据保存在数据库中并显示图表(30 分钟、1 小时或自定义日期)。这是我目前的想法
Device -> AWS IOT(mqtt) -> Kinesis -> x -> dynamoDB -> Presenter Web APP (Laravel)
我可能必须使用 Node.js
和 Redis Pub/Sub
,如 ClickStream 示例中所述,以实时更新图表和警报。
我不想使用 Apache Storm,因为它在 Java 中并且有学习曲线(并且找不到任何好的资源)。我知道我可以使用 Lambda
但不确定它会如何扩展。
- 对解决方案有什么想法吗?
- AWS 没有 PHP 的 KCL、替代方案或解决方案?因为我熟悉 PHP 但不熟悉 Java.
Apache storm 是一个分布式事件处理框架。在您的用例中,您似乎没有对事件执行任何计算。基本上,您的应用程序执行三项任务:
- 将数据引入系统。
- 读取X到Y的数据
- 在 Web 前端绘制图表。
摄取部分由 AWS-IOT 负责。您应该做的第一步是创建一个 SNS 主题并将所有 IoT 数据作为消费者之一发布到 SNS topics. Here you get the flexibility to create one topic per datatype(ex: temperature, pressure) and attach consumer SQS queues to the topics to accumulate messages into. For a persistent DB, one consumer can be DynamoDB table, another consumer can be a Lambda function which performs some kind of filtering and data transform and updates your cache. If you need to perform some kind of OLAP/Analytical queries on the data, then consider using Redshift。您必须了解具体要求才能完成您的设计。
您是否考虑过在 IoT Core 中收到 mqtt 消息后将数据路由到 AWS IoT Analytics?通过这种方式,您可以通过 kinesis、Dynamo 和您的表示层摆脱所有基础设施的繁重工作。
AWS IoT Analytics 为您提供摄取、数据准备和查询功能。将数据存储在已处理的数据存储中后,您可以使用 AWS QuickSight 将其可视化。